09 使用 Helm 部署應(yīng)用

Helm 介紹和安裝

Helm 是 kubernetes 的包管理工具,用 yaml 管理多個(gè)應(yīng)用同時(shí)部署,實(shí)現(xiàn)了部署的版本管理,應(yīng)用和配置分離。

安裝

在 master 節(jié)點(diǎn)

  1. 下載:wget https://get.helm.sh/helm-v3.4.1-linux-amd64.tar.gz -O helm-v3.4.1-linux-amd64.tar.gz

  2. 解壓:tar -zxvf helm-v3.4.1-linux-amd64.tar.gz

  3. 移動(dòng):mv linux-amd64/helm /usr/local/bin/helm

部署一個(gè) Helm Chart

創(chuàng)建一個(gè) Helm Chart

helm create nginx
cd nginx
ls
charts  Chart.yaml  templates  values.yaml

打包一個(gè) Helm Chart

[root@master ~]# helm package nginx
Successfully packaged chart and saved it to: /root/nginx-0.1.0.tgz

部署 Chart

helm install nginx nginx-0.1.0.tgz

查看

[root@master ~]# kubectl get po
NAME                     READY   STATUS    RESTARTS   AGE
mysql-0                  1/1     Running   3          5d6h
nginx-764c6bcc78-622t9   0/1     Pending   0          37s
[root@master ~]# helm ls
NAME    NAMESPACE   REVISION    UPDATED                                 STATUS      CHART       APP VERSION
nginx   default     1           2021-04-07 20:18:25.373773344 +0800 CST deployed    nginx-0.1.0 1.16.0

刪除

helm delete nginx

查看

[root@master ~]# helm ls
NAME    NAMESPACE   REVISION    UPDATED STATUS  CHART   APP VERSION
[root@master ~]# kubectl get po
NAME      READY   STATUS    RESTARTS   AGE
mysql-0   1/1     Running   3          5d6h

創(chuàng)建私有 Helm 倉庫

在 jcr 中創(chuàng)建倉庫

  • helm-test-local
  • helm-prod-local

把創(chuàng)建的倉庫检盼,添加到虛擬倉庫

配置 helm 倉庫

helm repo add helm http://192.168.190.131:8081/artifactory/helm --username admin --password AP3rr97FJeUgXodLsZLyFfLLK9C

創(chuàng)建博客應(yīng)用的 Helm Chart

  1. helm package kubeblog

  2. helm install kubeblog kubeblog-0.1.2.tgz

    返回

    NAME: kubeblog
    LAST DEPLOYED: Wed Apr  7 22:51:26 2021
    NAMESPACE: default
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    
  3. kubectl get all

    可以看到

    NAME                            READY   STATUS    RESTARTS   AGE
    pod/kubeblog-6865d55c9c-k28qn   1/1     Running   3          116s
    pod/kubeblog-6865d55c9c-rmzwf   1/1     Running   0          114s
    pod/kubeblog-6865d55c9c-t7cwh   1/1     Running   0          113s
    pod/mysql-0                     1/1     Running   0          116s
    
    NAME                 TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)          AGE
    service/kubeblog     NodePort    10.1.160.36   <none>        5000:30002/TCP   3m20s
    service/kubernetes   ClusterIP   10.1.0.1      <none>        443/TCP          21d
    service/mysql57      NodePort    10.1.96.158   <none>        3306:30306/TCP   3m20s
    
    NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
    deployment.apps/kubeblog   3/3     3            3           3m18s
    
    NAME                                  DESIRED   CURRENT   READY   AGE
    replicaset.apps/kubeblog-6865d55c9c   3         3         3       117s
    
    NAME                     READY   AGE
    statefulset.apps/mysql   1/1     3m4s
    
  4. 瀏覽器訪問:http://192.168.190.132:30002/

Helm Chart 上傳到 JCR

上傳

curl -uadmin:AP3rr97FJeUgXodLsZLyFfLLK9C -T kubeblog-0.1.2.tgz "http://192.168.190.131:8081/artifactory/helm/kubeblog-0.1.2.tgz"

從 jcr 部署 chart

helm repo update
helm install kubeblog helm/kubeblog

稍等一會(huì),查看

kubectl get po

可以看到

NAME                        READY   STATUS    RESTARTS   AGE
kubeblog-6865d55c9c-2gnlb   1/1     Running   0          55s
kubeblog-6865d55c9c-8wm82   1/1     Running   0          105s
kubeblog-6865d55c9c-s4tvl   1/1     Running   0          59s
mysql-0                     1/1     Running   0          105s

Helm 升級翘单,回滾

上傳新版本

curl -uadmin:password123 -T kubeblog-0.1.3.tgz "http://192.168.190.131:8081/artifactory/helm/kubeblog-0.1.3.tgz"

查找新版本 chart

helm repo update

部署新版本 chart

helm upgrade kubeblog helm/kubeblog --version 0.1.3

后滾到上一版本

helm rollback kubeblog 1

在多環(huán)境中部署 Helm Chart

創(chuàng)建命名空間:kubectl create ns test

部署到測試環(huán)境吨枉,通過 -f 參數(shù)指定 yaml 文件,通過 -n 參數(shù)指定命名空間

helm install kubeblog kubeblog-0.1.2.tgz -f kubeblog/values-test.yaml -n test

瀏覽器訪問:http://192.168.190.132:30003/

如果需要強(qiáng)制刪除 pod哄芜,使用:

kubectl delete pod <name> --grace-period=0 --force -n <namespace>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末貌亭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子认臊,更是在濱河造成了極大的恐慌圃庭,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件失晴,死亡現(xiàn)場離奇詭異剧腻,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)涂屁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門书在,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人拆又,你說我怎么就攤上這事儒旬。” “怎么了帖族?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵栈源,是天一觀的道長。 經(jīng)常有香客問我竖般,道長凉翻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任捻激,我火速辦了婚禮,結(jié)果婚禮上前计,老公的妹妹穿的比我還像新娘胞谭。我一直安慰自己,他們只是感情好男杈,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布丈屹。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪旺垒。 梳的紋絲不亂的頭發(fā)上彩库,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機(jī)與錄音先蒋,去河邊找鬼骇钦。 笑死,一個(gè)胖子當(dāng)著我的面吹牛竞漾,可吹牛的內(nèi)容都是我干的眯搭。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼业岁,長吁一口氣:“原來是場噩夢啊……” “哼鳞仙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起笔时,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤棍好,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后允耿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體借笙,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年右犹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了提澎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡念链,死狀恐怖盼忌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情掂墓,我是刑警寧澤谦纱,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站君编,受9級特大地震影響跨嘉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜吃嘿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一祠乃、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧兑燥,春花似錦亮瓷、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蚓胸。三九已至,卻和暖如春除师,著一層夾襖步出監(jiān)牢的瞬間沛膳,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工汛聚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锹安,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓贞岭,卻偏偏與公主長得像八毯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子瞄桨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容