确保Debian系统满足Zookeeper运行的基本要求:
sudo apt update && sudo apt install openjdk-11-jdk -y
java -version # 确认输出版本≥11
sudo apt update && sudo apt upgrade -y
根据需求选择需测试的Zookeeper版本(如3.4.x、3.5.x、3.7.x),优先参考Debian官方仓库或Apache官方发布的稳定版本。若仓库版本过旧,可通过以下方式获取指定版本:
apache-zookeeper-3.7.0-bin.tar.gz);sudo apt install zookeeper=<version>安装(需提前添加对应源)。/opt(或其他非root目录),并创建软链接便于管理:wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzf apache-zookeeper-3.7.0-bin.tar.gz -C /opt
ln -s /opt/apache-zookeeper-3.7.0-bin /opt/zookeeper
dataDir、clientPort、集群节点信息):cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg
nano /opt/zookeeper/conf/zoo.cfg
示例配置(单机模式):tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
dataDir目录下创建myid,写入节点ID(如节点1写1):mkdir -p /var/lib/zookeeper
echo "1" > /var/lib/zookeeper/myid
bin目录,执行启动脚本:/opt/zookeeper/bin/zkServer.sh start
/opt/zookeeper/bin/zkServer.sh status
/opt/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181
输入ls /命令,若返回空列表则表示连接成功。针对不同版本的特性,设计以下测试用例:
create /test "data"、delete /test);get /test、set /test "new_data");watch /test);zoo.cfg添加节点,重启服务);dynamicConfigFile);/opt/zookeeper/logs/zookeeper.out,使用tail命令实时监控:tail -f /opt/zookeeper/logs/zookeeper.out
sudo netstat -tulnp | grep 2181检查端口占用,修改zoo.cfg中的clientPort;sudo apt remove openjdk-8-jdk),重新安装指定版本;zoo.cfg中的server.X格式(如server.1 node1:2888:3888),确保myid文件与配置一致。若需测试多个版本,可通过以下方式实现:
/opt/zookeeper-3.4.14、/opt/zookeeper-3.7.0);PATH变量切换默认版本,或在启动脚本中指定完整路径(如/opt/zookeeper-3.4.14/bin/zkServer.sh);clientPort(如3.4.x用2181,3.7.0用2182),避免端口冲突。通过以上步骤,可在Debian系统上完成Zookeeper不同版本的兼容性测试,确保版本与系统环境、依赖组件及业务需求匹配。测试过程中需详细记录日志与结果,便于后续问题定位与版本选择。