Skip to content

Latest commit

 

History

History
328 lines (208 loc) · 15.5 KB

README0.9-zh-hk.md

File metadata and controls

328 lines (208 loc) · 15.5 KB

二進位方式一鍵離線安裝高可用的多kubernetes集羣,支持定時安裝、添加kubernetes節點、删除kubernetes節點、銷毀kubernetes主機、重建kubernetes主機、卸載集羣等。
(不需要在目標主機上安裝任何軟件,只需要有純淨的裸機即可離線完成高可用kubernetes集羣的部署!)


kube-install


English Documents | 繁体中文文档 | 简体中文文档 | 日本語の文書


[1] 相容性


相容性說明:
kube-install版本支持的Kubernetes版本支持的作業系統相關文檔
kube-install v0.9.* kubernetes v1.28, v1.27, v1.26, v1.25, v1.24 CentOS 7 , RHEL 7 , CentOS 8 , RHEL 8 , SUSE Linux 15 , Ubuntu 20 server 說明檔案
組件清單
kube-install v0.8.* kubernetes v1.24, v1.23, v1.22, v1.20, v1.19, v1.18 CentOS 7 , RHEL 7 , CentOS 8 , RHEL 8 , SUSE Linux 15 , Ubuntu 20 server 查看詳情
kube-install v0.7.* kubernetes v1.23, v1.22, v1.20, v1.19, v1.18, v1.17 CentOS 7 , RHEL 7 , CentOS 8 , RHEL 8 , SUSE Linux 15 , Ubuntu 20 server 查看詳情
kube-install v0.6.* kubernetes v1.22, v1.21, v1.20, v1.19, v1.18, v1.17, v1.16, v1.15, v1.14 CentOS 7 , RHEL 7 , CentOS 8 , RHEL 8 , SUSE Linux 15 查看詳情
kube-install v0.5.* kubernetes v1.21, v1.20, v1.19, v1.18, v1.17, v1.16, v1.15, v1.14 CentOS 7 , RHEL 7 查看詳情
kube-install v0.4.* kubernetes v1.21, v1.20, v1.19, v1.18, v1.17, v1.16, v1.15, v1.14 CentOS 7 , RHEL 7 查看詳情
kube-install v0.3.* kubernetes v1.18, v1.17, v1.16, v1.15, v1.14 CentOS 7查看詳情
kube-install v0.2.* kubernetes v1.14 CentOS 7 查看詳情
kube-install v0.1.* kubernetes v1.14 CentOS 7 查看詳情

注意:kube-install支持CentOS 7、CentOS 8、SUSE 15、RHEL 7和RHEL 8作業系統環境,點擊這裡查看kube-install所支持的作業系統發行版本的清單


[2] 獲取kube-install套裝軟體


你可以從https://github.com/cloudnativer/kube-install/releases 這裡下載kube-install-*.tgz套裝軟體。
舉例,下載kube-install-allinone-v0.9.0.tgz套裝軟體進行安裝:

# cd /root/
# curl -O https://github.com/cloudnativer/kube-install/releases/download/v0.9.0/kube-install-allinone-v0.9.0.tgz
# tar -zxvf kube-install-allinone-v0.9.0.tgz
# cd /root/kube-install/

注意:如果你本地的網路環境不是太好的話,建議你使用支持中斷點續傳的下載軟體進行套裝軟體下載,這樣可以獲得更好的下載體驗。



[3] 通過Web平臺安裝kubernetes集羣


如果你有四臺服務器,k8s-master安裝在三臺服務器(192.168.1.11、192.168.1.12、192.168.1.13)上,k8s-node安裝在四臺服務器(192.168.1.11、192.168.1.12、192.168.1.13、192.168.1.14)上。服務器的作業系統是純淨的CentOS Linux或RHEL(RedHat Enterprise Linux),具體如下表所示:

IP地址需要安裝的組件作業系統版本root密碼
192.168.1.11k8s-master,k8s-node,kube-installCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.12k8s-master,k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.13k8s-master,k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.14k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
安裝後的部署架構如下圖所示:

kube-install-arch


注意:這裡使用192.168.1.11作為kube-install源安裝機。事實上,您可以將任何主機(包括kubernetes集羣之外的任何主機)用來作為kube-install源安裝機!

3.1 初始化系統環境


首先你需要使用root用戶對kube-install源安裝機本地環境進行初始化操作,進入解壓後的軟件目錄執行`kube-install -init`命令:
# cd /root/kube-install/
# ./kube-install -init -ostype "centos7"

