满堂花醉三千客,一剑霜寒十四洲。这篇文章主要讲述[kubernetes] 交付dubbo之zookeeper安装配置相关的知识,希望能为你提供帮助。
做这个实验目标是往kubernetes集群里交付dubbo服务,现在来安装zookeeper集群,拓扑如下图所示:
??01 配置java环境??
由于zookeeper是java语言开发的,所以安装之前需要先准备java环境,这部分三台主机都需要配置。
1)下载jdk
jdk-8u291-linux-x64.tar.gz
2)创建目录
mkdir /usr/java
3)解压缩
tar xfv jdk-8u291-linux-x64.tar.gz -C /usr/java
4)配置软连接,方便以后作升级
ln -s /usr/java/jdk1.8.0_291/ /usr/java/jdk
5)配置环境变量
vi /etc/profile
export JAVA_HOME=/usr/java/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/bin:$PATH
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
6)测试
source /etc/profile
[root@host11 ~]# java -version
java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
??02 配置zookeeper??
1)下载软件
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
2)解压
tar xfv zookeeper-3.4.14.tar.gz -C /opt/
3)作软连接,方便以后升级
ln -s /opt/zookeeper-3.4.14 /opt/zookeeper
4)配置zoo.cfg
[root@host11 ~]# cat /opt/zookeeper/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/logs
clientPort=2181
server.1=zk1.od.com:2888:3888
server.2=zk2.od.com:2888:3888
server.3=zk3.od.com:2888:3888
5)创建日志和数据目录
mkdir -pv /data/zookeeper/data,logs
6)配置myid ,?注意这里每个主机的配置都不一样?
[root@host11 ~]# echo 1 >
/data/zookeeper/data/myid
[root@host12 ~]# echo 2 >
/data/zookeeper/data/myid
[root@host21 ~]# echo 3 >
/data/zookeeper/data/myid
7)在dns服务器配置dns解析
[root@host11 zk]# cat /var/named/od.com.zone
$ORIGIN od.com.
$TTL 600;
10 minutes
@IN SOAdns.od.com. dnsadmin.od.com. (
2021073105;
serial
10800;
refresh
900;
retry
604800;
expire
86400 );
minimum
NSdns.od.com.
$TTL60 ;
1 minute
dnsA192.168.122.11
harborA192.168.122.200
k8s-yaml A192.168.122.200
traefikA192.168.122.10
dashboard A192.168.122.10
jenkinsA192.168.122.10
zk1A192.168.122.10
zk2A192.168.122.11
zk3A192.168.122.21
8)启动主机上的zookeeper
/opt/zookeeper/bin/zkServer.sh start
9)查看zookeeper状态(一主两从)
/opt/zookeeper/bin/zkServer.sh status# follower代表从节点,leader代表主节点
10)链接到zookeeper,查看目录,返回zookeeper即为成功
/opt/zookeeper/bin/zkCli.sh -server localhost:2181
[zk: localhost:2181(CONNECTED) 4] ls /
[zookeeper]
tips:如果查看zkServer.sh 返回
【[kubernetes] 交付dubbo之zookeeper安装配置】Error contacting service. It is probably not running
,则检查/data/zookeeper/data/zookeeper.out查看详细的报错内容,如果需要再次启动zookeeper,先删除/data/zookeeper/data/zookeeper_server.pid。
??03 使用supervisor管理zk??
supervisor可以类似于systemctl一样帮我们管理zk服务,并且在zk异常退出时帮我们拉起zk进程。
1)安装supervisor
yum install -y supervisor
systemctl enable supervisord
systemctl start supervisord
2)配置supervisor脚本 -- 以host21为例
[root@host21 supervisord.d]# cat /etc/supervisord.d/zk-server.ini
[program:zk-server-host21]
command=/opt/zookeeper/bin/zkServer.sh start-foreground
;
priority=999
autostart=true
autorestart=true
;
startsecs=10
;
startretries=3
;
exitcodes=0,2
;
stopsignal=QUIT
;
stopwaitsecs=10
user=root
log_stdout=true
log_stderr=true
stdout_logfile=/data/zookeeper/logs/supervisord_zookeeper.log
redirect_stderr=true
;
logfile_maxbytes=10MB
environment=JAVA_HOME=/usr/java/jdk
3)停止zk
/opt/zookeeper/bin/zkServer.sh stop
4)使用supervisord更新zk服务
supervisord update
5)查看zk服务状态
supervisord status zk-server-host21
6)停止zk
supervisord stop zk-server-host21
7)启用zk
supervisord start zk-server-host21
推荐阅读
- TDengine 在蔚来能源系统的落地实践
- 四大功能!带你初识 Fabric | 容器网络系列第2期
- [kubernetes] 跨云厂商使用公网IP搭建k8s v1.20.9集群
- WebRTC开源技术平台新版EasyRTC如何获取推流信息列表()
- [kubernetes] 交付dubbo之在jenkins配置多jre版本的maven
- 基于Redis6.2.6版本部署Redis Cluster集群 #yyds干货盘点#
- [kubernetes] HPA实现自动水平伸缩POD
- ES2022 有什么新功能
- IT商业大战2