温馨提示×

centos zookeeper网络设置要点

小樊
42
2025-06-08 12:56:11
栏目: 智能运维

在CentOS上配置Zookeeper时,网络设置是一个关键步骤。以下是详细的配置要点:

  1. 网络配置
  • 确认网卡名称:使用 ip aifconfig 查看当前网卡名称(如 ens33ens32)。
  • 关闭防火墙和SELinux(测试环境推荐操作):
    • 临时关闭防火墙:systemctl stop firewalld
    • 禁用SELinux:sudo setenforce 0
    • 永久关闭SELinux:编辑 /etc/selinux/config,将 SELINUXenforcing 改为 SELINUXdisabled,然后重启服务器。
  • 静态IP配置(生产环境推荐):
    • 修改网卡配置文件:文件路径为 /etc/sysconfig/network-scripts/ifcfg-ens33(根据实际网卡名称调整)。
    • 关键参数示例:
      BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=114.114.114.114 ONBOOT=yes 
    • 重启网络服务:systemctl restart network
  • 动态IP配置(开发测试环境):
    • 简化配置仅保留必要参数:
      BOOTPROTO=dhcp ONBOOT=yes 
    • 若网卡未启动,需手动激活:ifup ens33
  • 多网卡与特殊场景配置
    • 多IP地址绑定使用 ifconfig 临时添加:ifconfig ens33:0 192.168.1.101 netmask 255.255.255.0
    • 永久配置需创建新配置文件(如 ifcfg-ens33:0)。
  • NAT模式网络优化
    • 确保虚拟网络编辑器中的网关与配置文件一致。
    • 验证虚拟机与宿主机的双向连通性:ping 宿主IPping 虚拟机IP
  • 验证与故障排查
    • 基础验证:ping www.baidu.com
    • ip route show
    • cat /etc/resolv.conf
  1. Zookeeper安装与配置
  • 安装Java环境:Zookeeper依赖JDK才能运行,所以安装Zookeeper之前,必须先安装JDK。
    • 安装命令:sudo yum install java-1.8.0-openjdk-devel
  • 下载并解压Zookeeper
    • 从Apache Zookeeper的官方网站下载所需版本的Zookeeper压缩包,然后解压到指定目录。
    • 示例命令:
      wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/ 
  • 配置Zookeeper
    • 进入解压后的Zookeeper目录,复制并修改 zoo_sample.cfg 配置文件为 zoo.cfg
    • 主要需要修改的配置项包括:
      • dataDir:数据目录路径,例如 /var/lib/zookeeper
      • clientPort:客户端连接端口,默认2181
      • tickTime:Zookeeper的基本时间单位(以毫秒为单位)
      • initLimit:初始化连接时最长能忍受的心跳时间间隔数
      • syncLimit:Leader与Follower之间发送消息、请求和应答时间长度
    • 示例配置:
      tickTime 2000 dataDir /usr/local/zookeeper/data clientPort 2181 initLimit 10 syncLimit 5 server.1 192.168.0.11:2888:3888 server.2 192.168.0.12:2888:3888 server.3 192.168.0.13:2888:3888 
  • 创建myid文件
    • dataDir 目录下创建 myid 文件,并写入对应的服务器ID。
    • 示例命令:
      echo '1' > /var/lib/zookeeper/myid 
  • 创建并编辑 zookeeper.service 文件
    • 创建并编辑 /etc/systemd/system/zookeeper.service 文件,添加以下内容:
      [Unit] Description=Zookeeper After=network.target [Service] Type=forking ExecStart=/usr/local/zookeeper/bin/zkServer.sh start ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop PrivateTmp=true Environment=JAVA_HOME=/usr/local/java/jdk1.8.0_202 User=root Group=root PIDFile=/usr/local/zookeeper/data/zookeeper.pid Restart=always [Install] WantedBy=multi-user.target 
  • 添加可执行权限并注册为系统服务
    • 示例命令:
      sudo chmod x /etc/systemd/system/zookeeper.service sudo chkconfig --add zookeeper sudo chkconfig zookeeper on 
  • 启动和验证Zookeeper
    • 启动Zookeeper服务:sudo systemctl start zookeeper
    • 验证Zookeeper状态:sudo systemctl status zookeeper 或使用:/usr/local/zookeeper/bin/zkServer.sh status

通过以上步骤,可以确保Zookeeper在CentOS上的网络配置正确无误,从而保证其在分布式环境中的稳定运行。

0