注意:kube-install軟體支援rhel7rhel8centos7centos8ubuntu20suse15等版本的作業系統,在做初始化操作的時候,請確保-ostype參數設置正確。


3.2 運行kube-install的Web管理服務

然後,執行systemctl start kube-install命令來運行kube-install的Web管理平臺服務。kube-install的Web管理平臺具備SSH打通、定時安裝部署、Node擴容、Master修復、集羣卸載等强大的功能,你可以在Web管理平臺上獲得更好的安裝體驗。

# cd /root/kube-install/
# ./kube-install -init -ostype "centos7"
#
# systemctl start kube-install.service
#
# systemctl status kube-install.service
  ● kube-install.service - kube-install One click fast installation of highly available kubernetes cluster.
     Loaded: loaded (/etc/systemd/system/kube-install.service; disabled; vendor preset: disabled)
     Active: active (running) since Fri 2021-08-20 14:30:55 CST; 21min ago
       Docs: https://cloudnativer.github.io/
   Main PID: 2768 (kube-install)
     CGroup: /system.slice/kube-install.service
             └─2768 /go/src/kube-install/kube-install -daemon
   ...

此時,你就可以使用網頁瀏覽器打開http://kube-install源安裝機IP:9080,訪問kube-install的Web管理平臺了。 使用用戶名 admin 和默認密碼 CloudNativeR 登入!(你可以後期通過web平臺修改密碼)


注意:kube-install的Web管理平臺服務默認監聽TCP 9080。如果你想修改這個監聽地址的話,可以通過修改/etc/systemd/system/kube-install.service檔案中的kube-install -daemon -listen ip:port參數來進行設定,點擊這裡可以查看詳細檔案

3.3 快速安裝部署kubernetes集羣

然後,點擊Web介面右上角的的Install Kubernetes按鈕開始kubernetes集羣的安裝。

kube-dashboard

注意:在你開始給目標主機安裝kubernetes集羣之前,請先打通kube-install源安裝機本地到目標主機的SSH免密通道。 你可以自己手工打通到目標主機的SSH通道,也可以點擊右上角的Open SSH Channel of Host按鈕來進行打通,點擊這裡可以查看更加詳細的檔案


在彈出的安裝表單視窗中填寫好安裝所需的參數資訊:

kube-dashboard

說明:

  • 請選擇好你需要安裝的Kubernetes版本,現時kube-install支持v1.17~1.24版本的Kubernetes安裝部署,其他版本的Kubernete暫未進行驗證。
  • 請選擇好你需要安裝的CNI挿件,現時kube-install支持FlannelCalicoKube-routerWeaveCilium等CNI挿件類型。 如果需要安裝Cilium,請將Linux內核陞級到4.9或以上版本。
  • 請選擇好你的作業系統環境。 由於低版本的Centos 7RHEL 7可能缺少內核模塊,kube-install對Centos 7RHEL 7作業系統內核的提供了自動升級到4.19的功能,你可以選擇使用此功能,也可能自己手工優化作業系統內核。

注意:如果不設定定時安裝的話,默認為立即開始安裝。 你如果想進行定時安裝,也可以在下方的選擇定時安裝的日期與時間。

kube-dashboard

你可以點擊這裡查看更多通過kube-install的Web管理平臺安裝部署的詳細資訊


[4] 通過命令列快速安裝kubernetes集羣


除了可以使用Web平臺安裝kubernetes集羣外,你還可以通過kube-install的命令列來安裝kubernetes集羣,kube-install的命令列使用起來比較簡單方便。

4.1 初始化系統環境


首先你需要使用root用戶對kube-install源安裝機本地環境進行初始化操作,進入解壓後的軟件目錄執行`kube-install -init`命令:
# cd /root/kube-install/
# ./kube-install -init -ostype "centos7"

注意:kube-install軟體支援rhel7rhel8centos7centos8ubuntu20suse15等版本的作業系統,在做初始化操作的時候,請確保-ostype參數設置正確。


4.2 打通到目標主機的SSH通道


在你開始給目標主機安裝kubernetes集羣之前,請先打通kube-install源安裝機本地到目標主機的SSH免密通道。 你可以自己手工打通到目標主機的SSH通道,也可以通過`kube-install -exec sshcontrol`命令來打通:
# cd /root/kube-install/
# ./kube-install -exec sshcontrol -sship "192.168.1.11,192.168.1.12,192.168.1.13,192.168.1.14" -sshpass "cloudnativer"

你也可以通過kube-install的Web管理平臺來打通到目標主機的SSH通道,點擊這裡查看使用Web管理平臺打通SSH通道的方法


