Kubernetes Helm
類似於 centos yum , ubuntu apt 安裝包的概念
類似於 centos yum , ubuntu apt 安裝包的概念
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
常用指令命令
- helm repo 列出、增加、更新、刪除chart倉庫
- helm search 使用關鍵詞搜索chart
helm search {command} {搜尋詞}
command 分兩類
- hub
- repo 基於本地倉庫搜索
https://artifacthub.io/ # 查詢套件倉庫
常用源
helm repo add bitnami https://charts.bitnami.com/bitnami
# 若在透過 helm search repo {套件名} 顯示DEPRECATED時 則表示過期,需考慮是否使用
- helm show {command} 顯示套件安裝內容
- helm pull 拉取遠程倉庫中的chart到本地
- helm create 在本地創建新的chart
- helm dependency 管理chart依賴
- helm install 安裝chart
- helm list 列出所有release
有些安裝在 非預設命名空間 可以透過 helm list -n {命名空間}
- helm lint 檢查chart配置是否有誤
- helm package 打包本地chart
- helm rollback 回滾release到歷史版本
- helm uninstall 卸載release
- helm upgrade 升級release
安裝redis 範例
# 拉取 redis 並解壓
helm pull bitnami/redis
tar zxvf redisxxxx
# 修改解壓後的redis/values.yaml
storageClass {nfs}
password {pwd}
architecture # 集群架構 可選 standalone 單機 , replication 主(預設為3節點)
persistence # 可修改集群大小
# 創建namespace
kubectl create namespace redis
# 運行安裝
helm install redis ./redis -n redis
# 查詢安裝列表 可帶參數 -A
helm list
# 查看安裝情況
kubectl get all -n redis
升級/回滾/刪除redis
# 升級更新
helm upgrade redis ./redis -n redis # -n 帶入redis ns 若無是使用預設則不用帶
# 查詢
helm history redis -n redis # 若有設定命名空間則需要帶入
# 回滾
helm rollback redis -n redis # 自動回滾到上一版
helm rollback redis -n redis 3 # 指定回滾要哪一個版本
# 刪除 pvc備份都還會留著 kubectl get pvc -n redis
helm delete redis -n redis
kubectl delete pvc {pvc名稱} -n redis # 若不需要備份 帶入