10 Feem ntau yuam kev thaum siv Kubernetes

Nco tseg. txhais.: Cov sau phau ntawv no yog engineers los ntawm lub tuam txhab me me Czech, pipetail. Lawv tau tswj kom muab tso ua ke ib daim ntawv teev npe zoo ntawm [qee zaum banal, tab sis tseem] teeb meem nyuaj heev thiab kev xav tsis zoo txog kev ua haujlwm ntawm Kubernetes pawg.

10 Feem ntau yuam kev thaum siv Kubernetes

Tau ntau xyoo ntawm kev siv Kubernetes, peb tau ua haujlwm nrog ntau pawg (ob qho tib si tswj thiab tsis tswj hwm - ntawm GCP, AWS thiab Azure). Sij hawm dhau mus, peb pib pom tias qee qhov yuam kev tau rov ua dua tas li. Txawm li cas los xij, tsis muaj kev txaj muag hauv qhov no: peb tau ua feem ntau ntawm lawv tus kheej!

Kab lus muaj qhov yuam kev ntau tshaj plaws thiab tseem hais txog yuav kho lawv li cas.

1. Cov peev txheej: thov thiab txwv

Cov khoom no twv yuav raug hu tsim nyog qhov ze tshaj plaws thiab thawj qhov chaw ntawm daim ntawv.

CPU thov feem ntau txawm tsis tau teev tag nrho los yog muaj tus nqi qis heev (kom tso ntau lub pods ntawm txhua lub pob li sai tau). Yog li, cov nodes ua overloaded. Thaum lub sij hawm ntawm kev thauj khoom siab, cov node lub zog ua haujlwm tau siv tag nrho thiab ib qho kev ua haujlwm tau txais tsuas yog qhov nws "thov" los ntawm CPU throttling. Qhov no ua rau muaj kev siv ntau dua latency, ncua sij hawm, thiab lwm yam tsis zoo rau qhov tshwm sim. (Nyeem ntxiv txog qhov no hauv peb phau ntawv txhais lus tsis ntev los no: β€œCPU txwv thiab nruj throttling hauv Kubernetes"- kwv yees. txhais.)

BestEffort (hloov heev tsis pom zoo):

resources: {}

Kev thov CPU tsawg heev (tsis tshua muaj tsis pom zoo):

   resources:
      Requests:
        cpu: "1m"

Ntawm qhov tod tes, lub xub ntiag ntawm CPU txwv tuaj yeem ua rau tsis tsim nyog hla lub voj voog moos los ntawm cov pods, txawm tias cov node processor tsis tau ntim tag nrho. Ntxiv dua thiab, qhov no tuaj yeem ua rau qeeb qeeb. Kev tsis sib haum xeeb tseem nyob ib puag ncig qhov ntsuas CPU CFS quota nyob rau hauv Linux ntsiav thiab CPU throttling nyob ntawm qhov teeb tsa txwv, nrog rau kev ua tsis taus CFS quota... Alas, CPU txwv tuaj yeem ua teeb meem ntau dua li lawv tuaj yeem daws tau. Xav paub ntau ntxiv txog qhov no tuaj yeem pom ntawm qhov txuas hauv qab no.

Kev xaiv ntau dhau (overcommitting) teeb meem nco tuaj yeem ua rau muaj teeb meem loj. Kev ncav cuag CPU txwv suav nrog hla lub voj voog moos, thaum ncav cuag lub cim xeeb txwv yuav tua cov pod. Koj puas tau pom OOMkill? Yog, qhov ntawd yog qhov peb tab tom tham txog.

Koj puas xav kom txo qis qhov yuav tshwm sim? Tsis txhob faib lub cim xeeb ntau dhau thiab siv Guaranteed QoS (Kev Pabcuam Zoo) los ntawm kev teeb tsa lub cim xeeb thov rau qhov txwv (raws li hauv qhov piv txwv hauv qab no). Nyeem ntxiv txog qhov no hauv Henning Jacobs nthuav qhia (Tus Thawj Coj Engineer Zalando).

Burstable (muaj feem ntau dua ntawm OOMkilled):

   resources:
      requests:
        memory: "128Mi"
        cpu: "500m"
      limits:
        memory: "256Mi"
        cpu: 2

Guaranteed:

   resources:
      requests:
        memory: "128Mi"
        cpu: 2
      limits:
        memory: "128Mi"
        cpu: 2

Dab tsi yuav pab tau thaum teeb tsa cov peev txheej?

Nrog kev pab los ntawm metrics-server Koj tuaj yeem pom cov peev txheej CPU tam sim no thiab kev siv nco los ntawm cov pods (thiab ntim hauv lawv). Feem ntau, koj twb siv nws lawm. Tsuas yog khiav cov lus txib hauv qab no:

kubectl top pods
kubectl top pods --containers
kubectl top nodes

Txawm li cas los xij, lawv tsuas yog qhia txog kev siv tam sim no. Nws tuaj yeem muab koj lub tswv yim ntxhib ntawm qhov kev txiav txim ntawm qhov loj, tab sis thaum kawg koj yuav xav tau keeb kwm ntawm kev hloov pauv hauv metrics raws sijhawm (los teb cov lus nug xws li: "Dab tsi yog qhov siab tshaj CPU load?", "Thaum sawv ntxov yog dab tsi?", thiab lwm yam). Rau qhov no koj tuaj yeem siv Prometheus, DataDog thiab lwm yam cuab yeej. Lawv tsuas yog tau txais kev ntsuas los ntawm metrics-server thiab khaws cia, thiab tus neeg siv tuaj yeem nug lawv thiab npaj lawv raws li.

VerticalPodAutoscaler nws tso cai rau tshuab txheej txheem no. Nws taug qab CPU thiab nco siv keeb kwm thiab teeb tsa kev thov tshiab thiab txwv raws li cov ntaub ntawv no.

Kev siv suav fais fab kom zoo tsis yog ib txoj haujlwm yooj yim. Nws zoo li ua si Tetris txhua lub sijhawm. Yog tias koj them nyiaj ntau dhau rau kev suav lub zog nrog kev siv nruab nrab qis (hais ~ 10%), peb pom zoo saib cov khoom raws li AWS Fargate lossis Virtual Kubelet. Lawv tau tsim los ntawm serverless / them-ib-siv tus qauv them nqi, uas yuav ua rau pheej yig dua hauv cov xwm txheej zoo li no.

2. Kev soj ntsuam kev ua neej nyob thiab kev npaj txhij

Los ntawm lub neej ntawd, kev kuaj xyuas kev ua neej nyob thiab kev npaj tsis tau qhib hauv Kubernetes. Thiab qee zaum lawv tsis nco qab tig lawv ...

Tab sis yuav ua li cas ntxiv koj tuaj yeem pib qhov kev pabcuam rov pib dua thaum muaj qhov yuam kev tuag? Thiab yuav ua li cas lub load balancer paub tias lub plhaub taum pauv tau txais kev thauj mus los? Los yog tias nws tuaj yeem tswj tau ntau lub tsheb?

Cov kev xeem no feem ntau tsis meej pem nrog ib leeg:

  • Nyob Los Tau - "survivability", uas rov pib lub plhaub yog tias nws ua tsis tiav;
  • Npaj txhij - Kev kuaj npaj txhij, yog tias nws ua tsis tiav, nws cuam tshuam lub pod ntawm Kubernetes kev pabcuam (qhov no tuaj yeem kuaj xyuas siv kubectl get endpoints) thiab kev khiav tsheb tsis tuaj txog rau nws kom txog thaum qhov kev kuaj xyuas tom ntej ua tiav tiav.

Ob qho kev kuaj xyuas no TAM SIM NO THIAJ LI YUAV TSUM TAU TXAIS LUB SIJ HAWM NTAWM LUB POD. Nws tseem ceeb heev.

Ib qho kev xav tsis zoo yog tias kev tshawb nrhiav kev npaj tsuas yog khiav ntawm kev pib ua kom lub ntsuas ntsuas tuaj yeem paub tias lub plhaub taum pauv (Ready) thiab tuaj yeem pib ua haujlwm. Txawm li cas los xij, qhov no tsuas yog ib qho ntawm cov kev xaiv rau lawv siv.

Lwm qhov yog qhov muaj peev xwm ntawm kev tshawb pom tias cov tsheb khiav ntawm lub plhaub taum pauv ntau dhau thiab overloads nws (los yog lub plhaub taum ua cov ntaub ntawv siv nyiaj ntau heev). Nyob rau hauv cov ntaub ntawv no, qhov kev npaj yuav pab txo cov load ntawm lub plhaub thiab "txias" nws. Kev ua tiav ntawm kev npaj ua tiav rau yav tom ntej tso cai nce lub load ntawm lub plhaub taum dua. Nyob rau hauv rooj plaub no (yog tias qhov kev sim npaj tsis tau), qhov tsis ua tiav ntawm qhov kev sim ua neej nyob yuav ua rau muaj kev cuam tshuam ntau heev. Vim li cas ho rov pib lub plhaub taum uas noj qab nyob zoo thiab ua haujlwm hnyav?

Yog li ntawd, hauv qee kis, tsis muaj kev kuaj xyuas txhua qhov zoo dua li ua rau lawv tsis raug teeb tsa tsis raug. Raws li tau hais los saum toj no, yog tias kev kuaj xyuas cov ntawv luam kev npaj kuaj, ces koj muaj teeb meem loj. Kev xaiv tau yog los teeb tsa kev xeem ntawv nkaus xwbthiab txaus ntshai nyob tawm ib sab.

Ob hom kev txheeb xyuas yuav tsum tsis txhob poob thaum muaj kev vam meej tsis ua haujlwm, txwv tsis pub qhov no yuav ua rau muaj kev poob qis (xws li avalanche) tsis ua haujlwm ntawm tag nrho cov pods. Hauv lwm lo lus, txhob ua phem rau koj tus kheej.

3. LoadBalancer rau txhua qhov kev pabcuam HTTP

Feem ntau, koj muaj HTTP cov kev pabcuam hauv koj pawg uas koj xav xa mus rau lub ntiaj teb sab nraud.

Yog tias koj qhib qhov kev pabcuam raws li type: LoadBalancer, nws tus maub los (raws li tus neeg muab kev pabcuam) yuav muab thiab sib tham nrog lwm tus LoadBalancer (tsis tas yuav khiav ntawm L7, tab sis txawm nyob rau L4), thiab qhov no yuav cuam tshuam rau tus nqi (qhov chaw nyob IPv4 sab nraud, suav fais fab, nqi ib-thib ob ) vim xav tau los tsim ib tug loj tus naj npawb ntawm cov kev pab.

Nyob rau hauv cov ntaub ntawv no, nws yog ntau npaum li cas xav kom siv ib tug sab nraud load balancer, qhib cov kev pab cuam raws li type: NodePort. Los yog zoo dua, nthuav ib yam dab tsi zoo li nginx-ingress-controller (los yog traefik kev), leej twg yuav yog tib tug NodePort endpoint txuam nrog rau sab nraud load balancer thiab yuav khiav tsheb khiav hauv pawg siv ingress- Kubernetes cov peev txheej.

Lwm cov kev pabcuam hauv pawg (micro) uas cuam tshuam nrog ib leeg tuaj yeem "sib tham" siv cov kev pabcuam xws li ClusterIP thiab ib qho built-in kev pab nrhiav mechanism ntawm DNS. Tsuas yog tsis txhob siv lawv cov pej xeem DNS / IP, vim qhov no tuaj yeem cuam tshuam latency thiab nce tus nqi ntawm cov kev pabcuam huab.

4. Autoscaling ib pawg yam tsis xav txog nws cov yam ntxwv

Thaum ntxiv cov nodes rau thiab tshem tawm ntawm pawg, koj yuav tsum tsis txhob cia siab rau qee qhov kev ntsuas yooj yim xws li CPU siv ntawm cov nodes. Kev npaj Pod yuav tsum coj mus rau hauv tus account ntau txwv, xws li pod/node affinity, taints and tolerations, resource requests, QoS, etc. Siv ib qho autoscaler sab nraud uas tsis coj cov nuances mus rau hauv tus account tuaj yeem ua rau muaj teeb meem.

Xav txog tias ib lub pod yuav tsum tau teem sijhawm, tab sis tag nrho cov muaj peev xwm CPU tau thov / disassembled thiab lub pod tau daig hauv ib lub xeev Pending. Sab nraud autoscaler pom qhov nruab nrab tam sim no CPU load (tsis yog qhov thov) thiab tsis pib nthuav dav (scale-tawm) - tsis ntxiv lwm qhov. Yog li ntawd, lub plhaub taum no yuav tsis teem sijhawm.

Hauv qhov no, rov qab scaling (scale-hauv) - tshem tawm ib qho ntawm ib pawg yog ib txwm nyuaj rau kev siv. Xav txog tias koj muaj lub hauv paus ntsiab lus (nrog rau qhov txuas txuas txuas ntxiv). Tsis tu ncua ntim feem ntau yog rau thaj chaw muaj nyob thiab tsis rov ua dua hauv cheeb tsam. Yog li, yog tias tus autoscaler sab nraud tshem tawm ib qho ntawm cov pod no, lub sijhawm teem sijhawm yuav tsis tuaj yeem teem caij lub pod ntawm lwm lub node, vim qhov no tsuas yog ua tau nyob rau hauv thaj chaw muaj nyob qhov twg qhov chaw cia tsis tu ncua. Pod yuav daig hauv lub xeev Pending.

Nrov heev hauv cov zej zog Kubernetes pawg-autoscaler. Nws khiav ntawm pawg, txhawb nqa APIs los ntawm cov chaw muab kev pabcuam huab loj, suav nrog txhua qhov kev txwv thiab tuaj yeem ntsuas hauv cov xwm txheej saum toj no. Nws kuj tseem tuaj yeem ntsuas-hauv thaum tswj hwm tag nrho cov kev txwv, yog li txuag nyiaj (uas yuav txwv tsis pub siv lub peev xwm tsis siv).

5. Tsis saib xyuas IAM/RBAC peev xwm

Ceev faj ntawm kev siv IAM cov neeg siv nrog cov lus zais tsis tu ncua rau tshuab thiab kev siv. Npaj kev nkag mus ib ntus siv cov luag haujlwm thiab cov nyiaj pabcuam (cov nyiaj pabcuam).

Peb feem ntau ntsib qhov tseeb tias cov yuam sij nkag (thiab zais cia) yog hardcoded hauv daim ntawv thov teeb tsa, nrog rau kev tsis saib xyuas kev sib hloov ntawm kev zais txawm tias muaj kev nkag mus rau Huab IAM. Siv IAM lub luag hauj lwm thiab cov kev pab cuam account es tsis txhob siv cov neeg siv qhov tsim nyog.

10 Feem ntau yuam kev thaum siv Kubernetes

Tsis nco qab kube2iam thiab mus ncaj nraim rau IAM lub luag haujlwm rau cov nyiaj pabcuam (raws li tau piav qhia hauv nco ntsoov tib lub npe Lub Npe Lub Npe):

apiVersion: v1
kind: ServiceAccount
metadata:
  annotations:
    eks.amazonaws.com/role-arn: arn:aws:iam::123456789012:role/my-app-role
  name: my-serviceaccount
  namespace: default

Ib annotation. Tsis nyuaj, txoj cai?

Tsis tas li ntawd, tsis txhob tso cai rau cov nyiaj pabcuam thiab piv txwv cov cai admin ΠΈ cluster-adminyog lawv tsis xav tau. Qhov no yog me ntsis nyuaj rau kev siv, tshwj xeeb tshaj yog nyob rau hauv RBAC K8s, tab sis twv yuav raug hu tsim nyog rau kev siv zog.

6. Tsis txhob cia siab rau tsis siv neeg los tiv thaiv affinity rau cov pods

Xav txog tias koj muaj peb qhov kev hloov pauv ntawm qee qhov kev xa tawm ntawm ib qho. Cov node ntog, thiab nrog rau nws tag nrho cov replicas. Qhov xwm txheej tsis kaj siab, txoj cai? Tab sis vim li cas tag nrho cov replicas ntawm tib lub node? Puas yog Kubernetes yuav tsum muab siab rau (HA)?!

Hmoov tsis zoo, tus teem sijhawm Kubernetes, ntawm nws tus kheej txoj kev pib, tsis ua raws li cov cai ntawm kev sib cais. (anti-affinity) rau pods. Lawv yuav tsum tau hais meej meej:

// ΠΎΠΏΡƒΡ‰Π΅Π½ΠΎ для краткости
      labels:
        app: zk
// ΠΎΠΏΡƒΡ‰Π΅Π½ΠΎ для краткости
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            - labelSelector:
                matchExpressions:
                  - key: "app"
                    operator: In
                    values:
                    - zk
              topologyKey: "kubernetes.io/hostname"

Yog tag nrho. Tam sim no cov pods yuav raug teem rau ntawm cov nodes sib txawv (tus mob no tsuas yog kuaj thaum lub sijhawm teem sijhawm, tab sis tsis yog thaum lawv ua haujlwm - yog li ntawd requiredDuringSchedulingIgnoredDuringExecution).

Ntawm no peb tham txog podAntiAffinity ntawm qhov sib txawv nodes: topologyKey: "kubernetes.io/hostname", - thiab tsis hais txog thaj chaw muaj sib txawv. Txhawm rau ua kom tiav HA tag nrho, koj yuav tsum khawb tob rau hauv cov ncauj lus no.

7. Tsis quav ntsej PodDisruptionBudgets

Xav txog tias koj muaj cov khoom thauj khoom ntawm Kubernetes pawg. Ib ntus, cov nodes thiab pawg nws tus kheej yuav tsum tau hloov kho (lossis decommissioned). PodDisruptionBudget (PDB) yog ib yam dab tsi zoo li cov kev pabcuam lav kev pom zoo ntawm pawg thawj coj thiab cov neeg siv.

PDB tso cai rau koj kom tsis txhob muaj kev cuam tshuam kev pabcuam los ntawm qhov tsis muaj cov nodes:

apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: zk-pdb
spec:
  minAvailable: 2
  selector:
    matchLabels:
      app: zookeeper

Hauv qhov piv txwv no, koj, raws li tus neeg siv ntawm pawg, hais rau cov thawj coj: "Hav, Kuv muaj kev pabcuam zoo, thiab txawm tias koj ua dab tsi, kuv xav kom muaj tsawg kawg 2 qhov kev hloov pauv ntawm qhov kev pabcuam no ib txwm muaj."

Koj tuaj yeem nyeem ntxiv txog qhov no no.

8. Ntau tus neeg siv lossis ib puag ncig hauv ib pawg

Kubernetes namespaces (namespaces) tsis muab cov rwb thaiv tsev muaj zog.

Ib qho kev xav tsis zoo yog tias yog tias koj xa cov khoom tsis yog khoom thauj mus rau hauv ib lub npe thiab cov khoom thauj mus rau lwm qhov, ces lawv yuav tsis cuam tshuam rau ib leeg... Txawm li cas los xij, qee theem ntawm kev rho tawm tuaj yeem ua tiav los ntawm kev thov cov peev txheej / kev txwv, teeb tsa quotas, thiab teeb tsa qhov tseem ceeb. Qee qhov "lub cev" cais nyob rau hauv cov ntaub ntawv dav hlau yog muab los ntawm affinities, tolerations, taints (los yog nodeselectors), tab sis xws li kev sib cais yog heev. nyuaj siv.

Cov neeg uas yuav tsum tau ua ke ob hom kev ua haujlwm hauv tib pawg yuav tsum tau ua haujlwm nyuaj. Yog tias tsis muaj qhov xav tau, thiab koj tuaj yeem them taus muaj ib pawg ntxiv (hais tias, hauv huab huab), ces nws zoo dua ua li ntawd. Qhov no yuav ua tiav qib siab dua ntawm rwb thaiv tsev.

9. ExternalTrafficPolicy: Pawg

Feem ntau peb pom tias tag nrho cov tsheb khiav hauv pawg los ntawm cov kev pabcuam zoo li NodePort, uas tau teeb tsa txoj cai qub. externalTrafficPolicy: Cluster... Nws txhais tau tias NodePort qhib rau txhua qhov ntawm cov pawg, thiab koj tuaj yeem siv ib qho ntawm lawv los cuam tshuam nrog cov kev pabcuam uas xav tau (txheej txheej ntawm cov pods).

10 Feem ntau yuam kev thaum siv Kubernetes

Nyob rau tib lub sijhawm, cov pods tiag tiag cuam tshuam nrog cov kev pabcuam NodePort tau hais los saum toj no feem ntau tsuas yog muaj nyob ntawm qee yam. subset ntawm cov nodes. Hauv lwm lo lus, yog tias kuv txuas mus rau ntawm qhov tsis muaj qhov xav tau, nws yuav xa mus rau lwm qhov ntawm, ntxiv hop thiab nce latency (yog hais tias cov nodes nyob rau hauv sib txawv muaj zones / cov ntaub ntawv chaw, lub latency yuav ua tau heev; ntxiv rau, egress nqi tsheb yuav nce).

Ntawm qhov tod tes, yog tias qee qhov kev pabcuam Kubernetes muaj txoj cai tswjfwm externalTrafficPolicy: Local, tom qab ntawd NodePort tsuas yog qhib rau ntawm cov nodes qhov twg cov pods yuav tsum tau khiav. Thaum siv cov khoom sib npaug sab nraud uas kuaj xyuas lub xeev (kev kuaj mob) endpoints (nws ua li cas AWS ELB), Nws yuav xa tsheb mus rau qhov tsim nyog nodes, uas yuav muaj txiaj ntsig zoo rau kev ncua sij hawm, kev xav tau kev xav tau, cov nqi egress (thiab kev xav zoo ib yam).

Muaj lub caij nyoog siab uas koj twb tau siv tej yam zoo li traefik kev los yog nginx-ingress-controller raws li NodePort qhov kawg (lossis LoadBalancer, uas tseem siv NodePort) rau txoj kev HTTP ingress tsheb, thiab teeb tsa qhov kev xaiv no tuaj yeem txo qis latency rau cov kev thov no.

Π’ daim ntawv no Koj tuaj yeem kawm paub ntau ntxiv txog ExternalTrafficPolicy, nws qhov zoo thiab qhov tsis zoo.

10. Tsis txhob khi rau pawg thiab tsis txhob ua phem rau lub dav hlau tswj

Yav dhau los, nws yog kev cai hu rau servers los ntawm cov npe kom raug: Anton, HAL9000 thiab Colossus... Niaj hnub no lawv tau hloov los ntawm randomly generated identifiers. Txawm li cas los xij, tus cwj pwm tseem nyob, thiab tam sim no cov npe raug mus rau pawg.

Ib zaj dab neeg raug (raws li cov xwm txheej tiag): nws txhua tus pib nrog cov pov thawj ntawm lub tswv yim, yog li pawg neeg muaj lub npe txaus siab kev soj ntsuam... Ntau xyoo dhau los thiab nws tseem yog STILL siv hauv kev tsim khoom, thiab txhua tus neeg ntshai kov nws.

Tsis muaj dab tsi lom zem txog cov pawg hloov mus ua tsiaj, yog li peb pom zoo kom tshem lawv ib ntus thaum xyaum kev puas tsuaj rov qab los (qhov no yuav pab tau chaos engineering - kwv yees. txhais.). Tsis tas li ntawd, nws yuav tsis mob rau kev ua haujlwm ntawm cov txheej txheem tswj (tswj dav hlau). Kev ntshai kov nws tsis yog lub cim zoo. Lwm yam tuag? Cov txiv neej, koj muaj teeb meem tiag tiag!

Ntawm qhov tod tes, koj yuav tsum tsis txhob nqa mus nrog kev tswj hwm nws. Nrog sijhawm txheej tswj yuav ua qeeb. Feem ntau, qhov no yog vim muaj coob tus ntawm cov khoom raug tsim yam tsis muaj kev sib hloov (qhov xwm txheej tshwm sim thaum siv Helm nrog kev teeb tsa tsis raug, uas yog vim li cas nws lub xeev hauv configmaps / zais cia tsis hloov kho - vim li ntawd, ntau txhiab yam khoom sib sau hauv. cov txheej txheem tswj) lossis nrog kev hloov kho tas li ntawm cov khoom kube-api (rau kev ntsuas tsis siv neeg, rau CI / CD, rau kev saib xyuas, kev tshwm sim cav, controllers, thiab lwm yam).

Tsis tas li ntawd, peb pom zoo kom kuaj xyuas SLA/SLO cov lus pom zoo nrog tus kws kho mob Kubernetes tswj hwm thiab ua tib zoo saib xyuas cov kev lees paub. Tus neeg muag khoom tuaj yeem lav tswj txheej muaj (lossis nws cov subcomponents), tab sis tsis yog p99 ncua kev thov koj xa mus rau nws. Hauv lwm lo lus, koj tuaj yeem nkag mus kubectl get nodes, thiab tau txais cov lus teb tsuas yog tom qab 10 feeb, thiab qhov no yuav tsis ua txhaum txoj cai ntawm daim ntawv cog lus kev pabcuam.

11. Nyiaj tshwj xeeb: siv lub cim tshiab

Tab sis qhov no yog ib qho classic. Tsis ntev los no peb tau hla cov txheej txheem no tsawg dua, txij li ntau tus, tau kawm los ntawm kev txom nyem, tau tso tseg tsis siv lub cim npe :latest thiab pib pinning versions. Hooray!

ECR tuav immutability ntawm cov duab cim npe; Peb xav kom koj paub koj tus kheej nrog qhov zoo kawg li no.

Txoj kev xaus

Tsis txhob cia siab tias txhua yam ua haujlwm hmo ntuj: Kubernetes tsis yog panacea. Phem app yuav nyob li no txawm nyob hauv Kubernetes (thiab tej zaum nws yuav mob zuj zus). Kev tsis saib xyuas yuav ua rau muaj kev ntxhov siab ntau dhau, ua haujlwm qeeb thiab ntxhov siab ntawm cov txheej txheem tswj. Tsis tas li ntawd, koj yuav raug tso tseg yam tsis muaj kev puas tsuaj rov qab los. Tsis txhob cia siab tias Kubernetes muab kev cais tawm thiab muaj kev txaus siab tawm ntawm lub thawv. Siv qee lub sij hawm ua koj daim ntawv thov huab cua tiag tiag.

Koj tuaj yeem paub txog qhov ua tsis tiav ntawm ntau pab pawg hauv zaj dab neeg sau los ntawm no los ntawm Henning Jacobs.

Cov neeg uas xav ntxiv rau cov npe ntawm qhov tsis raug muab rau hauv tsab xov xwm no tuaj yeem tiv tauj peb ntawm Twitter (@MarekBartik, @MstrsObserver).

PS los ntawm tus txhais lus

Nyeem kuj ntawm peb blog:

Tau qhov twg los: www.hab.com

Ntxiv ib saib