KubeOperator 支持兩種 Kubernetes 集群部署方式垫言,一種是手動(dòng)模式何鸡,另外一種是自動(dòng)模式。手動(dòng)模式下肮街,用戶需要自行準(zhǔn)備主機(jī),如果使用 NFS 作為持久化存儲(chǔ)還需要準(zhǔn)備 NFS 存儲(chǔ)主機(jī)先慷。
手動(dòng)模式下 Kubernetes 集群的規(guī)劃饮笛、部署和管理包含以下內(nèi)容:
- 集群規(guī)劃 ( Day 0)
- 系統(tǒng)設(shè)置
- 準(zhǔn)備主機(jī)
- 準(zhǔn)備存儲(chǔ)
- 集群部署( Day 1)
- 創(chuàng)建集群
- 部署集群
- 服務(wù)暴露
- 集群運(yùn)營(yíng)(Day 2)
- 集群管理
- 集群升級(jí)
- 集群伸縮
- 集群備份
本章節(jié)以自動(dòng)模式部署一個(gè)開發(fā)測(cè)試用集群為例,需要準(zhǔn)備三臺(tái)主機(jī)论熙,如果使用通過 Rook 支持 Ceph 存儲(chǔ)方案福青,則不需要準(zhǔn)備存儲(chǔ)主機(jī)。每個(gè)主機(jī)的用途和需求是:
名稱 | 角色 | 數(shù)量 | 操作系統(tǒng) | 最低配置 | 推薦配置 | 描述 |
---|---|---|---|---|---|---|
master-1 | Master | 1 | RHL 7.6 | 2C 4G | 4C 16G | 運(yùn)行 etcd、kube-apiserver无午、kube-scheduler二蓝。 |
worker-1 | Worker | 1 | RHL7.6 | 2C 8G | 8C 32G | 運(yùn)行 kubelet、應(yīng)用工作負(fù)載指厌。 |
worker-2 | Worker | 1 | RHL7.6 | 2C 8G | 8C 32G | 運(yùn)行 kubelet刊愚、應(yīng)用工作負(fù)載。 |
1 集群規(guī)劃( Day 0)
1.1 系統(tǒng)設(shè)置
在使用 KubeOperator 之前踩验,必須先對(duì) KubeOperator 進(jìn)行必要的參數(shù)設(shè)置鸥诽。這些系統(tǒng)參數(shù)將影響到 Kubernetes 集群的安裝及相關(guān)服務(wù)的訪問。
1.1.1 主機(jī) IP 箕憾、集群域名后綴 和 NTP Server
在左側(cè)導(dǎo)航菜單中選擇【系統(tǒng)設(shè)置】牡借,默認(rèn)顯示系統(tǒng)頁中,
本機(jī) IP :指安裝 KubeOperator 機(jī)器自身的 IP袭异。KubeOperator 所管理的集群將使用該 IP 來訪問 KubeOperator钠龙。
域名后綴:為集群節(jié)點(diǎn)默認(rèn)訪問地址的后綴,集群暴露出來的對(duì)外服務(wù)的 URL 都將以該域名后綴作為訪問地址后綴御铃,例如: grafana.apps.mycluster.fit2cloud.com碴里。同時(shí)支持創(chuàng)建集群時(shí)修改域名后綴。
NTP Server :用來實(shí)現(xiàn)集群所有主機(jī)時(shí)間同步上真,默認(rèn)可以為空咬腋,也可以自建或網(wǎng)上查找公共的 NTP Server。
1.1.2 憑據(jù)
憑據(jù)為 KubeOperator 連接主機(jī)資產(chǎn)的憑證睡互。在左側(cè)導(dǎo)航菜單中選擇【系統(tǒng)設(shè)置】根竿,進(jìn)入【系統(tǒng)設(shè)置】頁后點(diǎn)擊【憑據(jù)】TAB 可以看到已添加憑據(jù)信息。
點(diǎn)擊【添加】按鈕添加 password 方式的憑據(jù)就珠。
憑據(jù)也可以使用密鑰方式登錄主機(jī)寇壳。單擊【添加】按鈕,選擇 privatekey 方式登錄目標(biāo)主機(jī)妻怎,輸入憑據(jù)名稱和 root 賬號(hào)壳炎,然后將 id_rsa 私鑰內(nèi)容復(fù)制到密鑰框里,確認(rèn)蹂季。
注:密鑰方法連接主機(jī)舉例說明:在 KubeOperator 主機(jī)中首先生成 id_rsa 和 id_rsa.pub 密鑰對(duì)冕广,將 id_rsa.pub 公鑰里面內(nèi)容添加要連接的目標(biāo)主機(jī) authorized_keys 文件中疏日,authorized_keys 文件權(quán)限需要設(shè)置為 600 偿洁。然后在 KubeOperator 控制臺(tái)的【憑據(jù)】頁面,將開始生成的 id_rsa 私鑰文件內(nèi)容復(fù)制到憑據(jù)的密鑰框中沟优。注意這里的賬號(hào)需要 root 賬號(hào)涕滋。
1.1.3 LDAP 設(shè)置
通過使用 LDAP 統(tǒng)一認(rèn)證服務(wù)可以簡(jiǎn)化用戶管理過程。開啟 LDAP 挠阁,輸入已搭建好的 LDAP 服務(wù)信息后宾肺,LDAP 中用戶將可以在【用戶管理】頁同步到 KubeOperator 環(huán)境中溯饵。 參考配置信息如下:
1.1.4 通知設(shè)置
本節(jié)通知中可以設(shè)置選擇收到消息通知方式。獲取消息通知除了在 KubeOperator 系統(tǒng)中【消息中心】頁的的站內(nèi)信以外锨用,還支持包括郵件丰刊、企業(yè)微信和釘釘三種方式。具體設(shè)置方法參考如下截圖信息增拥。
企業(yè)微信相關(guān)參數(shù)概念請(qǐng)參考如下鏈接啄巧。
https://work.weixin.qq.com/api/doc/90000/90135/90665
釘釘相關(guān)參數(shù)概念請(qǐng)參考如下鏈接。 https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq/26eaddd5
1.2 準(zhǔn)備主機(jī)
我們將準(zhǔn)備添加四臺(tái)主機(jī) 一個(gè) master掌栅、三個(gè) worker秩仆、如果使用 NFS 持久化存儲(chǔ),還需要 NFS 存儲(chǔ)主機(jī)(例如名稱為 nfs-1)猾封,分別作為 master 節(jié)點(diǎn)澄耍、worker 節(jié)點(diǎn) 及 NFS 存儲(chǔ)。
1.2.1 添加主機(jī)
在左側(cè)導(dǎo)航菜單中選擇【主機(jī)】晌缘,進(jìn)入【主機(jī)】頁后可以看到已添加主機(jī)的詳細(xì)信息齐莲,包括 IP、CPU磷箕、內(nèi)存铅搓、操作系統(tǒng)等。 點(diǎn)擊【添加】按鈕添加主機(jī)搀捷。輸入名稱和 IP 地址星掰、指定端口號(hào)、選擇對(duì)應(yīng)的憑據(jù)嫩舟,最后點(diǎn)擊【提交】按鈕即可完成一臺(tái)主機(jī)的添加氢烘。同樣地,依次添加 master-1家厌,worker-1播玖,worker-2,worker-3 三臺(tái)主機(jī)饭于。
注:推薦使用全新的機(jī)器
KubeOperator部署機(jī)不能作為kubernetes集群節(jié)點(diǎn)使用蜀踏。
1.2.2 導(dǎo)入主機(jī)
還可以通過導(dǎo)入 Excel 格式支持一次添加超多主機(jī),Excel 格式很簡(jiǎn)單掰吕,需要包括主機(jī)名稱果覆,主機(jī) ip、端口和憑據(jù)名稱即可殖熟。在主機(jī)導(dǎo)入彈出框中可以下載 Excel 模版局待。
【主機(jī)】頁-【導(dǎo)入】-【添加】,選擇要上傳的 Excel 格式主機(jī)列表,再單擊【上傳】钳榨,上傳進(jìn)度完成后【確認(rèn)】即可完成多個(gè)主機(jī)的添加舰罚。
2 用戶管理
KubeOperator 系統(tǒng)中的【用戶管理】功能模塊可以添加用戶,包括超級(jí)管理員用戶和普通用戶薛耻。而普通用戶又可以根據(jù)【項(xiàng)目】選擇其作為項(xiàng)目管理員還是只讀用戶营罢。 實(shí)現(xiàn)不同用戶對(duì)不同項(xiàng)目的使用權(quán)限的分級(jí)管理。
2.1 Admin 用戶
用戶分為超級(jí)管理員和普通用戶饼齿,超級(jí)管理員權(quán)限和系統(tǒng)默認(rèn)賬號(hào) admin 權(quán)限完全相同愤钾。新建的超級(jí)管理員登錄系統(tǒng)后可實(shí)現(xiàn)所有 admin 權(quán)限的操作。 【用戶管理】頁候醒,可創(chuàng)建用戶能颁,單擊【添加】,添加超級(jí)管理員時(shí)倒淫,需要輸入用戶名伙菊、郵箱、密碼和開啟超級(jí)管理員按鈕敌土,提交后可在用戶列表看見該超級(jí)管理員用戶镜硕。
2.2 普通用戶
【用戶管理】頁,創(chuàng)建普通用戶返干,普通用戶初始狀態(tài)沒有任何權(quán)限兴枯。需要【項(xiàng)目】?jī)?nèi)添加成為項(xiàng)目管理員或只讀用戶。后續(xù)章節(jié)詳細(xì)介紹項(xiàng)目管理員和只讀用戶矩欠。 單擊【添加】后财剖,需要輸入用戶名、郵箱癌淮、密碼和默認(rèn)關(guān)閉【超級(jí)管理員】按鈕躺坟,提交后可在用戶列表看見該普通用戶。
admin 管理員可以刪除乳蓄、禁用和開啟所有用戶咪橙,新建超級(jí)管理員可以刪除、禁用和開啟除 admin 賬號(hào)以外的所有用戶虚倒,普通用戶無上述權(quán)限美侦。
3 項(xiàng)目管理
KubeOperator 系統(tǒng)中默認(rèn)創(chuàng)建 KubeOperator 項(xiàng)目,如果 2.3 版本及以下版本升級(jí)為 2.4 版本的集群將全部屬于 KubeOperator 項(xiàng)目魂奥。 超級(jí)管理員(admin 賬號(hào)和新建的超級(jí)管理員賬號(hào))可以創(chuàng)建多個(gè)項(xiàng)目菠剩,項(xiàng)目?jī)?nèi)可以部署多個(gè)集群,不同項(xiàng)目之間的集群除超級(jí)管理員以外賬號(hào)是不可見的捧弃。 項(xiàng)目管理員管理該項(xiàng)目的集群赠叼,通過授權(quán)資源(包括主機(jī)擦囊,存儲(chǔ)违霞,部署計(jì)劃和備份賬號(hào))給項(xiàng)目嘴办,然后可以開始創(chuàng)建集群。
3.1 創(chuàng)建項(xiàng)目
【項(xiàng)目管理】頁买鸽,點(diǎn)擊【添加】涧郊,輸入項(xiàng)目名稱和描述信息提交,創(chuàng)建項(xiàng)目完成后并不能馬上創(chuàng)建 K8s 集群眼五,需要授權(quán)集群所需的資源妆艘,后續(xù) 3.3 章節(jié)將詳細(xì)描述。
3.2 添加成員
超級(jí)管理員賬號(hào)可以分配一個(gè)或多個(gè)項(xiàng)目管理員角色給項(xiàng)目看幼,項(xiàng)目管理員可以對(duì)該項(xiàng)目創(chuàng)建批旺,安裝,升級(jí)等等管理集群的操作诵姜。 例如汽煮,在【項(xiàng)目管理】--【 qa 】項(xiàng)目--【成員】中,單擊【管理】棚唆,選擇管理員和只讀用戶暇赤,確定后在【成員】列表中列出所有項(xiàng)目中的用戶,包括用戶名和角色宵凌。 項(xiàng)目管理員僅可以給項(xiàng)目添加只讀用戶鞋囊。
3.3 資源授權(quán)
在 KubeOperator 環(huán)境中的資源需要超級(jí)管理員或項(xiàng)目管理員授權(quán)給項(xiàng)目后才可以使用,包括主機(jī)瞎惫、存儲(chǔ)溜腐、備份賬號(hào)等。 例如瓜喇,在【項(xiàng)目管理】--【 qa 】項(xiàng)目--【資源】中逗扒,授權(quán)主機(jī)、存儲(chǔ)資源欠橘。
在選擇該項(xiàng)目創(chuàng)建集群時(shí)矩肩,授權(quán)的資源在可選列表里面。所以手動(dòng)模式集群肃续,必須的資源包括主機(jī)和外部存儲(chǔ)(假如使用外部存儲(chǔ))黍檩。
4 集群部署(Day 1)
4.1 創(chuàng)建集群
4.1.1 基本信息
項(xiàng)目管理員賬號(hào)登錄 KubeOperator 系統(tǒng)后,點(diǎn)擊【集群】頁的【添加】按鈕進(jìn)行集群的創(chuàng)建始锚。在【基本信息】里首先選擇項(xiàng)目名稱(該項(xiàng)目管理員可以是多個(gè)項(xiàng)目的管理員)刽酱,然后輸入集群的名稱,選擇該集群所要部署的 Kubernetes 版本瞧捌,目前支持 K8s 最新版本為 1.16.7棵里。
注:集群名稱不要和主機(jī)名稱润文、存儲(chǔ)節(jié)點(diǎn)名稱相同。
4.1.2 部署模型
選擇 Kubernetes 集群的部署模型殿怜。KubeOperator 當(dāng)前支持一主多節(jié)點(diǎn)和多主多節(jié)點(diǎn)典蝌。選擇部署模型后,KubeOperator 將展示集群中各個(gè)角色節(jié)點(diǎn)的詳細(xì)配置要求头谜,目前支持操作系統(tǒng)包括 CentOS 7.4/7.5/7.6/7.7 和 Redhat 7.4/7.5/7.6/7.7.
KubeOperator 支持 MultiAZ(多故障域)骏掀,多主多節(jié)點(diǎn)模式適 d合在 MultiAZ 下部署,實(shí)現(xiàn)雙活環(huán)境下的高可用柱告。
4.1.3 配置節(jié)點(diǎn)
【添加主機(jī)】環(huán)節(jié)截驮,把集群所需的主機(jī)添加到了 KubeOperator 中。在【配置節(jié)點(diǎn)】環(huán)節(jié)际度,可以根據(jù)需求選擇 worker 節(jié)點(diǎn)數(shù)量葵袭,這里以一個(gè) master 和三個(gè) worker 節(jié)點(diǎn)為例。
4.1.4 選擇節(jié)點(diǎn)
在【選擇節(jié)點(diǎn)】環(huán)節(jié)乖菱,則可以根據(jù)不同的節(jié)點(diǎn)角色坡锡,在主機(jī)下拉列表中可列出該項(xiàng)目中所有被授權(quán)的主機(jī)。
4.1.5 配置網(wǎng)絡(luò)
【配置網(wǎng)絡(luò)】環(huán)節(jié)块请,選擇集群的 kube-proxy 運(yùn)行模式娜氏、 ingress 方式以及網(wǎng)絡(luò)插件,當(dāng)前 kube-proxy 運(yùn)行模式支持 iptables 和 ipvs 兩種墩新;ingress 支持 trafik 和 nginx贸弥;網(wǎng)絡(luò)插件支持 Flannel 和 Calico,這里我們分別選擇 iptables海渊、trafik绵疲、Flannel 三種方式。
如果集群節(jié)點(diǎn)全部都在同一個(gè)二層網(wǎng)絡(luò)下臣疑,請(qǐng)選擇"host-gw"盔憨。如果不是,則選擇"vxlan"讯沈。"host-gw" 性能優(yōu)于 "vxlan"郁岩。選項(xiàng) Service CIDR 和 POD CIDR 保證不和已有主機(jī)節(jié)點(diǎn) IP 段沖突即可使用。
4.1.6 配置存儲(chǔ)
【添加存儲(chǔ)】環(huán)節(jié)缺狠,支持多種存儲(chǔ)方案问慎,包括 NFS 存儲(chǔ),新增加 Rook Ceph 存儲(chǔ)方案挤茄,還有本地存儲(chǔ)卷方式存儲(chǔ)如叼。
如果選擇使用 Rook Ceph 存儲(chǔ)時(shí),需要設(shè)置存儲(chǔ)介質(zhì)和存儲(chǔ)路徑穷劈,存儲(chǔ)介質(zhì)使用推薦測(cè)試環(huán)境使用的配置笼恰,Path 使用推薦路徑 /data/ceph踊沸,當(dāng)然可以根據(jù)實(shí)際環(huán)境修改配置。 如何登錄 Ceph 控制臺(tái)查看存儲(chǔ)監(jiān)控信息社证,請(qǐng)參考第 5.1.2.1 節(jié)詳細(xì)內(nèi)容逼龟。
如果選擇 NFS 存儲(chǔ), NFS 主機(jī)的節(jié)點(diǎn)已經(jīng)在 1.3 節(jié)添加到【存儲(chǔ)】頁面猴仑,選擇外部持久化存儲(chǔ)并授權(quán)給項(xiàng)目后审轮,在下來菜單中會(huì)列出該節(jié)點(diǎn)肥哎。
本次創(chuàng)建的集群選擇 NFS 存儲(chǔ)方案辽俗,繼續(xù)后續(xù)步驟。
4.1.7 配置檢測(cè)
完成上述 6 個(gè)步驟后篡诽,KubeOperator 會(huì)對(duì)當(dāng)前集群所選擇的部署節(jié)點(diǎn)進(jìn)行配置檢測(cè)崖飘,包含 CPU、內(nèi)存和操作系統(tǒng)的檢測(cè),檢查是否滿足節(jié)點(diǎn)最低配置要求杈女。
4.1.8 其他設(shè)置
在【其他設(shè)置】中客冈,我們?cè)黾恿私ㄗh的可運(yùn)行 POD 數(shù)量遮怜、Docker 數(shù)據(jù)目錄、Docker0 默認(rèn)網(wǎng)關(guān)設(shè)置、Prometheus 監(jiān)控?cái)?shù)據(jù)保留時(shí)長(zhǎng)設(shè)置信息馍忽,用戶可根據(jù)實(shí)際環(huán)境修改以上參數(shù)。
4.1.9 集群配置概覽
所有步驟完成后迁客,會(huì)有一個(gè)集群配置概覽頁對(duì)之前步驟所設(shè)參數(shù)進(jìn)行匯總交播,用戶可在此頁進(jìn)行集群配置的最后檢查。
4.2 部署集群
在集群列表中點(diǎn)擊要進(jìn)行部署的集群名稱蝇裤,默認(rèn)展示的是該集群的【概覽】信息廷支。【概覽】頁中展示了 Kubernetes 集群的諸多詳情栓辜,包括集群容量信息恋拍、統(tǒng)計(jì)信息、集群狀態(tài)藕甩、Worker 狀態(tài)施敢,集群描述信息等。點(diǎn)擊【概覽】頁上方的【安裝】按鈕進(jìn)行 Kubernetes 集群的部署狭莱。
集群部署開始后僵娃,將會(huì)自動(dòng)跳轉(zhuǎn)到【任務(wù)】頁。在【任務(wù)】頁里可以看到集群部署當(dāng)前所執(zhí)行的具體任務(wù)信息贩毕。
如果是內(nèi)網(wǎng)環(huán)境的話悯许,一個(gè)典型的 3 節(jié)點(diǎn)集群的部署大概需要 10 分鐘左右的時(shí)間。在出現(xiàn)類似下圖的信息后辉阶,表明集群已部署成功:
注:集群默認(rèn)不再安裝 KubeApps Plus 應(yīng)用商店先壕,集群安裝完成后瘩扼,在該集群的概覽頁通過單擊 “應(yīng)用商店” 安裝部署 KubeApps Plus。
4.3 服務(wù)暴露
4.3.1 添加 F5 BIG-IP
在集群列表中點(diǎn)擊集群名稱垃僚,添加 F5 暴露服務(wù)集绰,點(diǎn)擊【F5 BIG-IP】添加 F5 BIG-IP,為 Kubernetes 配置 F5-BIGIP-CONTROLLER 后谆棺,我們可以通過 F5 BIGIP 設(shè)備向外網(wǎng)暴露服務(wù)栽燕。
4.3.2 更新 ApiServer 證書
通過自動(dòng)更新配置 ApiServer 證書的功能,可以方便用戶使用其他負(fù)載均衡設(shè)備對(duì) Kubernetes 集群的 Master 節(jié)點(diǎn)配置高可用改淑。默認(rèn)情況下碍岔,使用 KubeOperator 創(chuàng)建的多 Master 節(jié)點(diǎn)的 Kubernetes 集群時(shí),是通過 Haproxy 負(fù)載多個(gè) Master 節(jié)點(diǎn)來提高可用性的朵夏。當(dāng)然蔼啦,真實(shí)環(huán)境中有成熟的、商業(yè)的負(fù)載均衡設(shè)備或者更好的解決方案時(shí) 仰猖,可以使用外部的負(fù)載均衡設(shè)備來做高可用捏肢。配置過程中如果需要使用 HTTP/HTTPS 做七層負(fù)載,就需要 ApiServer 的證書文件饥侵。在 ApiServer 設(shè)置欄目鸵赫,填寫 VIP 地址(即負(fù)載均衡器的 IP),如下圖所示躏升,就可以自動(dòng)為負(fù)載均衡器配置 ApiServer 的證書辩棒。證書文件將存放到 Master 節(jié)點(diǎn)的 /etc/kubernetes/ssl 目錄。
4.4 CIS 安全掃描
KubeOperator 結(jié)合 kube-bench 實(shí)現(xiàn)了 CIS 安全掃描功能煮甥,通過 CIS 安全掃描功能盗温,可以幫助集群管理員檢查 Kubernetes 是否已安全部署。kube-bench 盡可能緊密地實(shí)現(xiàn) CIS Kubernetes 基準(zhǔn)成肘,CIS Kubernetes 基準(zhǔn)的詳細(xì)信息可以通過下方鏈接查看:
https://www.cisecurity.org/benchmark/kubernetes/
5 集群運(yùn)營(yíng)(Day 2)
5.1 集群管理
超級(jí)管理員登錄 KubeOperator 系統(tǒng)卖局,在集群的【概覽】頁提供了 Grafana、Registry-console双霍、應(yīng)用商店三個(gè)管理系統(tǒng)快捷訪問方式砚偶。其他應(yīng)用可以通過 KubeApps Plus 應(yīng)用商店自選安裝。這三個(gè)系統(tǒng)的訪問域名需要在 DNS 服務(wù)器中添加相應(yīng)的域名記錄洒闸。如沒有使用 F5 BIG-IP 暴露服務(wù)染坯,也可以通過修改本地主機(jī)的 hosts 文件來達(dá)到相同的作用。如果創(chuàng)建集群時(shí)選擇 Rook Ceph 存儲(chǔ)方案丘逸,訪問 Ceph 控制臺(tái)前也需要添加該域名解析規(guī)則单鹿。
eg:
# 編輯 /etc/hosts
testerdeMacBook-Pro:~ tester$sudo vim /etc/hosts
# 替換 WORKER_IP 為任意 worker 節(jié)點(diǎn) IP 地址
WORKER_IP grafana.apps.mycluster.fit2cloud.com
WORKER_IP prometheus.apps.mycluster.fit2cloud.com
WORKER_IP registry-ui.apps.mycluster.fit2cloud.com
WORKER_IP kubeapps-plus.apps.mycluster.fit2cloud.com
以上文本也可以直接單擊【域名解析】復(fù)制域名解析規(guī)則。
5.1.1 Dashboard
5.1.1.1 KubeOperator Dashboard
KubeOperator 中【概覽】頁深纲,該頁面集中顯示了集群相關(guān)的統(tǒng)計(jì)信息仲锄,包括集群狀態(tài)劲妙,容量信息,Nodes 數(shù)量儒喊、Namespaces 數(shù)量镣奋、Pods 數(shù)量等,還包括異常日志怀愧,異常 Pod 的信息統(tǒng)計(jì)侨颈。
5.1.1.2 K8s Dashboard
K8s Dashboard 對(duì)應(yīng)的是 Kubernetes 的控制臺(tái),使用 KubeOperator 2.5 版本以上用戶可以在 Kubeapp Plus 應(yīng)用商店中自選安裝該應(yīng)用芯义。安裝部署成功后哈垢,訪問 K8s Dashboard Web UI 的方式是以 NodePort 方式。還包括 Argo CD 和 Harbor 應(yīng)用也是 以 NodePort 方式訪問毕贼。安裝部署過程詳情請(qǐng)參考 KubeApps Plus 應(yīng)用商店使用指南部分內(nèi)容温赔。
從瀏覽器中訪問 Kubernetes 控制臺(tái)需要用到【令牌】蛤奢。點(diǎn)擊【概覽】頁上方的【TOKEN】按鈕獲取令牌信息鬼癣,將令牌信息復(fù)制到粘貼板。
輸入令牌信息后啤贩,點(diǎn)擊【登錄】待秃,則可進(jìn)入 Kubernetes 控制臺(tái)。
5.1.2 集群監(jiān)控
5.1.2.1 訪問 Ceph 控制臺(tái)
KubeOperator 支持云原生存儲(chǔ)解決方案 Rook Ceph痹屹,當(dāng)創(chuàng)建手動(dòng)模式集群章郁,存儲(chǔ)方案選擇 Rook Ceph 時(shí) ,在集群【概覽】頁志衍,描述信息存儲(chǔ)類型中可以通過 Rook Ceph 圖標(biāo)鏈接跳轉(zhuǎn)至 Ceph 控制臺(tái)暖庄。
Ceph 控制臺(tái)用戶名是 admin,密碼需要通過執(zhí)行命令方式獲取楼肪。獲取方式如下:
#此命令可以在集群概覽頁下面的 WebKubectl 中或者在集群中任意節(jié)點(diǎn)中執(zhí)行培廓。
$ kubectl -n rook-ceph get secret rook-ceph-dashboard-password -o jsonpath="{['data']['password']}" | base64 --decode && echo
登錄 Ceph 控制臺(tái)后,可以看到集群存儲(chǔ)的監(jiān)控信息春叫。
5.1.2.2 集群事件
KubeOperator 支持獲取 K8s 事件肩钠,實(shí)時(shí)更新在 KubeOperator 集群事件頁面,包括正常和異常事件暂殖,可搜索過去一天/周/月的 Normal 和 Warning 事件价匠,同時(shí)支持關(guān)鍵字搜索事件。事件內(nèi)容和 K8s Dashboard 的 Event 一致呛每,通過 KubeOperator 控制臺(tái)能夠更加直觀快速的看到集群的狀態(tài)信息踩窖。
在集群【事件】頁,單擊信息列的事件晨横,可以獲取事件詳情信息洋腮。
5.1.2.3 訪問 Grafana
Grafana 對(duì) Prometheus 采集到的監(jiān)控?cái)?shù)據(jù)進(jìn)行了不同維度的圖形化展示廉沮,更方便用戶了解整個(gè) Kubernetes 集群的運(yùn)行狀況。集群概覽頁單擊【監(jiān)控/日志】按鈕訪問 Grafana 控制臺(tái)徐矩。
集群級(jí)別的監(jiān)控面板:
節(jié)點(diǎn)級(jí)別的監(jiān)控面板:
5.1.2.4 訪問 Weave Scope
Weave Scope 用來監(jiān)控滞时、可視化和管理 Kubernetes 集群。使用 KubeOperator 2.5 版本以上用戶可以在 Kubeapp Plus 應(yīng)用商店中自選安裝該應(yīng)用滤灯。安裝部署該應(yīng)用請(qǐng)參考 KubeApps Plus 應(yīng)用商店使用指南部分坪稽。 點(diǎn)擊控制臺(tái)的頂部【Pod】,會(huì)自動(dòng)生成容器之間的關(guān)系圖鳞骤,方便理解容器之間的關(guān)系窒百,也方便監(jiān)控容器化和微服務(wù)化的應(yīng)用。Weave Scope 默認(rèn)的用戶名是 admin豫尽,密碼是 admin123篙梢。
點(diǎn)擊頂部的【Host】,可以遠(yuǎn)程shell登錄各個(gè)節(jié)點(diǎn)美旧,還可以看到主機(jī)的詳細(xì)信息渤滞。
5.1.2.5 組件狀態(tài)
在 K8s 集群【組件狀態(tài)】欄,可以看到整體的集群狀態(tài)榴嗅,具體包括核心組件 Control Manager妄呕,Schedule,etcd 狀態(tài)和系統(tǒng)組件實(shí)時(shí)健康狀態(tài)嗽测。
5.1.3 集群日志
KubeOperator 系統(tǒng)新增加支持獲取 KubeOperator 系統(tǒng)日志和 K8s 集群日志功能绪励。
5.1.3.1 系統(tǒng)日志
【系統(tǒng)日志】頁支持查找 KubeOperator 系統(tǒng)相關(guān)的日志信息, 日志類型包括 info唠粥、debug 和 error 日志疏魏,還可以用關(guān)鍵字搜索日志等等日志信息。
5.1.3.2 集群日志
K8s 集群日志使用 Grafana 日志聚合工具 Loki晤愧。Loki 是Grafana Labs 團(tuán)隊(duì)的開源項(xiàng)目大莫,它的設(shè)計(jì)非常經(jīng)濟(jì)高效且易于操作,特別適合存儲(chǔ) Kubernetes Pod 日志养涮。
通過訪問 Grafana 控制臺(tái)看到 Loki 日志葵硕。
5.1.4 集群管理
5.1.4.1 訪問 Registry
Registry 則用來存放 Kubernetes 集群所使用到的 Docker 鏡像。Registry 默認(rèn)的用戶名是 admin贯吓,密碼是 admin123懈凹。
5.1.4.2 Webkubectl
KubeOperator 支持 Webkubectl 。在集群【概覽】頁單擊 WEBKUBECTL 悄谐,在彈出框中可以像在集群中節(jié)點(diǎn)執(zhí)行命令介评,查詢集群信息等操作。
5.2 集群升級(jí)
KubeOperator 支持 K8s 升級(jí)。目前支持 K8s 1.16.9 以下版本们陆。請(qǐng)注意由于 1.15 和 1.16 版本之后變化較大寒瓦,目前不支持升級(jí)從 1.15 升級(jí)到 1.16 版本。
在集群列表中點(diǎn)擊要進(jìn)行升級(jí)的集群名稱坪仇,點(diǎn)擊【概覽】頁最上方的【升級(jí)】按鈕進(jìn)行 Kubernetes 集群的升級(jí)杂腰。
單擊【確認(rèn)】后,系統(tǒng)自動(dòng)跳轉(zhuǎn)到【任務(wù)】頁椅文,可以看到升級(jí)進(jìn)度和詳細(xì) log 信息喂很。
升級(jí)完成后,可以看到如下信息皆刺。
同時(shí)在集群【歷史】頁少辣,可以通過單擊【詳情】按鈕查看升級(jí)的所有 log 信息。
5.3 集群伸縮
KubeOperator 支持?jǐn)U縮容 K8s 集群 worker 節(jié)點(diǎn)數(shù)量羡蛾。
KubeOperator 控制臺(tái)【集群】頁漓帅,單擊一個(gè)要擴(kuò)容的集群名稱,即【概覽】頁面痴怨,Worker 狀態(tài)欄右下方單擊【擴(kuò)容】忙干,在彈出框中選中要擴(kuò)容的節(jié)點(diǎn),支持同時(shí)擴(kuò)容多個(gè)節(jié)點(diǎn)腿箩。
確認(rèn)后豪直,會(huì)自動(dòng)轉(zhuǎn)到【任務(wù)】頁面,實(shí)時(shí)查看擴(kuò)容進(jìn)度珠移,完成后可以看到如下圖所示信息。
5.4 集群備份
KubeOperator 目前的備份功能支持三種不同種類的存儲(chǔ)末融,即 AWS S3钧惧、aliyun oss 和 Azure 存儲(chǔ)。為集群備份和恢復(fù)提供存儲(chǔ)支持勾习,實(shí)現(xiàn)備份和恢復(fù)功能浓瞪。
添加備份賬號(hào)之前,請(qǐng)首先自行準(zhǔn)備好 AWS S3 巧婶,aliyun oss 或者 Azure 存儲(chǔ)賬號(hào)信息乾颁,包括 AccessKey,SecretKey艺栈,endpoint 和桶/容器信息英岭。 以添加 S3 為例,在【系統(tǒng)設(shè)置】的【備份】Tab 也中輸入名稱和 AccessKey湿右,SecretKey 和端點(diǎn)(對(duì)應(yīng) AWS S3 系統(tǒng)里的 endpoint)诅妹,單擊【獲取桶/容器】獲取桶名稱,建議在 S3 新建一個(gè)桶單獨(dú)使用,最后提交吭狡。
在集群【備份】頁面尖殃,可以看到,KubeOperator 支持的自動(dòng)備份策略和手動(dòng)備份划煮,自動(dòng)備份包括備份間隔送丰,復(fù)本保留份數(shù)以及可以開啟戶禁用備份策略,實(shí)現(xiàn)集群備份和恢復(fù)功能弛秋。
手動(dòng)備份需要先設(shè)置備份策略信息蚪战,包括備份間隔、保留份數(shù)铐懊、選擇存儲(chǔ)設(shè)備以及開啟備份邀桑,然后單擊【立即備份】后,可以在【任務(wù)】頁看到備份進(jìn)度科乎。