成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何為運行中的Kubernetes pod打補???

譯文
云計算
運行中的Kubernetes pod沒必要為了更改而拆除。使用patch選項,為pod添加新容器實際上非常容易。

【51CTO.com快譯】Kubernetes是市面上強大、靈活的容器集群管理器之一。有了這個工具,你幾乎可以做任何要做的事情。為已經部署的pod打補丁就是Kubernetes提供的這樣一項功能。

如何為運行中的Kubernetes pod打補丁?

比如說,假設你部署了一個含有Nginx容器的pod,但隨后又想把Regis和MySQL容器添加進來。你無需把一切拆除下來并重新調整配置文件,只需運行patch命令即可添加新容器。

下面介紹如何做到這一點。雖然該例子很簡單,但會演示patch選項如何與kubectl命令協同使用。

你需要什么?

完成這項工作只需要運行中的Kubernetes集群。

想搞清楚如何部署集群,請查看這篇教程:《如何在Ubuntu服務器上部署Kubernetes集群?》。一旦啟動并運行了集群,我們可以繼續下一步了。

如何部署Kubernetes服務?

我們要做的第一件事是部署Kubernetes服務。使用以下命令創建一個新目錄:

  1. mkdir ~/patch-demo 

使用以下命令進入到該新目錄:

  1. cd ~/patch-demo 

現在,為含有帶基本模板的Nginx和兩個副本的服務部署創建一個YAML文件。使用以下命令創建該文件:

  1. nano deployment-patch.yaml 

在該文件中,粘貼以下內容:

  1. apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2 
  2. kind: Deployment 
  3. metadata: 
  4.   name: patch-demo 
  5. spec: 
  6.   replicas: 2 
  7.   selector: 
  8.     matchLabels: 
  9.       app: nginx 
  10.   template: 
  11.     metadata: 
  12.       labels: 
  13.         app: nginx 
  14.     spec: 
  15.       containers: 
  16.       - name: patch-demo-ctr 
  17.         image: nginx 
  18.       tolerations: 
  19.       - effect: NoSchedule 
  20.         key: dedicated 
  21.         value: test-team 

保存并關閉文件。使用以下命令部署該配置:

  1. kubectl apply -f deployment-patch.yaml 

現在你可以通過執行以下命令看到該pod處于運行中:

  1. kubectl get pods 

該patch-demo補丁將被列為運行中(圖A)。

如何為運行中的Kubernetes pod打補?。? src=
圖A. 我們的Kubernetes patch-demo pod已啟動并在運行中

如何為運行中的服務打補丁?

現在,我們將創建一個戰略性合并補丁文件,該文件將為pod添加Redis容器。使用以下命令創建補丁文件:

  1. nano patch-file.yaml 

在該文件中,粘貼以下內容:

  1. spec: 
  2.   template: 
  3.     spec: 
  4.       containers: 
  5.       - name: patch-demo-ctr-2 
  6.         image: redis 

保存并關閉文件。

為了給運行中的服務打補丁,執行以下命令:

  1. kubectl patch deployment patch-demo --patch "$(cat patch-file.yaml)" 

該實例中發生的是,部署將終止舊pod,創建新pod。

你可以繼續這一步。比如說,假設你想把MySQL添加進來。用以下命令創建另一個補丁文件:

  1. nano patch-file-2.yaml 

在該文件中,粘貼以下內容:

  1. spec: 
  2.   template: 
  3.     spec: 
  4.       containers: 
  5.       - name: patch-demo-ctr-3 
  6.         image: mysql 

保存并關閉文件,重新運行patch命令,就像這樣:

  1. kubectl patch deployment patch-demo --patch "$(cat patch-file-2.yaml)" 

如果你執行該命令:

  1. kubectl get deployment patch-demo --output yaml 

會看到Nginx、Redis和MySQL都在pod中(圖B)。

如何為運行中的Kubernetes pod打補???

圖B. 我們的Kubernetes pod現包括所有三個映像

對于該補丁系統,你無法做到的一件事就是為pod擴增副本的數量。為此,你要使用scale命令,就像這樣:

  1. kubectl scale --replicas=4 deployment patch-demo 

或者你可以把它縮減至0來刪除pod,就像這樣:

  1. kubectl scale --replicas=0 deployment patch-demo 

這就是為運行中的Kubernetes服務打補丁的一切。雖然這篇教程很基礎,但你會發現有了patch命令,你幾乎可以做一切事情。

原文標題:How to patch a running Kubernetes pod,作者:Jack Wallen

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:未麗燕 來源: 51CTO.com
相關推薦

2011-05-17 14:34:24

2009-10-20 10:40:23

補丁遠程系統

2010-03-08 11:35:22

2016-01-05 13:27:37

2015-12-31 14:17:00

2015-01-05 14:24:12

2023-10-19 19:42:25

IstioPodkubernetes

2009-03-03 11:23:21

2022-09-22 12:11:38

PodKubernetes

2024-06-19 09:33:05

2021-06-30 09:11:17

KubernetesDevtronK8S

2010-07-29 16:44:18

系統管理員系統更新安全補丁

2020-11-30 12:15:26

KubernetesPodLinux

2021-11-22 08:00:00

Kubernetes容器集群

2021-07-14 13:30:44

KubernetesLinux文件

2019-11-20 09:15:53

KubernetesPod

2010-06-10 10:32:35

openSUSE使用教

2010-11-26 11:15:30

2010-03-15 12:13:14

網絡安全

2011-07-21 16:44:04

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美精品综合在线 | 三级成人片 | 亚洲国产欧美一区二区三区久久 | 亚洲成人在线视频播放 | 欧美色综合 | 天堂中文在线播放 | 岛国av免费观看 | 国产精品免费av | 国产精品久久久久久婷婷天堂 | 欧美日韩视频在线 | 搞av.com| 亚洲一区 中文字幕 | 久久久夜色精品亚洲 | 亚洲成人激情在线观看 | 欧美一区二区三区在线播放 | 999久久久 | 国产高清视频一区 | 日韩中出 | 久久精品国产亚洲一区二区 | 国产a区| 日韩高清成人 | 国产精品国产馆在线真实露脸 | 欧美精品在线免费观看 | 免费成人av | 国产久 | 成人在线免费观看 | 狠狠爱网址 | 成人黄色av网站 | 91最新在线视频 | 紧缚调教一区二区三区视频 | 欧美日韩国产在线 | 久久精品成人 | 国产清纯白嫩初高生视频在线观看 | 亚洲视频一区二区三区 | 91一区二区 | 视频一区二区国产 | 欧美一区二区三区视频在线观看 | 香蕉久久久| 欧美在线视频一区二区 | 国产精品99久久久久久久久久久久 | 色综合久久久久 |