温馨提示×

CentOS HBase网络配置注意事项

小樊
41
2025-11-16 04:40:52
栏目: 智能运维

CentOS 上部署 HBase 的网络配置注意事项

基础网络与主机名规范

  • 使用静态 IP:编辑网卡配置文件(如 /etc/sysconfig/network-scripts/ifcfg-eth0),设置 IPADDR、NETMASK、GATEWAY、DNS1 等,执行 sudo systemctl restart network 使配置生效。
  • 统一使用主机名而非 IP:通过 sudo hostnamectl set-hostname <hostname> 设置每台机器的主机名,并在 /etc/hosts 中维护所有节点的 IP-主机名 映射,确保集群内可互相解析。
  • 基础连通性自检:完成后用 ping 测试网关与外部域名,排除链路与 DNS 问题。

HBase 关键网络参数与端口

  • 核心配置(hbase-site.xml)
    • hbase.rootdir:如 hdfs://:8020/hbase(确保与 HDFS 端口一致)。
    • hbase.cluster.distributed:设为 true
    • hbase.zookeeper.quorum:以主机名列出所有 ZooKeeper 节点(如 node1,node2,node3)。
  • 常用端口(示例)
    • HBase Master Web UI:60010
    • RegionServer 端口:60020
    • RegionServer Info 端口:60030
    • HDFS NameNode IPC:8020
    • ZooKeeper:2181(客户端)、2888/3888(集群内部通信)
  • 提示:端口应以实际发行版与配置为准,避免端口冲突。

防火墙与安全组放行

  • firewalld 放行(示例)
    • sudo firewall-cmd --permanent --zone=public --add-port=2181/tcp
    • sudo firewall-cmd --permanent --zone=public --add-port=2888/tcp
    • sudo firewall-cmd --permanent --zone=public --add-port=3888/tcp
    • sudo firewall-cmd --reload
  • 云环境需同时在安全组中放行对应端口与协议,确保节点间及客户端到集群的入站/出站规则正确。

性能与安全优化

  • 硬件与系统
    • 使用千兆及以上网络、合理规划的机架与交换机,减少跨机房/长距离链路。
    • 操作系统层面:将 vm.swappiness 设为 0,优先保障内存命中与 GC 稳定。
  • 网络与 RPC
    • 启用**数据压缩(如 Snappy)**降低带宽占用;结合批量写入/读取与客户端缓存减少网络往返。
    • 适度提升 RPC 处理能力(如提高 hbase.regionserver.handler.count),并优化 TCP 窗口/队列等参数以匹配业务时延与带宽。
  • 安全加固
    • 建议启用 Kerberos 认证与 ACL 访问控制;在受控范围内使用 SSH 免密以便运维自动化,同时严格限制来源网段。

验证与排错清单

  • 解析与连通性
    • 验证主机名解析:getent hosts <hostname>ping <hostname> 均应成功。
    • 跨节点连通性:对 2181/2888/3888、60010、60020、60030、8020 执行 nc -vz <host> <port>telnet 测试。
  • 服务状态与端口占用
    • 使用 ss -lntp | grep <port>lsof -iTCP:<port> -sTCP:LISTEN 检查端口监听。
    • HBase Shell 中执行 status 查看集群健康与 RegionServer 上线情况。
  • 日志与常见错误
    • 关注 HMaster/RegionServer 日志中的 UnknownHostException、Connection refused、Timeout 等关键词,优先排查 /etc/hosts、防火墙/安全组、端口占用与 DNS 配置。

0