docker-----虚拟机安装zk

虚拟机安装

# 直接使用命令下载
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz
# 解压缩
tar -zxvf zookeeper-3.4.11.tar.gz
# 移动到安装目录
mv zookeeper-3.4.11 /usr/local/
环境变量配置
vim /etc/profile
在文件末尾位置添加如下内容
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.11
export PATH=$PATH:$ZOOKEEPER_HOME/bin

source /etc/profile

zoo.cfg配置

# 首先需要进入conf文件夹下将zoo_simple.cfg改名为zoo.cfg:
mv zoo_sample.cfg zoo.cfg

这样zookeeper就能读取到该配置文件,其主要配置项如下

 
yum install java -y

Zookeeper启动与客户端连接

服务管理命令:  zkServer.sh start|stop|restart|status
客户端连接:  zkCli.sh -server ${ip}:${port}
客户端关闭:  quit 或者按 Ctrl + C
开机自启动
/etc/init.d/zookeeper
#!/bin/bash    
#chkconfig:2345 20 90    
#description:zookeeper    
#processname:zookeeper    
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64
case $1 in
        start) su root /usr/local/zookeeper-3.4.11/bin/zkServer.sh start;;
        stop) su root /usr/local/zookeeper-3.4.11/bin/zkServer.sh stop;;
        status) su root /usr/local/zookeeper-3.4.11/bin/zkServer.sh status;;
        restart) su root /usr/local/zookeeper-3.4.11/bin/zkServer.sh restart;;
        *) echo "require start|stop|status|restart" ;;
esac
chmod a+x /etc/init.d/zookeeper
chkconfig --add zookeeper
chkconfig --list zookeeper
 
 

容器安装 

用容器测试部署,docker网段和k8s是一个网段,测试才可连通连接使用,本地测试用本安装即可。

Dockerfile

# 开启yum转发
FROM centos:7
RUN echo "ip_resolve=4" >> /etc/yum.conf
RUN yum update -y && yum install -y java-1.8.0-openjdk
RUN yum -y install vim net-tools telnet tree git wget curl
# 设置时区
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" > /etc/timezone

#ROM tt.tharbor.com/kubernetes/openjdk:8-jre-alpine

# 拷贝安装好zk包
ENV jar zk
ENV workdir /opt/zkweb
COPY ${jar} ${workdir}/zk

# zk 环境变量
ENV ZK_HOME ${workdir}/zk
ENV PATH $PATH:$ZK_HOME/bin
#RUN cp $ZK_HOME/conf/zoo_sample.cfg $ZK_HOME/conf/zoo.cfg

EXPOSE 2181
CMD $ZK_HOME/bin/zkServer.sh start 

打镜像

docker build -t zk:v3.4.11 .

启动运行容器

#启动
docker run -d --name zookeeper -p 2181:2181 zk:v3.4.11
docker run -it zk:v3.4.11

# 正在运行的
docker container ls

   
# 连接容器 docker exec -it zookeeper /bin/bash # 进入容器

进入zk容器

# 进入ZooKeeper的bin目录
cd /opt/zkweb/zk/bin

# 客户端连接ZooKeeper服务器端
./zkCli.sh -server 127.0.0.1:2181
# 创建节点 [zk: 127.0.0.1:2181(CONNECTED) 1] create -e /test-node 123456
# 列出所有根节点 [zk: 127.0.0.1:2181(CONNECTED) 2] ls / [test-node, zookeeper]
#获取指定节点的值 [zk: 127.0.0.1:2181(CONNECTED) 3] get /test-node # 断开客户端连接 [zk: 127.0.0.1:2181(CONNECTED) 4] quit

 end...

原文地址:https://www.cnblogs.com/edeny/p/14462816.html