一、簡介
Kubernetes 容器編排已越來越被大家關注,然而使用 Kubernetes 的門檻卻依然很高,主要體現在這幾個方面:
-
集群的安裝復雜,出錯概率大
-
Kubernetes相較於容器化,引入了許多新的概念,學習難度高
-
需要手工編寫 YAML 文件,難以在多環境下管理
-
缺少好的實戰案例可以參考
Kuboard,是一款免費的 Kubernetes 圖形化管理工具,Kuboard 力圖幫助用戶快速在 Kubernetes 上落地微服務。
二、安裝Kuboard
環境說明
操作系統 | ip | 主機名 | 配置 | 備注 |
centos 7.6 | 192.168.31.150 | k8s-master | 2核4G | Kubernetes1.16.3 |
centos 7.6 | 192.168.31.183 | k8s-node01 | 2核8G | Kubernetes1.16.3 |
安裝
如果您參考 https://kuboard.cn 網站上提供的 Kubernetes 安裝文檔,可在 master 節點上執行以下命令。
kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml
查看 Kuboard 運行狀態:
# kubectl get pods -l k8s.eip.work/name=kuboard -n kube-system NAME READY STATUS RESTARTS AGE kuboard-756d46c4d4-qh6cm 1/1 Running 0 101m
確保kuboard 處於 Running 狀態
獲取Token
您可以獲得管理員用戶、只讀用戶的Token。
Kuboard 有計划開發權限設置的功能,在這之前,如果您需要更細粒度的權限控制,請參考 RBAC Example
管理員用戶
此Token擁有 ClusterAdmin 的權限,可以執行所有操作
# kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d
訪問Kuboard
您可以通過NodePort、port-forward 兩種方式當中的任意一種訪問 Kuboard
通過NodePort訪問
Kuboard Service 使用了 NodePort 的方式暴露服務,NodePort 為 32567;您可以按如下方式訪問 Kuboard。
http://任意一個Worker節點的IP地址:32567/
輸入前一步驟中獲得的 token,可進入 Kuboard 集群概覽頁
http://192.168.31.150:32567/
登錄之后,效果如下:
三、部署應用
flaskapp
以flaskapp為列子,用它來展示如何將一個 docker image 通過 Kuboard 部署到 kubernetes 集群中。
點擊default命名空間
創建工作負載
填寫表單如下:
字段名稱 | 填寫內容 | 說明 |
服務類型 | Deployment | Kubernetes 的 Deployment 類型 |
服務分層 | 中間件 | 生成的Kuberenetes對象以 cloud- 作為前綴, |
服務名稱 | flaskapp | 顯示在 Kuboard 中的名稱 |
副本數量 | 1 | replicas |
容器名稱 | flaskapp | |
鏡像 | jcdemo/flaskapp |
點擊保存,應用一下
點擊sh
執行指令 ifconfig
訪問flaskapp頁面
效果如下:
本文參考鏈接: