基礎架構
主機名 | 角色 | 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