1. 程式人生 > >通過本地yum源安裝impala

通過本地yum源安裝impala

通過本地yum源安裝impala

impala的環境準備

需要提前安裝好Hadoop和hive這兩個框架(可在我的部落格中找到CDH版本的hive和hadoop的安裝詳解)並且hive需要在所有的impala安裝的節點上面都要有,因為impala需要引用hive的依賴包,hadoop的框架需要支援C程式訪問介面,只要在hadoop的安裝目錄下的lib目錄有libhadoop.so.1.0.0這類檔案,就說明支援C介面。

下載impala的所有依賴包

由於impala沒有提供tar包供我們進行安裝,只提供了rpm包,所以我們在安裝impala的時候,需要使用rpm包來進行安裝,rpm包只有cloudera公司提供了,所以我們去cloudera公司網站進行下載rpm包即可。

各個版本的下載:

http://archive.cloudera.com/cdh5/repo-as-tarball/5.14.0/

我這裡使用的下載地址如下
http://archive.cloudera.com/cdh5/repo-as-tarball/5.14.0/cdh5.14.0-centos6.tar.gz

上傳並解壓

mkidr /data02
cd /data02/
tar -zxvf cdh5.14.0-centos6.tar.gz

製作本地的yum源

映象源是centos當中下載相關軟體的地址,我們可以通過製作我們自己的映象源指定我們去哪裡下載impala的rpm包,這裡我們使用httpd這個軟體來作為服務端,啟動httpd的服務來作為我們映象源的下載地址

這裡我們選用第三臺機器作為映象源的服務端
node03機器上執行以下命令

#安裝httpd
yum  -y install httpd
#開啟服務
service httpd start
#修改yum源配置檔案
cd /etc/yum.repos.d
vim localimp.repo 
#新增如下內容
[localimp]
name=localimp
baseurl=http://node03/cdh5.14.0/
gpgcheck=0
enabled=1

建立httpd的讀取連結

ln -s /data02/cdh/5.14.0 /var/www/html/cdh5.14.0

頁面訪問本地yum源,出現頁面說明製作成功

將製作好的localimp配置檔案發放到所有需要安裝impala的節點上

cd /etc/yum.repos.d/
scp localimp.repo  node02:$PWD
scp localimp.repo  node01:$PWD

開始安裝impala

安裝規劃

服務名稱 node01 node02 node03
impala-catalog 不安裝 不安裝 安裝
impala-state-store 不安裝 不安裝 安裝
impala-server 安裝 安裝 安裝

主節點node03執行以下命令進行安裝

yum  install  impala -y
yum install impala-server -y
yum install impala-state-store  -y
yum install impala-catalog  -y
yum  install  impala-shell -y

從節點node01和node02安裝如下服務

yum install impala-server -y

節點配置

1、修改hive-site.xml
vim /export/servers/hive-1.1.0-cdh5.14.0/conf/hive-site.xml
#新增如下配置
 <property>
                <name>hive.metastore.uris</name>
                <value>thrift://node03.hadoop.com:9083</value>
        </property>
	 <property>
                <name>hive.metastore.client.socket.timeout</name>
                <value>3600</value>
        </property>

2、將hive的安裝包傳送到其他機器
cd /export/servers/
scp -r hive-1.1.0-cdh5.14.0/ node02:$PWD
scp -r hive-1.1.0-cdh5.14.0/ node01:$PWD
3、node03啟動hive的metastore服務
cd  /export/servers/hive-1.1.0-cdh5.14.0
nohup bin/hive --service metastore &
nohup bin/hive -- service hiveserver2 &

注意:一定要保證mysql的服務正常啟動,否則metastore的服務不能夠啟動

4、所有節點修改hdfs-site.xml新增以下內容

所有節點建立資料夾

mkdir -p /var/run/hdfs-sockets

修改所有節點的hdfs-site.xml新增以下配置,修改完之後重啟hdfs叢集生效

vim  /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml
#新增內容
<property>
		<name>dfs.client.read.shortcircuit</name>
		<value>true</value>
	</property>
	<property>
		<name>dfs.domain.socket.path</name>
		<value>/var/run/hdfs-sockets/dn</value>
	</property>
	<property>
		<name>dfs.client.file-block-storage-locations.timeout.millis</name>
		<value>10000</value>
	</property>
<property>
<name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
<value>true</value>
</property>
5、重啟hdfs
cd /export/servers/hadoop-2.6.0-cdh5.14.0/
sbin/stop-dfs.sh
sbin/start-dfs.sh
6、建立hadoop和hive的配置檔案的連線

impala的配置目錄為 /etc/impala/conf
這個路徑下面需要把core-site.xml,hdfs-site.xml以及hive-site.xml拷貝到這裡來,但是我們這裡使用軟連線的方式會更好
所有節點執行以下命令建立連結到impala配置目錄下來

ln -s /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml /etc/impala/conf/core-site.xml
ln -s /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml /etc/impala/conf/hdfs-site.xml
ln -s /export/servers/hive-1.1.0-cdh5.14.0/conf/hive-site.xml /etc/impala/conf/hive-site.xml
7、修改impala的配置檔案

所有節點更改impala預設配置檔案以及新增mysql的連線驅動包

vim /etc/default/impala
IMPALA_CATALOG_SERVICE_HOST=node03
IMPALA_STATE_STORE_HOST=node03

所有節點建立mysql的驅動包的軟連線

ln -s /export/servers/hive-1.1.0-cdh5.14.0/lib/mysql-connector-java-5.1.38.jar /usr/share/java/mysql-connector-java.jar

所有節點修改bigtop的java路徑

vim /etc/default/bigtop-utils
export JAVA_HOME=/export/servers/jdk1.8.0_141
8、啟動impala服務

啟動impala服務
主節點node03啟動以下三個服務程序

service impala-state-store start
service impala-catalog start
service impala-server start

從節點啟動node01與node02啟動impala-server

service impala-server start

檢視程序是否存在

ps -ef | grep impala

注意:啟動之後所有關於impala的日誌預設都在/var/log/impala 這個路徑下,node03機器上面應該有三個程序,node02與node01機器上面只有一個程序,如果程序個數不對,去對應目錄下檢視報錯日誌
瀏覽器頁面訪問:
訪問impalad的管理介面
http://node03:25000/
訪問statestored的管理介面
http://node03:25010/