实战交付一套dubbo微服务到k8s集群(1)之Zookeeper部署
基础架构
主机名 | 角色 | IP地址 |
---|---|---|
mfyxw10.mfyxw.com | K8S代理节点1,zk1 | 192.168.80.10 |
mfyxw20.mfyxw.com | K8S代理节点2,zk2 | 192.168.80.20 |
mfyxw30.mfyxw.com | K8S Node节点1,zk3 | 192.168.80.30 |
mfyxw40.mfyxw.com | K8S Node节点2,jenkins | 192.168.80.40 |
mfyxw50.mfyxw.com | K8S运维节点(docker仓库) | 192.168.80.50 |
Dubbo微服务概述
实验架构
1.安装JDK
需要在mfyxw10.mfyxw.com、mfyxw20.mfyxw.com及mfyxw30.mfyxw.com主机上分别安装jdk,建议使用jdk1.8及以上
JDK下载需要注册一个Oracle帐号才能允许下载
JDK1.8下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
先将jdk1.8的包分别上传到三台服务器
在mfyxw10.mfyxw.com主机上执行如下命令
[root@mfyxw10 ~]# mkdir -p /usr/java
[root@mfyxw10 ~]# tar xf jdk-8u221-linux-x64.tar.gz -C /usr/java
[root@mfyxw10 ~]# cd /usr/java
[root@mfyxw10 java]# ln -s jdk1.8.0_221 jdk
在mfyxw20.mfyxw.com主机上执行如下命令
[root@mfyxw20 ~]# mkdir -p /usr/java
[root@mfyxw20 ~]# tar xf jdk-8u221-linux-x64.tar.gz -C /usr/java
[root@mfyxw20 ~]# cd /usr/java
[root@mfyxw20 java]# ln -s jdk1.8.0_221 jdk
在mfyxw30.mfyxw.com主机上执行如下命令
[root@mfyxw30 ~]# mkdir -p /usr/java
[root@mfyxw30 ~]# tar xf jdk-8u221-linux-x64.tar.gz -C /usr/java
[root@mfyxw30 ~]# cd /usr/java
[root@mfyxw30 java]# ln -s jdk1.8.0_221 jdk
2.添加jdk的环境变量
需要在mfyxw10.mfyxw.com、mfyxw20.mfyxw.com及mfyxw30.mfyxw.com主机上分别添加jdk的环境变量,以下就以mfyxw10.mfyxw.com主机的操作为例,另二台的操作也类似
[root@mfyxw10 ~]# cat >> /etc/profile << EOF
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
EOF
[root@mfyxw10 ~]# tail -4 /etc/profile
[root@mfyxw10 ~]# source /etc/profile
[root@mfyxw10 ~]# bash
[root@mfyxw10 ~]# java -version
3.安装zookeeper
zookeeper官方地址:https://zookeeper.apache.org/
zookeeper下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
需要在mfyxw10.mfyxw.com、mfyxw20.mfyxw.com及mfyxw30.mfyxw.com主机上分别安装zookeeper
mfyxw10.mfyxw.com主机的操作为例,另二台的操作也类似
下载zookeeper软件
[root@mfyxw10 ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
解压zookeeper并创建软链接
[root@mfyxw10 ~]# tar xf apache-zookeeper-3.6.1-bin.tar.gz -C /opt
[root@mfyxw10 opt]# ln -s apache-zookeeper-3.6.1-bin zookeeper
创建存储zookeeper数据目录及日志文件目录,以及提供最简单的配置文件
[root@mfyxw10 ~]# mkdir -p /data/zookeeper/{data,logs}
[root@mfyxw10 ~]# cat > /opt/zookeeper/conf/zoo.cfg << EOF
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
EOF
4.为zookeeper提供myid
在mfyxw10.mfyxw.com主机上执行
[root@mfyxw10 ~]# cat > /data/zookeeper/data/myid << EOF
1
EOF
在mfyxw20.mfyxw.com主机上执行
[root@mfyxw20 ~]# cat > /data/zookeeper/data/myid << EOF
2
EOF
在mfyxw30.mfyxw.com主机上执行
[root@mfyxw30 ~]# cat > /data/zookeeper/data/myid << EOF
3
EOF
5.在DNS服务器上做域名解析并重启DNS服务
在mfyxw10.mfyxw.com主机上执行即可
[root@mfyxw10 ~]# cat > /var/named/od.com.zone <<EOF
\$ORIGIN od.com.
\$TTL 600 ; 10 minutes
@ IN SOA dns.od.com. dnsadmin.od.com. (
;序号请加1,表示比之前版本要新
2020031307 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS dns.od.com.
\$TTL 60 ; 1 minute
dns A 192.168.80.10
harbor A 192.168.80.50 ;添加harbor记录
k8s-yaml A 192.168.80.50
traefik A 192.168.80.100
dashboard A 192.168.80.100
zk1 A 192.168.80.10
zk2 A 192.168.80.20
zk3 A 192.168.80.30
EOF
重启DNS服务
[root@mfyxw10 ~]# systemctl restart named
6.启动zookeeper服务
需要在mfyxw10.mfyxw.com、mfyxw20.mfyxw.com及mfyxw30.mfyxw.com主机上分别启动zookeeper服务
在mfyxw10.mfyxw.com上执行,其它二台主机的操作类似
[root@mfyxw10 ~]# /opt/zookeeper/bin/zkServer.sh start
7.分别查看zookeeper状态信息
需要在mfyxw10.mfyxw.com、mfyxw20.mfyxw.com及mfyxw30.mfyxw.com主机上分别启动zookeeper服务
~]# /opt/zookeeper/bin/zkServer.sh status
8.设置zookeeper开机启动
在安装有zookeeper的主机(mfyxw10.mfyxw.com,mfyxw20.mfyxw.com,mfyxw30.mfyxw.com)都要分别操作,教程以mfyxw10.mfyxw.com操作为例,其它二台类似
在mfyxw10.mfyxw.com主机上执行如下操作
添加zookeeper开机启动脚本
[root@mfyxw10 ~]# cat > /etc/init.d/zookeeper << EOF
#!/bin/bash
#chkconfig:2345 20 90
#description:zookeeper
#processname:zookeeper
export JAVA_HOME=/usr/java/jdk
export PATH=\$JAVA_HOME/bin:\$PATH
case \$1 in
start) su root /opt/zookeeper/bin/zkServer.sh start;;
stop) su root /opt/zookeeper/bin/zkServer.sh stop;;
status) su root /opt/zookeeper/bin/zkServer.sh status;;
restart) su root /opt/zookeeper/bin/zkServer.sh restart;;
*) echo "require start|stop|status|restart" ;;
esac
EOF
添加执行权限
[root@mfyxw10 ~]# chmod +x /etc/init.d/zookeeper
添加到启动服务
[root@mfyxw10 ~]# chkconfig --add zookeeper
实战交付一套dubbo微服务到k8s集群(1)之Zookeeper部署的更多相关文章
- 8.实战交付一套dubbo微服务到k8s集群(1)之Zookeeper部署
1.基础架构 主机名 角色 ip HDSS7-11.host.com K8S代理节点1,zk1 10.4.7.11 HDSS7-12.host.com K8S代理节点2,zk2 10.4.7.12 H ...
- 9.实战交付一套dubbo微服务到k8s集群(2)之Jenkins部署
1.下载Jenkins镜像打包上传harbor上 [root@hdss7- ~]# docker pull jenkins/jenkins:2.190. [root@hdss7- ~]# docker ...
- 实战交付一套dubbo微服务到k8s集群(2)之Jenkins部署
Jenkins官网:https://www.jenkins.io/zh/ Jenkins 2.190.3 镜像地址:docker pull jenkins/jenkins:2.190.3 1.下载Je ...
- 实战交付一套dubbo微服务到k8s集群(6)之交付dubbo-monitor到K8S集群
dubbo-monitor官方源码地址:https://github.com/Jeromefromcn/dubbo-monitor 1.下载dubbo-monitor源码 在运维主机(mfyxw50. ...
- 12.实战交付一套dubbo微服务到k8s集群(5)之交付dubbo-monitor到K8S集群
dubbo-monitor官方源码地址:https://github.com/Jeromefromcn/dubbo-monitor 1.下载dubbo-monitor源码并解压 [root@hdss7 ...
- 11.实战交付一套dubbo微服务到k8s集群(4)之使用Jenkins进行持续构建交付dubo服务的提供者
1.登录到jenkins,新建一个项目 2.新建流水线 3.设置保留的天数及份数 4. 添加参数 # 参数 . name: git_repo type: string description: 项目在 ...
- 实战交付一套dubbo微服务到k8s集群(8)之configmap使用
使用ConfigMap管理应用配置 拆分环境 主机名 角色 IP地址 mfyxw10.mfyxw.com zk1.od.com(Test环境) 192.168.80.10 mfyxw20.mfyxw. ...
- 实战交付一套dubbo微服务到k8s集群(7)之交付dubbo服务的消费者集群到K8S
构建dubbo-demo-consumer,可以使用和dubbo-demo-service的流水线来构建 1.登录jenkins构建dubbo-demo-consumer 2.填写构建dubbo-de ...
- 实战交付一套dubbo微服务到k8s集群(5)之使用Jenkins进行持续构建交付dubo服务的提供者
1.登录到jenkins,新建一个项目 2.新建流水线 3.设置保留的天数及份数 4.添加第一个参数:设置项目的名称 5.添加第二个参数:docker镜像名称 6.添加第三个参数:项目所在的git中央 ...
随机推荐
- 【Oracle】查看oracle表空间大小及增加表空间的几种方法
在oracle中表空间是必不可少的.但是怎么查看表空间呢 简单的查看方式是: SQL> select tablespace_name from dba_tablespaces; 想要查看表空间对 ...
- 【ORA】ORA-01033,ORA-09968,ORA-01102
[oracle@oracle ~]$ imp xxxx/user file=/usr/local/src/666.dmp full=y buffer=40960000 Import: Release ...
- kafka安装流程
本文是作者原创,版权归作者所有.若要转载,请注明出处. 安装前的环境准备 1.由于Kafka是用Scala语言开发的,运行在JVM上,在安装之前需要先安装JDK(省略) 2.kafka依赖zookee ...
- 基于.NET Core的优秀开源项目合集
开源项目非常适合入门,并且可以作为体系结构参考的好资源, GitHub中有几个开源的.NET Core项目,这些项目将帮助您使用不同类型的体系结构和编码模式来深入学习 .NET Core技术, 本文列 ...
- 解决maven中某些依赖无法下载,手动安装Maven依赖
<!--先下载jar包,然后在仓库中手动安装,下面是遇到的两个例子--> <!--第一个--> mvn install:install-file -Dfile=D:\kaptc ...
- (11)-Python3之--os模块
1.模块介绍 os模块是路径处理模块,它提供了多数操作系统的功能接口函数.当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,经常和文件.目录打交道 ...
- yoctoproject 地址
第一次接触到yoctop. 在这里分享yoctoproject地址 https://www.yoctoproject.org/docs/2.3.3/ref-manual/ref-manual.html ...
- testng学习笔记-- beforesuit和aftersuit
一.定义 测试套件,主要关注执行顺序 套件:suit可以包含多个class 二.代码标签 三.运行结果
- 内存空间有限情况下的词频统计 Trie树 前缀树
数据结构与算法专题--第十二题 Trie树 https://mp.weixin.qq.com/s/nndr2AcECuUatXrxd3MgCg
- MapReduce过程源码分析
MapReduce过程源码分析 Mapper 首先mapper完成映射,将word映射成(word,1)的形式. MapReduce进程,Map阶段也叫MapTask,在MapTask中会通过 ...