在centos系统上部署zookeeper集群,步骤如下:
准备阶段:
-
服务器准备: 至少需要三台服务器,分别作为Leader (主节点) 和两个Follower (从节点)。确保服务器之间网络互通。
-
SELinux (可选,但推荐): 为了避免权限问题,建议禁用SELinux。
- 临时禁用:
sudo setenforce 0 - 永久禁用: 编辑
/etc/selinux/config文件,将SELINUX=enforcing修改为SELINUX=disabled,然后重启服务器。
- 临时禁用:
-
Java环境:
- 检查Java版本:
java -version(确保安装了Java 8或更高版本) - 安装OpenJDK (如果未安装):
sudo yum install java-1.8.0-openjdk-devel(版本号可能需要根据实际情况调整)
- 检查Java版本:
-
ZooKeeper安装与解压:
- 从Apache ZooKeeper官方网站下载适合CentOS的版本。
- 解压下载的压缩包 (例如
zookeeper-x.x.x.tar.gz):tar -zxvf zookeeper-x.x.x.tar.gz - 建议将解压后的文件放置在
/usr/local目录下。
ZooKeeper配置:
-
环境变量:
- 编辑
/etc/profile文件,添加以下环境变量 (根据实际路径调整):export JAVA_HOME=/usr/java/jdk1.8.0_xxx # 替换xxx为你的jdk版本号 export JRE_HOME=$JAVA_HOME/jre export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export ZOOKEEPER_HOME=/usr/local/zookeeper-x.x.x # 替换x.x.x为你的ZooKeeper版本号 export PATH=$PATH:$ZOOKEEPER_HOME/bin
- 使修改生效:
source /etc/profile
- 编辑
-
ZooKeeper配置文件:
- 进入ZooKeeper配置文件目录:
cd $ZOOKEEPER_HOME/conf - 复制并重命名配置文件:
cp zoo_sample.cfg zoo.cfg - 编辑
zoo.cfg文件,配置以下参数 (替换为你的服务器IP和ID):tickTime=2000 dataDir=/usr/local/zookeeper-x.x.x/data # 替换x.x.x为你的ZooKeeper版本号 clientPort=2181 initLimit=5 syncLimit=2 server.1=master_ip:2888:3888 server.2=slave1_ip:2888:3888 server.3=slave2_ip:2888:3888
其中
master_ip,slave1_ip,slave2_ip分别替换为你的主节点和从节点的IP地址。server.1,server.2,server.3分别对应服务器ID 1, 2, 3。
- 进入ZooKeeper配置文件目录:
-
数据目录:
MTTSHOP包包免费商城系统下载一款非常包包、衣服、鞋子类网站,页面干净清洁、一目了然,mttshop打造精致、简单、易用、免费的商城。 系统要求:IIS5.1以后,必须安装.net 3.5 安装步骤: 1、下载完成后,直接解压文件mttshop.rar 2、附加数据库:解压后的可以找一个叫db的文件夹,解压后直接附加就可以,支持SQL 2000、2005、2008 3、配置web.config文件,找到key=&qu
- 在每台服务器上创建数据目录:
sudo mkdir -p $ZOOKEEPER_HOME/data - 确保ZooKeeper用户对该目录具有读写权限。
- 在每台服务器上创建数据目录:
-
myid文件:
- 在每台服务器的
dataDir目录下创建myid文件,文件内容为该服务器的ID (1, 2, 3)。
- 在每台服务器的
启动ZooKeeper:
-
启动服务: 在每台服务器上执行:
$ZOOKEEPER_HOME/bin/zkServer.sh start -
验证状态: 使用
$ZOOKEEPER_HOME/bin/zkServer.sh status检查ZooKeeper服务状态。
-
开放端口: 开放ZooKeeper客户端端口 (默认2181) 和服务器间通信端口 (2888, 3888)。 方法取决于你使用的防火墙 (firewalld 或iptables)。 例如,使用firewalld:
sudo firewall-cmd --permanent --add-port=2181/tcpsudo firewall-cmd --permanent --add-port=2888/tcpsudo firewall-cmd --permanent --add-port=3888/tcpsudo firewall-cmd --reload
集群验证:
-
安装客户端: 在任意一台服务器上安装ZooKeeper客户端:
sudo yum install zookeeper-client -
连接并测试: 使用客户端连接集群:
zkCli -server master_ip:2181(替换master_ip为任意一个节点的IP),然后执行ls /命令查看根节点内容。
记住替换文中所有占位符 (例如 x.x.x, master_ip, slave1_ip, slave2_ip) 为你的实际值。 确保所有服务器上的配置一致。










