最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

k8s入門(mén)實(shí)戰(zhàn)deployment使用詳解

 更新時(shí)間:2023年03月07日 10:24:22   作者:key915  
這篇文章主要為大家介紹了k8s入門(mén)實(shí)戰(zhàn)deployment使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

介紹

假設(shè)現(xiàn)在我們寫(xiě)了一個(gè)訂單服務(wù),由于訪(fǎng)問(wèn)量很高 只部署一臺(tái)肯定不夠,我希望k8s幫我啟動(dòng)好幾個(gè)pod, 我們用kubectl run可能得運(yùn)行100次,

基于deployment,你可以告訴k8s副本數(shù)量,k8s就會(huì)自動(dòng)幫你完成,其實(shí)不止是副本數(shù)量,一旦你的pod被deployment管理,deployment將會(huì)賦予它更多的能力,比如自愈,擴(kuò)縮容,滾動(dòng)更新等

自愈能力

我們使用原來(lái)的方式創(chuàng)建一個(gè)pod

kubectl run mynginx --image=nginx

使用deployment方式創(chuàng)建一個(gè)pod

kubectl create deployment mytomcat --image=tomcat:8.5.68

當(dāng)我們刪除使用kubectl run方式創(chuàng)建的pod時(shí),發(fā)現(xiàn)一刪就真的刪掉了

[root@k8s-master ~]# kubectl get pod
NAME                                      READY   STATUS    RESTARTS   AGE
mynginx                                   1/1     Running   0          112s
mytomcat-6f5f895f4f-7jqlr                 1/1     Running   0          47s
nfs-client-provisioner-6c8cdddb58-kh555   1/1     Running   8          7d
[root@k8s-master ~]#
[root@k8s-master ~]#
[root@k8s-master ~]# kubectl delete pod mynginx
pod "mynginx" deleted
[root@k8s-master ~]# kubectl get pod
NAME                                      READY   STATUS    RESTARTS   AGE
mytomcat-6f5f895f4f-7jqlr                 1/1     Running   0          2m4s
nfs-client-provisioner-6c8cdddb58-kh555   1/1     Running   8          7d

當(dāng)我們刪deployment創(chuàng)建的pod時(shí),發(fā)現(xiàn)他又會(huì)自動(dòng)幫我們創(chuàng)建一個(gè)

[root@k8s-master ~]# kubectl delete pod mytomcat-6f5f895f4f-7jqlr
pod "mytomcat-6f5f895f4f-7jqlr" deleted
[root@k8s-master ~]# kubectl get pod
NAME                                      READY   STATUS    RESTARTS   AGE
mytomcat-6f5f895f4f-s4zr7                 1/1     Running   0          15s
nfs-client-provisioner-6c8cdddb58-kh555   1/1     Running   8          7d

這個(gè)刪除可以當(dāng)成是你node節(jié)點(diǎn)宕機(jī)的情況,我們把這個(gè)稱(chēng)為k8s的自愈能力

這時(shí)候你又確實(shí)想刪除怎么辦,我們先試用下面命令查出deployment

[root@k8s-master ~]# kubectl get deploy
NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
mytomcat                 1/1     1            1           13m
nfs-client-provisioner   1/1     1            1           7d

使用刪除deployment命令

[root@k8s-master ~]# kubectl delete deploy mytomcat deployment.apps "mytomcat" deleted

這時(shí)候再查看就沒(méi)有了

[root@k8s-master ~]# kubectl get pod
NAME                                      READY   STATUS    RESTARTS   AGE
nfs-client-provisioner-6c8cdddb58-kh555   1/1     Running   8          7d

多副本

假設(shè)現(xiàn)在業(yè)務(wù)量上來(lái),我們需要同時(shí)針對(duì)一個(gè)服務(wù)部署多個(gè)實(shí)例,可以使用--replicas,比如我們使用下面3個(gè)命令創(chuàng)建3個(gè)副本

kubectl create deployment my-dep --image=nginx --replicas=3

可以看到創(chuàng)建了一個(gè)deployment,3/3指期望創(chuàng)建3個(gè),3個(gè)可用

[root@k8s-master ~]# kubectl get deploy
NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
my-dep                   3/3     3            3           2m4s
nfs-client-provisioner   1/1     1            1           7d

擴(kuò)縮容

我們可以基于k8s實(shí)現(xiàn)手動(dòng)擴(kuò)縮容和動(dòng)態(tài)擴(kuò)縮容(根據(jù)系統(tǒng)負(fù)載) 手動(dòng)擴(kuò)縮容

使用kubectl scale命令

kubectl scale --replicas=5 deployment/my-dep

查看

[root@k8s-master ~]# kubectl get deploy
NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
my-dep                   3/5     5            3           15m
nfs-client-provisioner   1/1     1            1           7d

縮容

[root@k8s-node2 ~]# kubectl scale --replicas=2 deployment/my-dep
deployment.apps/my-dep scaled

查看

[root@k8s-node2 ~]# kubectl get deploy
NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
my-dep                   2/2     2            2           17m
nfs-client-provisioner   1/1     1            1           7d

除了使用kubectl scale,還可以使用下面方式

kubectl edit deploy my-dep

這時(shí)候會(huì)以yaml格式打開(kāi),我們編輯這個(gè)replicas的值

保存后退出,這時(shí)候發(fā)現(xiàn)又變成了5份

[root@k8s-node2 ~]# kubectl get deploy
NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
my-dep                   2/5     5            2           19m
nfs-client-provisioner   1/1     1            1           7d

故障轉(zhuǎn)移

我們看到目前的pod都在這個(gè)node1節(jié)點(diǎn)

[root@k8s-master ~]# kubectl get pod -owide
NAME                                      READY   STATUS    RESTARTS   AGE    IP              NODE        NOMINATED NODE   READINESS GATES
my-dep-5b7868d854-9ljtd                   1/1     Running   0          3m5s   10.244.36.105   k8s-node1   <none>           <none>
my-dep-5b7868d854-fh5bf                   1/1     Running   0          3m5s   10.244.36.96    k8s-node1   <none>           <none>
my-dep-5b7868d854-l74rf                   1/1     Running   0          3m5s   10.244.36.106   k8s-node1   <none>           <none>
my-dep-5b7868d854-r2dpl                   1/1     Running   0          22m    10.244.36.109   k8s-node1   <none>           <none>
my-dep-5b7868d854-xsqzp                   1/1     Running   0          22m    10.244.36.120   k8s-node1   <none>           <none>
nfs-client-provisioner-6c8cdddb58-kh555   1/1     Running   8          7d     10.244.36.110   k8s-node1   <none>           <none>

我們嘗試把node1節(jié)點(diǎn)關(guān)掉,看下他是否會(huì)自動(dòng)轉(zhuǎn)移,重新拉起正常運(yùn)行呢

這時(shí)候我們需要等待一段時(shí)間,因?yàn)閚ode節(jié)點(diǎn)掛掉會(huì)有一個(gè)閾值k8s才能感知

[root@k8s-master ~]# kubectl get pod -owide
NAME                                      READY   STATUS        RESTARTS   AGE     IP               NODE        NOMINATED NODE   READINESS GATES
my-dep-5b7868d854-694hk                   1/1     Running       0          6m15s   10.244.169.191   k8s-node2   <none>           <none>
my-dep-5b7868d854-dq8h8                   1/1     Running       0          6m15s   10.244.169.190   k8s-node2   <none>           <none>
my-dep-5b7868d854-vmlrz                   1/1     Running       0          6m15s   10.244.169.151   k8s-node2   <none>           <none>
nfs-client-provisioner-6c8cdddb58-t7wmd   1/1     Running       0          22m     10.244.169.170   k8s-node2   <none>           <none>

滾動(dòng)更新

我們看下之前部署的my-dep使用了nginx最新版的鏡像

命令如下

kubectl set image deployment/my-dep nginx=nginx:1.16.1 --record
//查看滾動(dòng)狀態(tài)
kubectl rollout status deployment/my-dep

可以使用-w看到有一個(gè)逐步替換的過(guò)程,最后使用了我們指定的1.16.1版本

版本回退

加入我們發(fā)現(xiàn)我們滾動(dòng)更新的版本有問(wèn)題,就需要執(zhí)行版本回退

#歷史記錄
kubectl rollout history deployment/my-dep
#查看某個(gè)歷史詳情
kubectl rollout history deployment/my-dep --revision=2
#回滾(回到上次)
kubectl rollout undo deployment/my-dep
#回滾(回到指定版本)
kubectl rollout undo deployment/my-dep --to-revision=2

其他

除了Deployment,k8s還有 StatefulSet 、DaemonSet 、Job 等 類(lèi)型資源。我們都稱(chēng)為 工作負(fù)載。有狀態(tài)應(yīng)用使用 StatefulSet 部署,無(wú)狀態(tài)應(yīng)用使用 Deployment 部署

