一、Service RPC port

NameNode默认使用8020端口侦听所有的RPC请求(HDP版本),包括客户端数据请求,DataNode心跳和block上报,ZKFC模块监控检查和切换控制。当集群规模越和RPC请求来越大时,RPC请求响应时间也变得越来越长。 
NameNode也给DataNode提供了专用的Service RPC port用于上报数据块和心跳状态,这样可以减少和客户端应用程序RPC队列请求的竞争。这个端口默认没有开启,需要手动配置参数。 
Service RPC port另外也用于NameNode HA模块的ZKFC健康检查和auto failover 控制。

二、参数配置和HA集群操作步骤

1、对于无NameNode HA的集群,参数配置如下,

<property>
<name>dfs.namenode.servicerpc-address</name>
<value>namenode-host:</value>
</property>

2、对于NameNode开启了HA的集群,配置如下,

<property>
<name>dfs.namenode.servicerpc-address.test.nn1</name>
<value>test1st.com:</value>
</property> <property>
<name>dfs.namenode.servicerpc-address.test.nn2</name>
<value>test2st.com:</value>
</property>

3、 重启节点使参数生效步骤

整个操作步骤如下,
)重启standby namenode
)重启active namenode
)rolling restart datanode,
)stop ZKFC
)重新格式化ZKFC并启动zkfc hdfs zkfc -formatZK

注意:更改服务RPC端口设置需要重新启动NameNodes,DataNodes和ZooKeeper故障转移控制器才能完全生效。如果您具有NameNode HA设置,则可以一次重新启动一个NameNode,然后重新启动其余组件以避免群集停机。

如果是生成环境更要注意了,我在生成环境中把上述的配置加到hdfs-site.xml文件以后,还没有重启集群,就发现配置文件已经生效了,导致两台namenode都挂掉了,,,最好是先修改完一台namenode,成功重启以后再修改另外一台,否则可能导致公司的业务发生不可描述的问题。0.0

原文链接:Hortonworks社区

最新文章

  1. 由Collections.unmodifiableList引发的重构
  2. TortoiseSVN使用方法
  3. ADF_Starting系列9_使用EJB/JPA/JSF通过ADF构建Web应用程序之测试J2EE Container
  4. css select 样式列表-----另一种样式列表
  5. crontab使用--linux下的定时任务程序
  6. [置顶] IOS培训资料
  7. setsockopt角色
  8. oracle中110个常用函数介绍
  9. 【Zookeeper】源码分析之请求处理链(四)
  10. Reading Code Is Hard
  11. python - Excel表格
  12. Reshaper安装后vs快捷键不起作用
  13. java基础练习
  14. 虚拟机极简配置manjaro gnome
  15. python的ConfigParser模块
  16. 【转】JS windows.open()详解
  17. sql的执行流程
  18. c++ 判断容器A是否是容器B的子集,如果是,返回true(includes)
  19. python打包成.exe
  20. 【从零学习openCV】IOS7人脸识别实战

热门文章

  1. c++线程同步之信号量
  2. iOS加密之AES
  3. ceph luminous版部署bluestore
  4. 代替for-in 遍历对象
  5. python基础-生成器
  6. js 数组 数组 最大值、最小值 算法(转载)
  7. Django使用swagger生成接口文档
  8. 解决zabbix_web显示中文乱码问题
  9. 自定义Lombok注解
  10. Java中处理接口返回base64编码的图片数据