K8S1.14高可用生產(chǎn)集群部署方案

發(fā)布時間:2024-03-03
云計算
系統(tǒng)說明
系統(tǒng)組件版本
操作系統(tǒng): centos 7.6
kernel: 4.4
kubernetes: v1.14.1
docker: 18.09 (支持 1.13.1, 17.03, 17.06, 17.09, 18.06, 18.09 )
etcd: v3.3.12
flannel: v0.11
cni-plugins: v0.7.5
coredns: 1.4.0
架構(gòu)示意圖
架構(gòu)說明:
使用六臺主機,三臺master節(jié)點, 三臺node節(jié)點
master節(jié)點上部署的kubernetes組件有kube-apiserver, kube-scheduler, kube-controller-manager,kube-proxy。部署網(wǎng)絡(luò)組件flannel,數(shù)據(jù)存儲集群etcd.
master的兩個高可用節(jié)點部署haproxy和keepalived
node 節(jié)點部署的kubernetes組件有kubelet,kube-proxy。 容器組件docker,網(wǎng)絡(luò)組件flannel
集群ip和主機名信息:
集群角色主機名ipmaster
master-1
192.168.20.44
master
master-2
192.168.20.45
master
master-3
192.168.20.46
node
k8s-node-1
192.168.20.47
node
k8s-node-2
192.168.20.48
node
k8s-node-3
192.168.20.49
ceph 需要一個可用的ceph集群
系統(tǒng)初始化
1. 主機初始化
安裝好centos7的系統(tǒng),做以下操作:
關(guān)閉firewalld,selinux。
更新系統(tǒng)軟件包,執(zhí)行yum update
安裝elrepo的源,更新內(nèi)核為4.4或以上版本,并重啟生效
分別設(shè)置主機名為,并在本地hosts文件中解析。
安裝ntp服務(wù)
設(shè)置內(nèi)核參數(shù)
設(shè)置內(nèi)核參數(shù)的部分,要確認執(zhí)行如下操作:
# 高可用master節(jié)點設(shè)置內(nèi)核參數(shù)cat <<eof > /etc/sysctl.d/k8s.confnet.ipv4.ip_nonlocal_bind = 1 net.ipv4.ip_forward = 1net.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.ipv4.ip_local_port_range = 10000 65000fs.file-max = 2000000net.ipv4.ip_forward = 1vm.swappiness = 0eof# 其他master節(jié)點和計算節(jié)點設(shè)置內(nèi)核參數(shù)cat <<eof > /etc/sysctl.d/k8s.confnet.ipv4.ip_forward = 1net.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.ipv4.ip_local_port_range = 10000 65000fs.file-max = 2000000net.ipv4.ip_forward = 1vm.swappiness = 0eof2. 安裝docker
由于在kubernetes1.14的版本中,支持的版本有 1.13.1, 17.03, 17.06, 17.09, 18.06, 18.09,所以這里統(tǒng)一使用docker 18.09。
下載docker-ce-18.09的rpm包和阿里云上對應(yīng)的docker-ce.repo的源,在所有node節(jié)點上直接安裝:
mv docker-ce.repo /etc/yum.repos.d/yum install docker-ce-18.09.5-3.el7.x86_64.rpm -y在所有node節(jié)點啟動docker,并配置自啟動:
systemctl start dockersystemctl enable docker3. 創(chuàng)建目錄
在所有主機上執(zhí)行如下命令,創(chuàng)建所需目錄:
mkdir -p /opt/kubernetes/{cfg,bin,ssl,log}4. 準備kubernetes軟件包
從github下載kubernetes 1.14版本的二進制軟件包,下載地址: https://github.com/kubernetes/kubernetes/blob/master/changelog-1.14.md#server-binaries
下載如下軟件包:
[root@master-1 tmp]# lltotal 537520-rw-r--r-- 1 root root 113938518 jul 24 19:15 kubernetes-node-linux-amd64.tar.gz-rw-r--r-- 1 root root 433740362 jul 24 19:09 kubernetes-server-linux-amd64.tar.gz解壓:
tar xf kubernetes-server-linux-amd64.tar.gz5.準備etcd和flannel組件
從github下載etcd v3.3.12和flannel v0.11.0 :
wget https://github.com/etcd-io/etcd/releases/download/v3.3.12/etcd-v3.3.12-linux-amd64.tar.gzwget https://github.com/coreos/flannel/releases/download/v0.11.0/flannel-v0.11.0-linux-amd64.tar.gz制作ca證書
kubernetes支持使用多種方式生成證書,可以使用easyrsa, openssl 或 cfssl任一一種生成。
參考鏈接
這里使用cfssl創(chuàng)建ca證書。
1.安裝cfssl
使用cfssl生成ca證書需要單獨安裝cfssl。
[root@master-1 ~]# cd /usr/local/src/curl -l https://pkg.cfssl.org/r1.2/cfssl_linux-amd64 -o /opt/kubernetes/bin/cfsslcurl -l https://pkg.cfssl.org/r1.2/cfssljson_linux-amd64 -o /opt/kubernetes/bin/cfssljsoncurl -l https://pkg.cfssl.org/r1.2/cfssl-certinfo_linux-amd64 -o /opt/kubernetes/bin/cfssl-certinfochmod x /opt/kubernetes/bin/*所有節(jié)點添加kubernetes的bin目錄到系統(tǒng)環(huán)境變量:
echo \\\'path=$path:/opt/kubernetes/bin\\\' >>/etc/profilesource /etc/profile2.生成證書
創(chuàng)建需要的配置文件:
[root@master-1 ~]# cd /opt/kubernetes/ssl/[root@master-1 ssl]# cfssl print-defaults config > config.json[root@master-1 ssl]# cfssl print-defaults csr > csr.json[root@master-1 ssl]# lltotal 8-rw-r--r-- 1 root root 567 jul 26 00:05 config.json-rw-r--r-- 1 root root 287 jul 26 00:05 csr.json[root@master-1 ssl]# mv config.json ca-config.json[root@master-1 ssl]# mv csr.json ca-csr.json修改生成的文件為如下內(nèi)容:
ca-config.json文件:
[root@master-1 ssl]# vim ca-config.json{ signing: { default: { expiry: 87600h }, profiles: { kubernetes: { usages: [ signing, key encipherment, server auth, client auth ], expiry: 87600h } } }}ca-csr.json
上一個:固態(tài)硬盤一般要多大,固態(tài)硬盤一般用多大的
下一個:RC0603FR-074R42L,0603 4.42Ω 1% 1/10W 電阻

勞動仲裁如何申請執(zhí)行
現(xiàn)在裝電腦什么配置好,什么配置的電腦最好
五月深圳賞花景點介紹
建筑工程索賠的程序有哪些?
windows預(yù)覽版更新失敗(windows10更新預(yù)覽版)
武漢出租、維修、回收二手高低溫試驗箱
無形資產(chǎn)是不包括哪些
德國alunox焊絲
專家證人出庭規(guī)定,專家證人出庭作證的程序
中文域名有什么好處?注冊中文域名需要注意什么
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos