原創不易,請多多支持!對軟體技術感興趣的童鞋請關注我,後續技術分享更精彩。
容器編排從幾年前群雄割據、各方亂戰,到如今Google的k8s一統天下。能迅速力挽狂瀾,已說明其技術實力。但k8s複雜的架構,不太友好的文檔,確實讓一些初學者望而卻步。近期正好一直在學習k8s的東西,走了一些彎路。整理出來以備參考。
由於內容過多,本文將分多章介紹k8s集群構建過程,並發布demo到k8s集群,簡單演示一個完整CI/CD的自動化過程。各章節內容如下:
一、
二、rancher搭建k8s集群環境
三、Jenkins自動化構建示例到k8s集群
centos7.7虛擬機3臺,對應ip如下:
- 192.168.0.110- 192.168.0.111- 192.168.0.112
192.168.0.110 : rancher和jenkins部署機器。
192.168.0.111/192.168.0.112:k8s集群node節點。筆者機器資源所限,超過3臺虛擬機,個人筆記本電腦將無法工作。使用者可根據具體情況增加虛擬機節點。
192.168.0.110虛擬節點上安裝rancher工具。
rancher是一款開源、優秀的k8s集群管理工具,通過可視化的界面操作,屏蔽了k8s複雜的命令操作過程,讓初學者無需了解k8s內部細節也能可以快速使用集群。
官方文檔:https://rancher.com/docs/rancher/v2.x/en/
安裝rancher:
sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 \-v /data/rancher_home/rancher:/var/lib/rancher \-v /data/rancher_home/auditlog:/var/log/auditlog \rancher/rancher
安裝完成後,將以80埠啟動服務。瀏覽器訪問以下地址。
https://192.168.0.110/login
地址為https,需添加證書信任。打開界面選擇語言,設置密碼。登錄應用。
點擊右上角 添加集群 按鈕,新增一個k8s集群。
選擇 自定義存在的集群node 創建集群配置。
錄入集群名稱 k8s-demo,其他項保持默認設置,點擊 下一步。
由於本文集群只有兩個node節點,節點選擇中的 節點角色 需要全部選擇。
上圖第2個文本框顯示了節點加入集群的指令,點擊右側 複雜 按鈕,複製相應命令。在對應的node節點執行複製指令。本文為192.168.0.111/192.168.0.112 虛擬機node節點。分別登陸2臺機器,執行指令。
執行完成後,在rancher頁面底部會顯示 node註冊成功的 信息提示。
點擊 完成 按鈕,完成k8s-demo的集群配置工作。
跳轉集群列表頁,列表中新增了一條剛添加的k8s-demo集群信息,狀態為 準備中,耐心等待幾分鐘。rancher正在進行集群的初始化工作。
過程中請保證虛擬機網絡暢通,如果出現的error提示是網絡相關的,可重啟下虛擬機試試,有些網絡訪問問題(虛擬機防火牆關閉前提下),本人就是通過重啟解決,似乎rancher對api server請求失敗,初始化重試這塊做的不是很完善。
初始化完成,集群狀態變為 可用 狀態。
點擊k8s-demo名稱,查看集群資源使用情況頁面。
到此,rancher初始化k8s集群完成。請關注我,後續將介紹Jenkins CI/CD 發布示例到k8s集群的過程。