1.docker运行zookeeper
docker run --privileged=true -d --name zookeeper01 --publish 2181:2181 -d 镜像id
2.进入运行容器
docker exec -it 运行id /bin/bash
//进入客户端
./bin/zkCli.sh -server 127.0.0.1:2181
3.基本指令(单机搭建)
//3.1查看所有节点
ls /
//3.2创建节点
create /node01 123
// '/node01'为节点名称、123为赋值,可赋值任何数字(可不输入系统会赋默认值)
//3.3创建临时节点
create -e /node02 456
//临时节点不可创建子节点
参数表 -e 创建临时节点
-s 创建顺序节点
//4查看节点信息
stat /node01
//4.1查看节点信息及存储数据
ls -s /node01
//4.2获取节点数据内容
get /node01
//4.3获取节点数据内容+状态
get -s /node01
//4.4修改节点数据内容
set /node01 666
//4.5删除节点
delete /node01
deleteall /node01
//5 权限
getAcl /node01
//5.1添加认证用户
addauth digest node01:000000
//digest(参数:以用户名+密码方式登录) node01(用户名) 000000(密码)
//设置权限
setAcl /node01 auth:node01:cdrwa
// /node01(节点权限) auth(授权参数) node01(用户名) cdrwa(权限)
//登录方式
addauth digest node01:000000
4.集群搭建
(1) 编写配置文件 (配置文件内容在文章最下方)
(2) 到达存放配置文件的路径下
(3) 启动并创建集群
//4.1 以配置文件方式启动运行 3个 zookeeper
// 注意:以下命令执行失败需安装 docker-compose 命令
//安装命令:yum install docker-compose
docker-compose up -d
//4.2 查看集群状态
docker exec -it 服务器名称 bash ./bin/zkServer.sh status
//4.3 进入容器
docker exec -it 服务器名称 /bin/bash
//4.4进入客户端
./bin/zkCli.sh -server 127.0.0.1:2181
附件:集群配置文件 docker-compose.yml (配置文件名必须为 docker-compose.yml)
version: '3.1'
services:
zoo1:
image: zookeeper
restart: always
container_name: zoo1
ports:
- 2181:2181
#volumes:
#- /usr/local/docker/zookeeper/zoo1/data:/data
#- /usr/local/docker/zookeeper/zoo1/datalog:/datalog
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo2:
image: zookeeper
restart: always:
container_name: zoo2
ports:
- 2182:2181
#volumes:
#- /usr/local/docker/zookeeper/zoo2/data:/data
#- /usr/local/docker/zookeeper/zoo2/datalog:/datalog
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo3:
image: zookeeper
restart: always
container_name: zoo3
ports:
- 2183:2181
#volumes:
#- /usr/local/docker/zookeeper/zoo3/data:/dada
#- /usr/local/docker/zookeeper/zoo3/datalog:/datalog
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181