大數據-impala(二)
impala的安裝環境準備
需要提前安裝好hadoop,hive兩個框架,並且需要將hive的安裝包,拷貝到所有的服務器上面都保存一份,因爲impala需要引用hive的安裝目錄下面的一些依賴的jar包。
下載impala的所有依賴包
由於impala沒有提供tar包供我們進行安裝,只提供了rpm包,所以我們在安裝impala的時候,需要使用rpm包來進行安裝,rpm包只有cloudera公司提供了,所以我們去cloudera公司網站進行下載rpm包即可,但是另外一個問題,impala的rpm包依賴非常多的其他的rpm包,可以一個個的將依賴找出來,也可以將所有的rpm包下載下來,製作成我們本地yum源來進行安裝。我們這裏就選擇製作我們本地的yum源來進行安裝,所以首先我們需要下載到所有的rpm包,下載地址如下:
http://archive.cloudera.com/cdh5/repo-as-tarball/5.14.2/cdh5.14.2-centos7.tar.gz
將下載好的壓縮包上傳到node03服務器的/kkb/soft路徑下,並進行解壓
cd /kkb/soft
tar -zxvf cdh5.14.2-centos7.tar.gz
製作本地yum源
鏡像源是centos當中下載相關軟件的地址,可以通過製作自己的鏡像源指定去哪裏下載impala的rpm包,這裏使用httpd這個軟件來作爲服務端,啓動httpd的服務來作爲鏡像源的下載地址。
這裏我們選用第三臺機器作爲鏡像源的服務端。
node03機器上執行以下命令
sudo yum -y install httpd
sudo service httpd start
cd /etc/yum.repos.d
sudo vim localimp.repo
[localimp]
name=localimp
baseurl=http://node03/cdh5.14.2/
gpgcheck=0
enabled=1
創建apache httpd的讀取鏈接
sudo ln -s /kkb/soft/cdh/5.14.2 /var/www/html/cdh5.14.2
頁面訪問本地yum源,出現這個界面表示本地yum源製作成功
將製作好的localimp配置文件發放到所有需要安裝impala的節點上去。
node03執行以下命令進行分發
cd /etc/yum.repos.d/
sudo scp localimp.repo node02:$PWD
sudo scp localimp.repo node01:$PWD
開始安裝impala
安裝規劃
服務名稱 | node01 | node02 | node03 |
---|---|---|---|
impala-catalog | 不安裝 | 不安裝 | 安裝 |
impala-state-store | 不安裝 | 不安裝 | 安裝 |
impala-server | 安裝 | 安裝 | 安裝 |
#主節點node03執行以下命令進行安裝
sudo yum install impala -y
sudo yum install impala-server -y
sudo yum install impala-state-store -y
sudo yum install impala-catalog -y
sudo yum install impala-shell -y
#從節點node01與node02安裝以下服務
sudo yum install impala-server -y
所有節點配置impala
第一步:修改hive-site.xml
node03機器修改hive-site.xml內容如下
hive-site.xml配置
vim /kkb/install/hive-1.1.0-cdh5.14.2/conf/hive-site.xml
添加以下三個配置屬性
<property>
<name>hive.server2.thrift.bind.host</name>
<value>node03.hadoop.com</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://node03.kaikeba.com:9083</value>
</property>
<property>
<name>hive.metastore.client.socket.timeout</name>
<value>3600</value>
</property>
第二步:將hive的安裝包發送到node02與node01機器上
在node03機器上面執行
cd /kkb/install/
scp -r hive-1.1.0-cdh5.14.2/ node02:$PWD
scp -r hive-1.1.0-cdh5.14.2/ node01:$PWD
第三步:node03啓動hive的metastore服務
node03機器啓動hive的metastore服務
cd /kkb/install/hive-1.1.0-cdh5.14.2
nohup bin/hive --service metastore &
nohup bin/hive -- service hiveserver2 &
注意:一定要保證mysql的服務正常啓動,否則metastore的服務不能夠啓動。
第四步:所有hadoop節點修改hdfs-site.xml添加以下內容
所有節點創建文件夾
sudo mkdir -p /var/run/hdfs-sockets
修改所有節點的hdfs-site.xml添加以下配置,修改完之後重啓hdfs集羣生效
vim /kkb/install/hadoop-2.6.0-cdh5.14.2/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>
三臺機器執行以下命令給文件夾授權
sudo chown -R hadoop:hadoop /var/run/hdfs-sockets
第五步:重啓hdfs
重啓hdfs文件系統
node01服務器上面執行以下命令
cd /kkb/install/hadoop-2.6.0-cdh5.14.2/
sbin/stop-dfs.sh
sbin/start-dfs.sh
第六步:創建hadoop與hive的配置文件的連接
impala的配置目錄爲 /etc/impala/conf
這個路徑下面需要把core-site.xml,hdfs-site.xml以及hive-site.xml拷貝到這裏來,可以使用軟連接的方式。
所有節點執行以下命令創建鏈接到impala配置目錄下
sudo ln -s /kkb/install/hadoop-2.6.0-cdh5.14.2/etc/hadoop/core-site.xml /etc/impala/conf/core-site.xml
sudo ln -s /kkb/install/hadoop-2.6.0-cdh5.14.2/etc/hadoop/hdfs-site.xml /etc/impala/conf/hdfs-site.xml
sudo ln -s /kkb/install/hive-1.1.0-cdh5.14.2/conf/hive-site.xml /etc/impala/conf/hive-site.xml
第七步:修改impala的配置文件
所有節點更改impala默認配置文件以及添加mysql的連接驅動包
sudo vim /etc/default/impala
IMPALA_CATALOG_SERVICE_HOST=node03
IMPALA_STATE_STORE_HOST=node03
所有節點創建mysql的驅動包的軟連接
sudo mkdir -p /usr/share/java
sudo ln -s /kkb/install/hive-1.1.0-cdh5.14.2/lib/mysql-connector-java-5.1.38.jar /usr/share/java/mysql-connector-java.jar
所有節點修改bigtop的java路徑
sudo vim /etc/default/bigtop-utils
export JAVA_HOME=/kkb/install/jdk1.8.0_141
第八步:啓動impala服務
主節點node03啓動以下三個服務進程
sudo service impala-state-store start
sudo service impala-catalog start
sudo service impala-server start
從節點啓動node01與node02啓動impala-server
sudo service impala-server start
三臺機器可以通過以下命令,查看impala進程是否存在
ps -ef | grep impala
注意:啓動之後所有關於impala的日誌默認都在/var/log/impala 這個路徑下,node03機器上面應該有三個進程,node02與node01機器上面只有一個進程,如果進程個數不對,去對應目錄下查看報錯日誌。
第九步:驗證
瀏覽器頁面訪問:
訪問impalad的管理界面:http://node03:25000/
訪問statestored的管理界面:http://node03:25010/
訪問catalog的管理界面:http://node03:2502