安装规划

   

服务名称

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