在Ubuntu上添加Zookeeper集群节点涉及多个步骤,包括安装Java、下载并解压Zookeeper、配置Zookeeper、创建myid文件、启动Zookeeper服务以及验证集群状态。以下是详细的步骤指南:
安装Java: Zookeeper是用Java编写的,所以首先需要在你的Ubuntu系统上安装Java。
sudo apt update
sudo apt install openjdk-11-jdk
java -version
下载并解压Zookeeper: 从Apache Zookeeper的官方网站下载最新版本的Zookeeper,并解压到你的服务器上。
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz -C /opt
创建数据目录和日志目录: 在每个节点上创建数据目录和日志目录。
sudo mkdir -p /var/lib/zookeeper/data
sudo mkdir -p /var/log/zookeeper
sudo chown -R $USER:$USER /var/lib/zookeeper
sudo chown -R $USER:$USER /var/log/zookeeper
配置文件:
为每个节点创建一个配置文件,例如 /etc/zookeeper/conf/node1.cfg。
cp /opt/apache-zookeeper-3.7.0-bin/conf/zoo_sample.cfg /etc/zookeeper/conf/node1.cfg
nano /etc/zookeeper/conf/node1.cfg
编辑配置文件,添加以下内容:
tickTime=2000
dataDir=/var/lib/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=node2:2888:3888
server.2=node3:2888:3888
server.3=node1:2888:3888
创建myid文件: 在每个节点的数据目录中创建myid文件,并写入对应的服务器ID。
echo "1" | sudo tee /var/lib/zookeeper/data/myid
在每个节点上启动Zookeeper服务:
/opt/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start
在任意一个节点上检查Zookeeper集群的状态:
/opt/apache-zookeeper-3.7.0-bin/bin/zkServer.sh status
你应该能看到类似以下的输出表明其角色身份(Leader或Follower),并且确认JMX已启用以及使用的配置文件位置等信息:
ZooKeeper JMX enabled by default
Using config: /opt/apache-zookeeper-3.7.0-bin/conf/zoo.cfg
Mode: follower
确保防火墙允许Zookeeper节点之间的通信。
sudo ufw allow 2181/tcp
sudo ufw allow 2888/tcp
sudo ufw allow 3888/tcp
如果要添加新的节点到集群中,需要重复上述步骤,为新的节点创建配置文件、数据目录、myid文件,并启动Zookeeper服务。确保新节点的配置文件中的server.x行与其他节点保持一致。
通过以上步骤,你就可以在Ubuntu上成功添加一个新的Zookeeper集群节点。请根据实际需求调整配置,并确保所有节点之间的网络通信正常。