基础架构
主机名 | 角色 | 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