4.3 一鍵安裝部署kubernetes集羣


在kube-install源安装机上使用root用户执行下面这条命令即可:
# cd /root/kube-install/
# ./kube-install -exec install -master "192.168.1.11,192.168.1.12,192.168.1.13" -node "192.168.1.11,192.168.1.12,192.168.1.13,192.168.1.14" -k8sver "1.28" -ostype "centos7" -label "192168001011"

注意:

  • kube-install軟體支援rhel7rhel8centos7centos8ubuntu20suse15等版本的作業系統,在做安裝部署操作的時候,請確保-ostype參數設置正確。 由於低版本的centos7和redhat7可能缺少內核模塊,kube-install對centos7和rhel7作業系統內核的提供了自動升級到4.19的功能,你可以選擇-upgradekernel參數使用此功能,也可能自己手工優化作業系統內核。
  • 請選擇好你需要安裝的CNI挿件,現時kube-install支持Flannel、Calico、Kube-router、Weave、Cilium等CNI挿件類型。 如果需要安裝“Cilium”,請將Linux內核陞級到4.9或以上版本。

另外,如果你需要自定義製定Kubernetes集羣安裝在目標主機上的目錄路徑的話,可以帶上-softdir參數來設定。


4.4 登入kubernetes dashboard介面


通過查看loginkey.txt檔案可以獲取kube-dashboard的登入地址和金鑰。
# cat /opt/kube-install/loginkey.txt

loginkey

如下麵的截圖所示為kube-dashboard的登入地址和金鑰:

kube-dashboard

kube-dashboard



[5] 擴容與銷毀Node|修復Master|卸載集羣


Kube-install不僅可以很方便的安裝單機和高可用的kubernetes集羣,還可以支持k8s-node的擴容與銷毀、k8s-master的銷毀與修復、kubernetes集羣的卸載等。

舉例,現在需要給第[2]章節中安裝好的kubernetets集羣,新增2個k8s-node節點(192.168.1.15 and 192.168.1.16),相關資訊如下:

IP地址需要安裝的組件作業系統版本root密碼
192.168.1.11k8s-master,k8s-node,kube-installCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.12k8s-master,k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.13k8s-master,k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.14k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.15k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer
192.168.1.16k8s-nodeCentOS Linux release 7 or Red Hat Enterprise Linux(RHEL) 7cloudnativer

在kube-install源主機上使用root用戶執行如下命令:

# kube-install -exec addnode -node "192.168.1.15,192.168.1.16" -k8sver "1.28" -ostype "centos7" -label "192168001011"

注意:kube-install軟體支援rhel7rhel8centos7centos8ubuntu20suse15等版本的作業系統,在做安裝部署操作的時候,請確保-ostype參數設置正確。

另外,如果你需要自定義製定Kubernetes集羣安裝在目標主機上的目錄路徑的話,可以帶上-softdir參數來設定。


安裝完畢之後的部署架構如下圖所示:

kube-install-arch

除了使用kube-install -exec addnode命令進行k8s-node節點擴容外,你也同樣可以使用kube-install的Web管理平臺來對k8s-node節點進行擴容,點擊"Add Node"按鈕填寫表單即可完成k8s-node的擴容。點擊這裡可以查看使用kube-install的Web管理平臺來擴容k8s-node節點的方法

kube-dashboard

你可以點擊“Enable Terminal”和“Web Terminal”來使用web終端管理k8s-node服務器。

注意:你可以點擊這裡查看更多關於銷毀k8s-node和k8s-master、修復k8s-master、卸載集羣的操作



[6] kube-install命令列幫助


你可以執行kube-install -help命令查看kube-install的使用幫助檔案,你也可以點擊這裡查看更加詳細的命令列幫助文檔



[7] kube-install集羣架構


./data/目錄是用來存儲kube-install安裝部署的所有狀態資訊的,包括所有kubernetes集羣的配寘等資訊。 你可以將./ data/目錄通過檔存儲的形式共亯起來,再借助於一些負載均衡軟件實現主備切換或負載均衡集羣效果。 你可以點擊這裡查看更加詳細的架構檔案

architecture



[8] 歡迎提交Issues和PR

如果你在使用過程中遇到問題,可以點擊https://github.com/cloudnativer/kube-install/issues向我們提交Issues,也可以Fork原始程式碼,然後嘗試修復BUG之後,向我們提交PR。


# git clone your-fork-code
# git checkout -b your-new-branch
# git commit -am "Fix bug or add some feature"
# git push origin your-new-branch

歡迎給我們提交Issues和PR。
謝謝每一位貢獻者!