安装规划
服务名称 |
Node01 |
Node02 |
Node03 |
impala-catalog |
安装 |
不安装 |
不安装 |
impala-state-store |
安装 |
不安装 |
不安装 |
impala-server |
安装 |
安装 |
安装 |
impala |
安装 |
安装 |
安装 |
安装impala
主节点node01执行以下命令进行安装
[root@hadoop01 ~]# yum install impala -y
[root@hadoop01 ~]# yum install impala-server -y
[root@hadoop01 ~]# yum install impala-state-store -y
[root@hadoop01 ~]# yum install impala-catalog -y
[root@hadoop01 ~]# yum install bigtop-utils -y
[root@hadoop01 ~]# yum install impala-shell -y
从节点node02和node03上安装以下服务
在node02上执行安装
[root@hadoop02 ~]# yum install impala-server -y
[root@hadoop02 ~]# yum install bigtop-utils -y
在node03上执行安装
[root@hadoop03 ~]# yum install impala-server -y
[root@hadoop03 ~]# yum install bigtop-utils -y
impala配置
impala依赖于hive,所以首先需要进行hive的配置修改;
[root@hadoop01 hive]# cd /usr/local/hive/conf/ |
node1机器修改hive-site.xml内容如下:
[root@hadoop01 hive]# vim hive-site.xml |
<configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://node1:3306/hive? createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> </property> <property> <name>hive.cli.print.current.db</name> <value>true</value> </property> <property> <name>hive.cli.print.header</name> <value>true</value> </property> <property> <name>hive.server2.thrift.bind.host</name> <value>node01</value> </property> <property> <name>hive.metastore.uris</name> <value>thrift://node01:9083</value> </property> <property> <name>hive.metastore.client.socket.timeout</name> <value>3600</value> </property> </configuration> |
将配置好的配置文件发送到其他两个服务器节点上
[root@hadoop01 conf]# scp -r hive-site.xml node02:$PWD [root@hadoop01 conf]# scp -r hive-site.xml node03:$PWD |
添加mysql的jar包放入hive的lib目录下
启动hive的metastore服务
[root@hadoop01 lib]# cd /usr/local/hive/ [root@hadoop01 hive]#nohup bin/hive --service metastore & |
注意:一定要保证mysql的服务正常启动,否则metastore的服务不能够启动
所有hadoop节点修改hdfs-site.xml添加以下内容
所有节点创建文件夹
[root@hadoop01 ~]# mkdir -p /usr/local/hadoop-2.6.0-cdh5.14.0/run/hdfs-sockets [root@hadoop02 ~]# mkdir -p /usr/local/hadoop-2.6.0-cdh5.14.0/run/hdfs-sockets [root@hadoop03 ~]# mkdir -p /usr/local/hadoop-2.6.0-cdh5.14.0/run/hdfs-sockets |
修改所有节点的hdfs-site.xml添加以下配置,修改完之后重启hdfs集群生效
[root@hadoop01 soft-manager]# cd /usr/local/hadoop-2.6.0-cdh5.14.0/ [root@hadoop01 hadoop-2.6.0-cdh5.14.0]# cd etc/hadoop/ [root@hadoop01 hadoop]# vim hdfs-site.xml |
<configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.blocksize</name> <value>134217728</value> </property>
<property> <!--短路读取--就是允许impala把一些信息存储在本地磁盘上,可以加快计算的速度--> <name>dfs.client.read.shortcircuit</name> <value>true</value> </property> <property> <!--打开"块位置的存储的元数据信息"--> <name>dfs.datanode.hdfs-blocks-metadata.enabled</name> <value>true</value> </property> <property> <name>dfs.domain.socket.path</name> <value>/usr/local/hadoop-2.6.0-cdh5.14.0/run/hdfs-sockets/dn</value> <!--Datanode和DFSClient之间沟通的Socket的本地路径套接口文件--> </property> <property> <!----> <name>dfs.client.file-block-storage-locations.timeout.millis</name> <value>10000</value> </property>
</configuration> |
将配置好的配置我呢见拷贝到其他两台服务器
[root@hadoop01 hadoop]# scp -r hdfs-site.xml node02:$PWD [root@hadoop01 hadoop]# scp -r hdfs-site.xml node03:$PWD |
创建hadoop与hive的配置文件的连接
impala的配置目录为 /etc/impala/conf
这个路径下面需要把core-site.xml,hdfs-site.xml以及hive-site.xml拷贝到这里来,但是这里使用软连接的方式会更好。
在node01服务器上创建三个配置文件的软连接
[root@hadoop01 hadoop]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml /etc/impala/conf/ [root@hadoop01 hadoop]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml /etc/impala/conf [root@hadoop01 hadoop]# ln -s /usr/local/hive/conf/hive-site.xml /etc/impala/conf |
在node02服务器上创建三个配置文件的软连接
[root@hadoop02 local]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml /etc/impala/conf/ [root@hadoop02 local]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml /etc/impala/conf [root@hadoop02 local]# ln -s /usr/local/hive/conf/hive-site.xml /etc/impala/conf |
在node03服务器上创建三个配置文件的软连接
[root@hadoop03 ~]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml /etc/impala/conf/ [root@hadoop03 ~]# ln -s /usr/local/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml /etc/impala/conf [root@hadoop03 ~]# ln -s /usr/local/hive/conf/hive-site.xml /etc/impala/conf |
所有节点修改impala默认配置
在node01服务器更改impala默认配置文件
[root@hadoop01 hadoop]# vim /etc/default/impala #指定集群的CATALOG_SERVICE和STATE_STORE服务地址 IMPALA_CATALOG_SERVICE_HOST=node01 IMPALA_STATE_STORE_HOST=node01 |
在node02服务器更改impala默认配置文件
[root@hadoop02 hadoop]# vim /etc/default/impala #指定集群的CATALOG_SERVICE和STATE_STORE服务地址 IMPALA_CATALOG_SERVICE_HOST=node01 IMPALA_STATE_STORE_HOST=node01 |
在node03服务器更改impala默认配置文件
[root@hadoop03 hadoop]# vim /etc/default/impala #指定集群的CATALOG_SERVICE和STATE_STORE服务地址 IMPALA_CATALOG_SERVICE_HOST=node01 IMPALA_STATE_STORE_HOST=node01 |
修改配置如下图所示
所有节点创建mysql的驱动包的软连接
[root@hadoop01 ~]# ln -s /usr/local/hive/lib/mysql-connector-java-5.1.32.jar /usr/share/java [root@hadoop02 ~]# ln -s /usr/local/hive/lib/mysql-connector-java-5.1.32.jar /usr/share/java [root@hadoop03 ~]# ln -s /usr/local/hive/lib/mysql-connector-java-5.1.32.jar /usr/share/java |
所有节点修改bigtop的java路径
在node01上修改bigtop的java_home路径
[root@hadoop01 hadoop]# vim /etc/default/bigtop-utils export JAVA_HOME=/usr/local/java/jdk1.8.0_201 |
在node02上修改bigtop的java_home路径
[root@hadoop02 hadoop]# vim /etc/default/bigtop-utils export JAVA_HOME=/usr/local/java/jdk1.8.0_201 |
在node03上修改bigtop的java_home路径
[root@hadoop03 hadoop]# vim /etc/default/bigtop-utils export JAVA_HOME=/usr/local/java/jdk1.8.0_201 |
启动impala服务
在主节点node01启动以下三个服务进程
[root@hadoop01 ~]# service impala-state-store start [root@hadoop01 ~]# service impala-catalog start [root@hadoop01 ~]# service impala-server start |
在从节点node02和node03上启动impala-server
[root@hadoop02 ~]# service impala-server start [root@hadoop03 ~]# service impala-server start |
查看impala进程是否存在
[root@hadoop01 ~]# ps -ef | grep impala [root@hadoop02 ~]# ps -ef | grep impala [root@hadoop03 ~]# ps -ef | grep impala |
注意:启动之后所有关于impala的日志默认都在/var/log/impala 这个路径下,node01机器上面应该有三个进 程,node02与node03机器上面只有一个进程,如果进程个数不对,去对应目录下查看报错日志
浏览器页面访问
访问impalad的管理界面http://node01:25000/
访问statestored的管理界面http://node01:25010/
访问catalogd 的管理界面http://node01:25020/
将impala与kudu整合
在每一个服务器的impala的配置文件中添加如下配置:
在node01节点上修改配置文件impala
[root@hadoop01 hadoop]# vim /etc/default/impala -kudu_master_hosts=node01:7051,node02:7051,node03:7051 |
在node02节点上修改配置文件impala
[root@hadoop02 hadoop]# vim /etc/default/impala -kudu_master_hosts=node01:7051,node02:7051,node03:7051 |
在node03节点上修改配置文件impala
[root@hadoop03 hadoop]# vim /etc/default/impala -kudu_master_hosts=node01:7051,node02:7051,node03:7051 |
转自:https://www.cnblogs.com/starzy/p/10563572.html