以上就是k8s入門(mén)實(shí)戰(zhàn)deployment使用詳解的詳細(xì)內(nèi)容,更多關(guān)于k8s deployment使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • k8s集群部署過(guò)程

    k8s集群部署過(guò)程

    本文詳細(xì)介紹了如何部署Kubernetes集群,包括安裝Docker、配置阿里云YUM軟件源、安裝kubeadm、kubelet和kubectl,以及部署Kubernetes、安裝Pod網(wǎng)絡(luò)插件和將節(jié)點(diǎn)加入集群的過(guò)程,感興趣的朋友一起看看吧
    2025-03-03
  • k8s證書(shū)有效期時(shí)間修改的方法詳解

    k8s證書(shū)有效期時(shí)間修改的方法詳解

    K8S集群有證書(shū)的概念,之前一直是使用默認(rèn)的,默認(rèn)都是1年和10年的,1年有效期這顯然對(duì)于生產(chǎn)環(huán)境是不合適的,下面這篇文章主要給大家介紹了關(guān)于k8s證書(shū)有效期時(shí)間修改的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • 詳解kubernetes pod的編排和生命周期

    詳解kubernetes pod的編排和生命周期

    這篇文章主要介紹了kubernetes pod的編排和生命周期的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用K8S,感興趣的朋友可以了解下
    2021-04-04
  • Kubernetes調(diào)度管理優(yōu)先級(jí)和搶占機(jī)制詳解

    Kubernetes調(diào)度管理優(yōu)先級(jí)和搶占機(jī)制詳解

    這篇文章主要為大家介紹了Kubernetes調(diào)度管理優(yōu)先級(jí)和搶占機(jī)制詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • k8s部署Ingress并創(chuàng)建規(guī)則的詳細(xì)介紹

    k8s部署Ingress并創(chuàng)建規(guī)則的詳細(xì)介紹

    這篇文章主要介紹了k8s部署Ingress并創(chuàng)建規(guī)則,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • k8s中如何實(shí)現(xiàn)pod自動(dòng)擴(kuò)縮容詳解

    k8s中如何實(shí)現(xiàn)pod自動(dòng)擴(kuò)縮容詳解

    在實(shí)際生產(chǎn)系統(tǒng)中,經(jīng)常會(huì)遇到某個(gè)服務(wù)需要擴(kuò)容的場(chǎng)景,可能會(huì)遇到由于資源緊張或者工作負(fù)載降低而需要減少服務(wù)實(shí)例數(shù)量的場(chǎng)景,下面這篇文章主要給大家介紹了關(guān)于k8s中如何實(shí)現(xiàn)pod自動(dòng)擴(kuò)縮容的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Containerd容器運(yùn)行yum安裝與二進(jìn)制安裝

    Containerd容器運(yùn)行yum安裝與二進(jìn)制安裝

    這篇文章主要為大家介紹了Containerd容器運(yùn)行yum安裝與二進(jìn)制安裝,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • K8S安裝及配置教程

    K8S安裝及配置教程

    這篇文章主要介紹了K8S安裝及配置教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-03-03
  • kubernetes k8s 存儲(chǔ)動(dòng)態(tài)掛載配置詳解

    kubernetes k8s 存儲(chǔ)動(dòng)態(tài)掛載配置詳解

    這篇文章主要為大家介紹了kubernetes k8s 存儲(chǔ)動(dòng)態(tài)掛載配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • k8s編排之StatefulSet知識(shí)點(diǎn)詳解二

    k8s編排之StatefulSet知識(shí)點(diǎn)詳解二

    這篇文章主要為大家介紹了k8s編排之StatefulSet知識(shí)點(diǎn)的部分詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01

最新評(píng)論

城口县| 外汇| 靖安县| 仁化县| 临猗县| 新野县| 玉屏| 庆云县| 玉林市| 加查县| 屯留县| 科技| 唐海县| 庄河市| 郯城县| 沈丘县| 永吉县| 盐津县| 卫辉市| 和龙市| 大理市| 隆化县| 栾川县| 泰来县| 同仁县| 澜沧| 绿春县| 乐东| 永登县| 三明市| 德令哈市| 黄冈市| 财经| 赤壁市| 哈巴河县| 宁安市| 巴东县| 东平县| 报价| 邹平县| 吉隆县|