Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Mga Kinamaayohang Gawi sa Kubernetes. Paghimo og Gagmay nga mga Kontainer
Mga Kinamaayohang Gawi sa Kubernetes. Kubernetes nga organisasyon nga adunay namespace
Mga Kinamaayohang Gawi sa Kubernetes. Pagsusi sa Panglawas sa Kubernetes gamit ang Pag-andam ug Pagsulay sa Liveness
Mga Kinamaayohang Gawi sa Kubernetes. Pagtakda sa mga hangyo ug limitasyon sa kapanguhaan

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Ang usa ka importante nga punto sa operasyon sa gipang-apod-apod nga mga sistema mao ang pagdumala sa kapakyasan. Ang Kubernetes nagtabang niini pinaagi sa paggamit sa mga controller nga nagmonitor sa kahimsog sa imong sistema ug nag-restart sa mga serbisyo nga mihunong sa pagtrabaho. Bisan pa, ang Kubernetes mahimong kusgan nga mohunong sa imong mga aplikasyon aron masiguro ang kinatibuk-ang kahimsog sa sistema. Niini nga serye, atong tan-awon kon unsaon nimo pagtabang ang Kubernetes sa pagbuhat sa trabaho niini nga mas episyente ug pagpakunhod sa downtime sa aplikasyon.

Sa wala pa ang mga sudlanan, kadaghanan sa mga aplikasyon nagdagan sa virtual o pisikal nga mga makina. Kung ang aplikasyon nahagsa o ​​nagyelo, dugay nga gikansela ang buluhaton nga nagpadayon ug i-reload ang programa. Sa pinakagrabe nga sitwasyon sa kaso, adunay usa nga kinahanglan nga mosulbad niini nga problema sa kamut sa gabii, sa labing dili angay nga mga oras. Kung 1-2 lang nga nagtrabaho nga mga makina ang naghimo sa usa ka hinungdanon nga buluhaton, ang ingon nga pagkabalda hingpit nga dili madawat.
Busa, imbes nga mga manwal nga pag-reboot, nagsugod sila sa paggamit sa lebel sa proseso nga pag-monitor aron awtomatiko nga i-restart ang aplikasyon kung adunay dili normal nga pagtapos. Kung mapakyas ang programa, makuha sa proseso sa pag-monitor ang exit code ug i-reboot ang server. Uban sa pag-abut sa mga sistema sama sa Kubernetes, kini nga matang sa tubag sa mga kapakyasan sa sistema yano nga gisagol sa imprastraktura.

Ang Kubernetes naggamit ug observe-difference-take-action event loop aron masiguro nga ang mga kahinguhaan magpabiling himsog samtang sila mobiyahe gikan sa mga sudlanan ngadto sa mga node mismo.

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Nagpasabot kini nga dili na nimo kinahanglan nga mano-mano ang pagpadagan sa pagmonitor sa proseso. Kung ang usa ka kapanguhaan mapakyas sa Pagsusi sa Panglawas, ang Kubernetes awtomatiko nga maghatag niini nga adunay kapuli. Bisan pa, ang Kubernetes naghimo labi pa sa pag-monitor sa imong aplikasyon alang sa mga kapakyasan. Makahimo kini og daghang mga kopya sa aplikasyon nga modagan sa daghang mga makina, mag-update sa aplikasyon, o magpadagan sa daghang mga bersyon sa imong aplikasyon nga dungan.
Busa, adunay daghang mga hinungdan ngano nga ang Kubernetes mahimo’g tapuson ang usa ka hingpit nga himsog nga sudlanan. Pananglitan, kung imong i-upgrade ang imong deployment, hinayhinay nga hunongon sa Kubernetes ang mga daan nga pod samtang magsugod ug bag-o. Kung imong isira ang usa ka node, ang Kubernetes mohunong sa pagpadagan sa tanan nga mga pod sa kana nga node. Sa katapusan, kung ang usa ka node nahutdan sa mga kapanguhaan, ang Kubernetes magsira sa tanan nga mga pod aron mapahigawas ang mga kapanguhaan.

Busa, hinungdanon nga ang imong aplikasyon matapos nga adunay gamay nga epekto sa katapusan nga tiggamit ug gamay nga oras sa pagbawi. Kini nagpasabot nga sa dili pa isira, kinahanglan nga i-save ang tanan nga datos nga kinahanglan i-save, isira ang tanan nga koneksyon sa network, kompletoha ang nahabilin nga trabaho, ug pagdumala sa uban pang mga dinalian nga buluhaton.

Sa praktis, kini nagpasabot nga ang imong aplikasyon kinahanglan nga makahimo sa pagdumala sa SIGTERM nga mensahe, ang proseso sa pagtapos signal nga mao ang default signal alang sa pagpatay utility sa Unix operating system. Sa pagkadawat niini nga mensahe, ang aplikasyon kinahanglan nga isira.

Sa higayon nga ang Kubernetes nakahukom sa pagtapos sa usa ka pod, daghang mga panghitabo ang mahitabo. Atong tan-awon ang matag lakang nga gihimo sa Kubernetes sa pagsira sa usa ka sudlanan o pod.

Ingnon ta nga gusto namong tapuson ang usa sa mga pod. Niini nga punto, kini mohunong sa pagdawat sa bag-ong trapiko - ang mga sudlanan nga nagdagan sa pod dili maapektuhan, apan ang tanan nga bag-ong trapiko ma-block.

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Atong tan-awon ang preStop hook, nga usa ka espesyal nga sugo o HTTP nga hangyo nga gipadala sa mga sudlanan sa usa ka pod. Kung ang imong aplikasyon dili masira sa husto sa dihang makadawat sa SIGTERM, mahimo nimong gamiton ang preStop aron masira ang husto.

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Kadaghanan sa mga programa mogawas nga nindot kung makadawat sila og signal sa SIGTERM, apan kung naggamit ka og third-party nga code o pipila ka sistema nga dili nimo hingpit nga makontrol, ang preStop hook usa ka maayong paagi sa pagpugos sa usa ka maayo nga pagsira nga dili usbon ang aplikasyon.

Human sa pagpatuman niini nga kaw-it, ang Kubernetes magpadala ug SIGTERM nga signal ngadto sa mga sudlanan sa pod, nga magpahibalo kanila nga sila sa dili madugay ma-disconnect. Sa pagkadawat niini nga signal, ang imong code magpadayon sa proseso sa pagsira. Kini nga proseso mahimong maglakip sa paghunong sa bisan unsang dugay na nga mga koneksyon sama sa koneksyon sa database o WebSocket stream, pagluwas sa kasamtangan nga kahimtang, ug uban pa.

Bisan kung mogamit ka usa ka preStop hook, hinungdanon kaayo nga susihon kung unsa gyud ang mahitabo sa imong aplikasyon kung ipadala nimo kini usa ka signal sa SIGTERM, ug kung giunsa kini molihok, aron ang mga panghitabo o pagbag-o sa operasyon sa sistema tungod sa usa ka pagsira sa pod dili moabut ingon usa ka surpresa kanimo.

Niining puntoha, ang Kubernetes maghulat alang sa usa ka piho nga gidugayon sa oras, nga gitawag nga terminationGracePeriodSecond, o ang panahon nga maayo nga pagsira kung makadawat kini usa ka signal sa SIGTERM, sa dili pa molihok.

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Sa kasagaran kini nga panahon 30 segundos. Importante nga timan-an nga kini nagdagan dungan sa preStop hook ug sa SIGTERM signal. Ang mga Kubernetes dili maghulat sa preStop hook ug SIGTERM nga mataposβ€”kon ang imong aplikasyon mogawas sa dili pa matapos ang TerminationGracePeriod, ang Kubernetes mopadayon dayon sa sunod nga lakang. Busa, susiha nga ang bili niini nga panahon sa mga segundo dili moubos sa panahon nga gikinahanglan aron sa hustong pagsira sa pod, ug kon kini molapas sa 30s, dugangi ang panahon ngadto sa gitinguha nga bili sa YAML. Sa pananglitan nga gihatag, kini 60s.

Ug sa katapusan, ang katapusang lakang kung ang mga sudlanan nagpadayon pa pagkahuman sa pagtaposGracePeriod, magpadala sila usa ka signal sa SIGKILL ug pugson nga papason. Niini nga punto, limpyohan usab sa Kubernetes ang tanan nga uban pang mga butang nga pod.

Mga Kinamaayohang Gawi sa Kubernetes. Husto nga pagsira Tapuson

Gitapos sa Kubernetes ang mga pod tungod sa daghang mga hinungdan, busa siguruha nga ang imong aplikasyon matapos nga maayo sa bisan unsang kaso aron masiguro ang usa ka lig-on nga serbisyo.

Labing maayo nga mga gawi sa Kubernetes. Pagmapa sa mga serbisyo sa gawas

Pipila ka mga ad πŸ™‚

Salamat sa pagpabilin kanamo. Ganahan ka ba sa among mga artikulo? Gusto nga makakita og mas makapaikag nga sulod? Suportahi kami pinaagi sa pag-order o pagrekomenda sa mga higala, cloud VPS alang sa mga developers gikan sa $4.99, usa ka talagsaon nga analogue sa mga entry-level server, nga giimbento namo alang kanimo: Ang tibuok kamatuoran bahin sa VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps gikan sa $19 o unsaon pagpaambit sa usa ka server? (anaa sa RAID1 ug RAID10, hangtod sa 24 ka mga core ug hangtod sa 40GB DDR4).

Dell R730xd 2 ka beses nga mas barato sa Equinix Tier IV data center sa Amsterdam? Dinhi lang 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV gikan sa $199 sa Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - gikan sa $99! Basaha ang mahitungod sa Unsaon pagtukod sa infrastructure corp. klase sa paggamit sa Dell R730xd E5-2650 v4 server nga nagkantidad ug 9000 euros sa usa ka sentimos?

Source: www.habr.com

Idugang sa usa ka comment