天天看點

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

​​https://github.com/zq2599/blog_demos​​

内容:所有原創文章分類彙總及配套源碼,涉及java、docker、kubernetes、devops等;

kubespray是開源的kubernetes部署工具,整合了ansible,可以友善的部署高可用叢集環境,官網位址:​​https://github.com/kubernetes-sigs/kubespray,本文是用kubespray-2.14.2版本部署kuberneteskubernetes-1.18.10版本的實戰;​​

本次實戰采用官方推薦的線上安裝,是以會去谷歌鏡像倉庫下載下傳鏡像,需要您的網絡可以通路谷歌服務;

因為作者太窮,本次實戰籌集到共計兩台機器,它們的主機名、ip位址和作用描述如下:

<col>

主機名

ip位址

作用

作業系統

ansible

192.168.50.134

ansible主機

centos7

node1

192.168.50.27

k8s伺服器

ubuntu-20.04.1

可見kubernetes是被部署在ubuntu電腦上;

ubuntu電腦要做以下設定:

修改/etc/hostname,設定好主機名

修改/etc/hosts,将自己的主機名和ip位址添加進去

關閉防火牆

再次檢視應該是關閉狀态

關閉selinux,如果提示安裝selinux-utils,表示selinux沒有安裝,就不用關系了

ipv4網絡設定

立即禁用交換分區

我的電腦上,禁用前的記憶體情況

執行了swapoff -a後再看,可見全部為0了

以上禁用交換分區的方法,雖然立即生效了,但是重新開機電腦後依舊恢複了交換分區的使用,要徹底禁用,請打開檔案/etc/fstab,在下圖紅框這一行最前面添加#

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

ssh登入ansible主機;

生成ssh公私鑰,輸入指令ssh-keygen,然後連續四次回車:

輸入指令ssh-copy-id [email protected],将ansible的ssh分發給ubuntu主機,會要求輸入yes和ubuntu主機的root賬号的密碼,完成輸入後,以後ansible就可以免密碼ssh登入ubuntu主機了:

安裝ansible應用:

安裝pip:

通過pip安裝jinja2:

安裝python36:

建立工作目錄,進入工作目錄:

下載下傳kubespray,我這裡下載下傳的是v2.14.2版本:

解壓:

進入解壓後的目錄:

安裝kubespray所需的應用(注意是pip3):

複制一份demo配置資訊到目錄inventory/mycluster:

進去看一下,可見mycluster目錄下複制了很多檔案:

設定叢集資訊(目前目錄仍舊是kubespray-2.14.2):

配置ansible:

此時kubespray的腳本根據輸入的ip資訊做好了叢集規劃,具體資訊可見inventory/mycluster/hosts.yml,如下所示,您也可以自行修改此檔案:

執行以下指令即可開始安裝,線上安裝比較耗時請耐心等待:

遇到網絡問題失敗退出時很常見的事情,此時将上述指令重複執行即可,ansible對于已經執行過的指令會跳過的;

安裝完成時控制台輸出類似如下的資訊(太多了,省略了一些):

至此,kubernetes叢集環境部署完成,接下來簡單驗證一下環境是否可用;

ssh登入ubuntu機器;

檢視節點、service、pod:

可見一些必須的pod和服務都已經啟動了,接下來試試dashboard能否正常通路;

dashboard可以檢視kubernetes系統的整體情況,為了通路dashboard頁面,需要增加rbac:

執行以下指令,建立檔案admin-user.yaml:

執行以下指令,建立檔案admin-user-role.yaml:

建立serviceaccount和clusterrolebinding:

将kubernetes-dashboard這個服務的類型從clusterip改為nodeport,這樣我們就能從浏覽器通路dashboard了:

再看服務,已經成功改為nodeport :

擷取token看,用于登入dashboard頁面:

下圖紅框中就是token的内容:

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

9. 現在通過浏覽器通路dashboard頁面了,位址是:​​https://192.168.50.27:30443​​ ,其中192.168.50.27是ubuntu機器的ip位址;

10. 由于不是https協定,是以浏覽器可能彈出安全提示,如下圖,選擇繼續前往:

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

11. 此時頁面會讓您選擇登入方式,選擇令牌并輸入前面得到的token,即可登入:

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

登入成功後可以見到系統資訊,如下圖:

kubespray-2.14.2安裝kubernetes-1.18.10(ubuntu-20.04.1)

至此,kubespray-2.14.2安裝kubernetes-1.18.10完成,希望本文能給您一些參考。

微信搜尋「程式員欣宸」,我是欣宸,期待與您一同暢遊java世界...