kubeapps -kubernetes 應用儀表盤


1.介紹
什么是kubeapps?
Kubeapps是Bitnami公司的一個項目,其目的是為Kubernetes的使用者們提供已經打包好的應用儀表盤,它擁有網頁界面可以更方便的部署和管理k8s 原生應用。

kubeapps功能說明:
應用儀表盤-包含絕大多數的雲原生應用
file
管理應用-部署,刪除,升級以及修改配置
file
服務目錄-(Service Catalog)是一種擴展 API,它能讓 Kubernetes 集群中運行的應用易於使用外部托管的的軟件服務,例如雲供應商提供的數據倉庫服務。
file

2.安裝kubeapps
下面我演示下如何安裝kubeapps並使用kubeapps來部署kubernetes 應用。
2.1 安裝Helm
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
file
file

2.2 helm3添加Bitnami Repository
使用Helm chart來安裝最新版本的Kubeapps:
helm repo add bitnami https://charts.bitnami.com/bitnami
2.3 安裝Kubeapps
如果你使用 Helm 3, 你需要設置另外的參數,詳細命令如下:
kubectl create namespace kubeapps
helm install --name kubeapps --namespace kubeapps bitnami/kubeapps(該命令僅支持helm2)
helm install kubeapps --namespace kubeapps bitnami/kubeapps --set useHelm3=true
file

2.4 創建 Kubernetes API token
訪問kubeapps的web界面需要Kubernetes API token 來驗證Kubernetes API server.
kubectl create serviceaccount kubeapps-operator
kubectl create clusterrolebinding kubeapps-operator --clusterrole=cluster-admin --serviceaccount=default:kubeapps-operator
注意:生產環境不建議創建cluster-admin 用戶. 請參考Access Control 文檔來給生產環境配置合適的用戶.
2.5 獲取Token
Linux/macOS 系統可以使用如下命令來獲取Token:
kubectl get secret $(kubectl get serviceaccount kubeapps-operator -o jsonpath='{range .secrets[*]}{.name}{"\n"}{end}' | grep kubeapps-operator-token) -o jsonpath='{.data.token}' -o go-template='{{.data.token | base64decode}}' && echo

2.6 修改訪問模式並訪問kubeapps
編輯kubeapps服務svc 將連接類型改為NodePort
kubectl edit svc kubeapps -n kubeapps
file
看下服務所用端口;
file

然后打開瀏覽器輸入node的ip加上32024端口則可以訪問kubeapps;輸入獲取的Token就可以直接登錄進去。
file
登錄kubeapps之后在catalog之中可以發現有好多已經打包的原生應用可以一建部署。

  1. 演示安裝應用
    訪問kubeapps 主頁並導航到應用目錄。
    file

譬如選擇grafana,有bitnami以及官方stable的包;
file
這里我選擇bitnami的應用包,進去之后點擊Deploy
file
確認配置之后直接點擊Submit
file
應用就部署完了。

使用kubectl edit svc crazy-jail-grafana -n kubeapps 來修改外網訪問類型為NodePort
file

修改完成后,使用命令kubectl get svc -n kubeapps 查看grafana 服務的外部訪問端口。
file
瀏覽器訪問node的ip加30647端口。
file
Grafana就部署好了。
我后面又測試了prometheus,wordpress等應用。發現除了pv需要手動創建,其他配置都是自動化部署。相對於傳統部署方式,省下了很多配置應用的時間;絕對是原生應用提高生產效率的一把好手。

  1. 官方參考資料:
    官方網站
    https://kubeapps.com/

Github
https://github.com/kubeapps/kubeapps

本文由博客群發一文多發等運營工具平台 OpenWrite 發布


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM