HAWQ集成Yarn HA作为资源管理服务
一、第一步当然是配置YARN HA,这在使用ambari管理时很简单,这里不在赘述。
二、建立HAWQ的专用资源队列queue
不要手工编辑scheduler设置,最方便的当然是使用queue manager,入口看图。
添加一个hawq_queue
三、重启受影响的yarn服务
添加或修改queue之后,ambari管理界面中会有提示,点击重启即可。
四、编辑hawq的配置文件
1,修改hawq-site.xml中hawq_global_rm_type值为yarn
<property> <name>hawq_global_rm_type</name> <value>yarn</value> <description>The resource manager type to start for allocating resource. 'none' means hawq resource manager exclusively uses whole cluster; 'yarn' means hawq resource manager contacts YARN resource manager to negotiate resource. </description> </property>
其他的hawq_rm_*相关键值不用动,因为配置yarn HA模式时无用,需要修改yarn_client.xml中HA相关配置。
2,修改yarn-client.xml中HA相关配置
<!-- HA --> <property> <name>yarn.resourcemanager.ha</name> <value>ep-bd05:8032,ep-bd01:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.ha</name> <value>ep-bd05:8030,ep-bd01:8030</value> </property> <!-- end HA -->
注意active RM节点写在前面,可以减少网络访问时间!
3,分发修改后配置文件到各个节点
cd /opt/gpadmin/apache-hawq/etc gpscp -f slaves hawq-site.xml =:/opt/gpadmin/apache-hawq/etc/. gpscp -f slaves yarn-client.xml =:/opt/gpadmin/apache-hawq/etc/.
四、在HAWQ主节点上重新启动hawq cluster
su - gpadmin hawq restart cluster -a
五、两个注意事项:
1,HDP集群,在ambari中启用YARN HA后,RM服务端口没有配置,在配置文件中看不到,文件中只有未启用HA之前的单节点端口地址,例如我这里是:
<property>
<name>yarn.resourcemanager.address</name>
<value>ep-bd01:8050</value>
</property>
这个并不是启用HA后RM的端口,实际上应该查找配置项
yarn.resourcemanager.address.rm1
由于没有此项配置,所以我这里的HA rm的端口号是默认的端口号8032,这个需要注意。
2,启用yarn RM管理后,每个hawq 的segment节点,都需要配套nodemanager服务,否则不能与rm通讯,没有安装的需要在ambari管理界面中添加。 使用hawq自己管理资源时当然是不需要的。