通過本地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/