1. 程式人生 > >使用kubebapps 管理helm 倉庫已經應用使用Monocular專門提供helm 倉庫查詢

使用kubebapps 管理helm 倉庫已經應用使用Monocular專門提供helm 倉庫查詢

Monocular 從1.0 開始專注於helm 的UI展示,對於部署以及維護已經去掉了,官方也提供了相關的說明以及
推薦了幾個可選的部署工具,從使用以及架構上來說kubeapps 就是Monocular + helm 操作的集合,比Monocular
早期版本有好多提升

  • 倉庫的同步&&部署已經分離了,具有更好的維護性
  • 充分利用了mongo的特性,charts的資訊儲存在mongo中
  • 部署提供了一個tiller-proxy的元件,使用上更加安全
  • 倉庫的同步充分利用了k8s 的cronjob
  • 充分利用了rbac,提供部署的安全性
  • 管理介面支援upgrade了,這個很方便,早期的Monocular 是沒有的
  • 部署的時候我們可以直接修改配置了,更加自由便捷

部署

我使用了harbor 進行helm charts 管理,下載helm 包push 私服,方便管理(還有牆的問題)

  • 下載charts
helm repo add bitnami https://charts.bitnami.com/bitnami
helm fetch bitnami/kubeapps
  • 進行簡單修改
為了方便支援ingress 訪問,可以部署的時候指定變數資訊進行修改

  • push harbor 私服
helm push --username=username --password=password kubbeapps jira
  • 部署
helm install jira/kubeapps

部署其他應用&&試用

  • 登陸介面

    需要一個api token ,可以建立,或者直接試用dashboard 的api token,一般大家都有部署dashboard

  • 管理介面
  • 部署資訊
  • repo 新增介面
  • 選擇catalog 部署

說明

使用kubeapps 集合harbor 進行helm 倉庫的管理,從安全上、易用性上、可管理性上,都是不錯的選擇,可以快速的提高應用的
釋出以及部署
kubeapps 的幾個元件

  • chartsvc
    提供api
  • chart-repo
    repo 管理,包含同步,以及元資料資訊寫入資料庫
  • tiller-proxy
    和tiller 進行通訊,實現部署以及更新
  • dashboard
    UI 呼叫後端api實現視覺化操作

參考資料

https://github.com/helm/monocular
https://github.com/kubeapps/kubeapps