开发者学堂课程【大数据Impala教程:安装部署--hadoop、hive 配置修改&impala 配置】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/722/detail/12889
安装部署--hadoop、hive 配置修改&impala 配置
内容介绍:
一、安装 Impala
二、修改 Hadoop、Hive 配置
三、修改 Impala 配置
一、安装 Impala
1.集群规划
Impala 的在线安装。 当我们配置好本地使 yum 源之后,可以使用 yum insert 的方式从本地 yum 源去读取 rpm 包。在安装之前必须搞清楚在哪些机器上安装什么样的软件,并不是所有的都需要安装的。这就讲到 Impala 集群规划,根据之前考虑,把 node-3这台机器作为主节点使用。Impala 当中所有的模块服务都安装在 node-3上,包括 Impala server 服务也就是俗称的 Impalad ,另外一个 Impala State Store 是状态存储服务,用来管理众多 Impala server 的,还有一个跟 hive 元数据进行同步的叫 Impala Catalogd 。此外,把 Impala shell 客户端也安装在 node-3上,另外两台机器,把它当做从节点,只需安装 Impala server。这种规划主要从当下虚拟机环境来考虑的,不想把所有的软件都安装在 node-1上,避免内存资源的抢夺。在企业当中或者在环境当中,一定要根据内存磁盘的情况合理的规划。
2.主节点安装
在规划清楚后,在各个节点执行命令。node-3是主节点,使用这个命令进行安装。安装 Impala 模块包括 Impala server,Impala Catalogd,Impala State Store 以及 Impala shell,之后也不用担心下载比较慢,整个安装包依赖大概有一个多 G ,这时候使用在线读取本地 yum 源会非常方便,回车。因为之前已经安装好,所以有提示,所安装的东西已经成功安装,并且是最新版本。如果没有安装,大概下载包达到100多兆,因为从本地读取。
3.从节点安装
另外,同样的在从节点,只要安装 Impala server 即可。这个前提是必须把本地 yum 源配置好。安装好后,是相关的配置。先不看 Impala 配置,必须要对。做一个相关的操作。特别注意如果第六步修改不正确。Hadoop服务不正常或是 hive 配置不正确,这时候后面的Impala 启动也不可能成功。Hadoop 服务是否正常服务并且配置好,是决定最终使用 Impala 的关键。
二、修改 Hadoop、Hive 配置
1.hive 的配置修改
在一台机器上修改,还要拷贝给其他机器,因为 Impala 都需要读取 hive 的配置文件。hive 的修改就一个文件,叫 hive-site.xml。这里面其他的选项不用看,主要是读取数据库相关的 hive 的元数据。重点加了下面选项。
(1)第一个叫做绑定 hiveServer2 运行的主机,默认的 host,绑定在 node-1,就是本地的域名上。
(2)第二个是指定 hive metastore 服务请求的 uri 地址,这个地址是其他软件访问 hive 首先接触到的元数据。包括 Impala 跟 hive 做一个整合集成的时候,需要一个 metastore 服务,这个非常重要。下面有一个 metastore 存储的事件,直接默认写上就可以了。修改好之后,要把配置文件包括安装包拷贝给其他两个机器
(3)操作
如果配置相当于不用拷贝了,来到 node-1上,cd/export/servers/hive/conf/路径下,vim hive-site.xml 回车,因为之前已经配置好,所以不需要相关操作。下面的不需要动,重点加了三个,绑定 hiveServer2 的服务,开启 metastore 服务的 uri 地址和操作时间。
2.修改 Hadoop 配置
(1)本地读取数据
配置好后把 hive 服务重启,进行修改 Hadoop 配置文件。Hadoop 配置跟本地读取数据相关。通过对 Impala 学习知道,尽量把 Impala 部署跟 Datenode 到一台机器上。能本地读取数据的尽量不要跨网络读取数据,本地读取数据怎么读取呢,在 Hadoop 中有本地读取数据的控制开关,叫做 DSFClient 选项。设置选项是否开启客户端去本地读取数据,另外本地读取数据从哪个路径去沟通,读取数据。要指定一个路径的文件,创建这样的文件夹叫做 var/run/hdfs-sockets 路径用于后续客户端读取数据通过本地来传递数据。
(2)执行
把这个命令在所有机器上做一个复制。首先在 node-1上做一个执行,node-2同步执行。执行完成后,把所有节点当中的 hdfs-site.xml 做一个添加,主要添加这几个选项,第一个叫做 dfs.domain.socket.path,这个路径是刚才创建的文件夹路径,用于 Datenode 和本地客户端之间沟通数据的路径。下面是一个是开启本地数据读取的功能。拷贝好,修改好后把配置文件远程的给其他各个集群。
(3)重启
涉及到的配置文件的修改需要注意重启 Hadoop 集群,因为之前提前配置好的,所以不需要重启,这时候使用 jps 进行验证。启动 Hadoop 是用 stop-dfs,stop-yum,针对 hive 注意,当配了 metastore 服务和 hiveServer2 需要使用这种放松启动。必须先启动 metastore 服务,服务启动在后端,用 nohup 命令。另外一个启动 hiveserver2 服务,通过客户端验证服务是否好用。
(4)复制配置文件
先保证 hive Hadoop 是正常的,才可以考虑后续的 Impala 安装,需要把 Hadoop 跟 hive 配置文件拷贝给 Impala ,Impala 也需要这几个配置文件,主要是 core-site.xml,hdfs-site.xml 以及 hive-site.xml,拷贝到 Impala 的配置文件路径下,当使用 yum 安装时,默认 Impala 的配置文件在 etc/Impala/conf。所以在所有节点执行以下命令操作。通过统一执行,复制打开勾选发送命令到所有的申请。把 core-site.xml 拷贝到 Impala 当中,回车。接下来执行第二个命令,把 hdfs-site.xml 拷贝过来复制执行,接下来第三个把 hive-site.xml 配置文件拷贝过来,cp 不要做移动。移动之后 hive Hadoop 就没有了,就会出错。三台机器都执行完之后需要做一个验证,刚才执行到底正不正确,有没有出错。随便找一台机器。cd 到路径下,做一个 ll 查看,发现三个配置文件就在这个地方。如果没有的话,后面启动就可能就会有问题,当完成第六步跟 Hadoop hive 相关配置文件之后,就是 Impala 修改。
三、修改 Impala 配置
1.修改 Impala 默认配置
它所有节点的配置文件都在同一个路径下直接编辑即可。主要是绑定 State Store 位于的机器以及 Catalogd 位于的服务器。根据之前的规划,都在 node-3上,所以只要把域名主机名改为 node-3即可。把命令做一个复制,在第一台机器上 vrm 操作,把后面默认绑定在本机,而配置在 node-3上,因此做一个修改。下面的 State Store host 也是 node-3,其他保持默认即可。来到第二台机器也做一个同样的修改。第一个把后面改为 node-3,这时候发现 Impala 安装配置文件很少,下面也是 node-3,保存。接下来来到第三台机器同样打开配置文件,修改前面参数。第一个叫做Catalogd 服务器地址位于 node-3上规划是其他机器。State Store 也是 node-3,保存。这样就完成了 Impala 可以直接修改。
2.mysql 驱动
接下来看一下,在刚才配置需要一个 mysql 驱动,这个驱动默认路径写了,把驱动拷贝到路径下重命名。另外可以采用很巧妙的方式创建一个软链接,比如在 hive 路径下正好有 mysql 驱动,只不过叫做5.1.32版本,而需要的没有版本号。把 hive 路径下的 mysql 驱动链接到路径下,改名字叫做 mysql-connector-java.jar 相当于有了软件,通过软链接找到具体驱动。
3.执行
做一个执行。在三台机器做一个执行,把命令做一个复制。显示出文件已经存在,说明之前已经创建过,如果没有存在就会开始执行,创建好后如果不放心可以做一个验证,cd 到路径下看一看,随便找一台机器,直接 cd 路径当中做一个路径查看。发现一个叫做 mysql-connector-java.jar 的名字,正好符合默认配置文件的名字。具体链接指向 hive 当中的 jar 包,这样就完成了 mysql 驱动的配置,如果不想这么做,可以把 jar 包拷贝上来,改个名字或者随便修改路径也可以,比较灵活。
4.修改 bigtop 配置
接下来最后要修改一个 bigtop 的配置。当中主要修改 java home,三台机器都要进行操作。首先来到第一台机器做一个 vrm 编辑,当中主要把 java home 指定清楚。java 统一使用 jdk1.8,修改好的,其他都不要动,只要把 export 打开即可。另外两台机器可以自行验证,因为提前安装好所以都不用进行相关修改,只要进行验证即可,如果没有修改好,要把它注释打开,注意路径要保持一致,三台机器都改好之后。整个 Impala 的配置就已经做好了。
5.注意
会发现这种跟 Impala 相关的并没有多少。大多数是依赖软件,比如说 Hadoop ,比如 hive ,而这些软件的配置极其重要,如果有一台机器配置不正确,有一个符号发生了丢失,最终都有可能导致 Impala 启动不正常,这就是需要特别注意的事项。如果涉及到相关的设计修改,需要知道变通哪里进行改变,这就是 Impala 的配置内容。