Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Kubernetes machitidwe abwino. Kupanga zotengera zazing'ono
Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Njira zogawira zimatha kukhala zovuta kuziwongolera chifukwa zimakhala ndi zinthu zambiri zosuntha, zosintha zomwe zonse zimafunikira kuti zigwire bwino ntchito. Ngati chimodzi mwazinthu chikulephera, dongosololi liyenera kuzizindikira, kuzilambalala ndikuzikonza, ndipo zonsezi ziyenera kuchitika zokha. Pankhani iyi ya Kubernetes Best Practices, tiphunzira momwe tingakhazikitsire mayeso a Readiness and Liveness kuyesa thanzi la gulu la Kubernetes.

Health Check ndi njira yosavuta yodziwira kuti pulogalamu yanu ikugwira ntchito kapena ayi. Ngati ntchito yanu yalephera, ndiye kuti ntchito zina siziyenera kuzipeza kapena kutumiza zopempha kwa izo. M'malo mwake, pempholo liyenera kutumizidwa ku gawo lina la pulogalamu yomwe ikugwira ntchito kale kapena yomwe idzayambitsidwe mtsogolo. Kuphatikiza apo, dongosololi liyenera kubwezeretsa magwiridwe antchito otayika a pulogalamu yanu.

Mwachikhazikitso, Kubernetes ayamba kutumiza magalimoto ku pod pamene zotengera zonse mkati mwa ma pod zikuyenda, ndikuyambitsanso zotengera zikawonongeka. Izi zitha kukhala zabwino poyambira, koma mutha kuwongolera kudalirika kwazomwe mukugwiritsa ntchito pogwiritsa ntchito macheke amisala.

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Mwamwayi, Kubernetes imapangitsa izi kukhala zosavuta kuchita, kotero palibe chifukwa chonyalanyaza macheke awa. Kubernetes amapereka mitundu iwiri ya Ma Check Health, ndipo ndikofunikira kumvetsetsa kusiyana kwa momwe aliyense amagwiritsidwira ntchito.

Mayeso a Readiness adapangidwa kuti auze Kubernetes kuti pulogalamu yanu yakonzeka kuthana ndi magalimoto. Asanalole kuti ntchitoyo itumize magalimoto ku pod, Kubernetes ayenera kutsimikizira kuti kukonzekera bwino. Ngati mayeso a Readiness alephera, Kubernetes amasiya kutumiza magalimoto ku pod mpaka mayeso adutsa.

Mayeso a Liveness amauza Kubernetes ngati ntchito yanu ili yamoyo kapena yakufa. Pachiyambi choyamba, Kubernetes adzachisiya chokha, chachiwiri chidzachotsa pod yakufa ndikuyiyika ndi yatsopano.

Tiyerekeze kuti pulogalamu yanu imatenga mphindi imodzi kuti itenthetse ndikuyambitsa. Ntchito yanu sidzayamba kugwira ntchito mpaka pulogalamuyo itadzaza ndikugwira ntchito, ngakhale mayendedwe ayamba kale. Mudzakhalanso ndi zovuta ngati mukufuna kukulitsa kutumizidwa kwa makope angapo, chifukwa makope amenewo sayenera kulandira magalimoto mpaka atakonzeka. Komabe, mwachisawawa, Kubernetes ayamba kutumiza magalimoto akangoyamba mkati mwa chidebecho.

Mukamagwiritsa ntchito mayeso a Readiness, Kubernetes amadikirira mpaka pulogalamuyo igwire ntchito musanalole kuti ntchitoyi itumize anthu kukope latsopanolo.

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Tiyerekezenso chochitika china chomwe pulogalamuyo imapachikidwa kwa nthawi yayitali, kusiya zopempha zothandizira. Pamene ndondomekoyi ikupitirirabe, mwachisawawa Kubernetes adzaganiza kuti zonse zili bwino ndikupitiriza kutumiza zopempha ku pod yosagwira ntchito. Koma mukamagwiritsa ntchito Liveness, Kubernetes awona kuti pulogalamuyo siyikuperekanso zopempha ndipo idzayambitsanso pod yakufa mwachisawawa.

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Tiyeni tiwone momwe kukonzeka ndi kuthekera kumayesedwa. Pali njira zitatu zoyesera - HTTP, Command ndi TCP. Mutha kugwiritsa ntchito iliyonse kuti muwone. Njira yodziwika kwambiri yoyesera wogwiritsa ntchito ndi kafukufuku wa HTTP.

Ngakhale pulogalamu yanu si seva ya HTTP, mutha kupangabe seva yopepuka ya HTTP mkati mwa pulogalamu yanu kuti mugwirizane ndi mayeso a Liveness. Pambuyo pa izi, Kubernetes ayamba pinging pod, ndipo ngati yankho la HTTP lili mu 200 kapena 300 ms range, liwonetsa kuti pod ndi yathanzi. Kupanda kutero, gawoli lidzalembedwa kuti "lopanda thanzi".

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Pakuyesa kwa Command, Kubernetes amayendetsa lamulo mkati mwa chidebe chanu. Ngati lamulo libwerera ndi nambala yotuluka, ndiye kuti chidebecho chidzadziwika kuti ndi chathanzi, apo ayi, mutalandira nambala yotuluka kuchokera 1 mpaka 255, chidebecho chidzalembedwa kuti "chodwala". Njira yoyeserayi ndi yothandiza ngati simungathe kapena simukufuna kuyendetsa seva ya HTTP, koma mutha kuyendetsa lamulo lomwe limayang'ana thanzi la pulogalamu yanu.

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Njira yomaliza yotsimikizira ndi kuyesa kwa TCP. Kubernetes ayesa kukhazikitsa kulumikizana kwa TCP padoko lodziwika. Ngati izi zingatheke, chidebecho chimatengedwa kuti ndi chathanzi; ngati sichoncho, chimaonedwa kuti sichingagwire ntchito. Njirayi ikhoza kukhala yothandiza ngati mukugwiritsa ntchito momwe kuyesa ndi pempho la HTTP kapena kulamula sikugwira ntchito bwino. Mwachitsanzo, ntchito zazikulu zotsimikizira pogwiritsa ntchito TCP zitha kukhala gRPC kapena FTP.

Kubernetes machitidwe abwino. Kutsimikizira Kubernetes Liveness ndi Kukonzekera ndi Kuyesa Moyo

Mayesero akhoza kukhazikitsidwa m'njira zingapo ndi magawo osiyanasiyana. Mutha kufotokoza kuti akuyenera kuphedwa kangati, zomwe zikuyenda bwino ndi zolephera, komanso nthawi yayitali bwanji kuti mudikire mayankho. Kuti mumve zambiri, onani zolemba zamayeso a Readiness and Liveness. Komabe, pali mfundo imodzi yofunika kwambiri pakukhazikitsa mayeso a Liveness - kukhazikitsa koyambirira kwa kuyezetsa kuchedwa koyambaDelaySeconds. Monga ndanenera, kulephera kwa mayesowa kudzapangitsa kuti gawoli liyambitsidwenso. Chifukwa chake muyenera kuwonetsetsa kuti kuyezetsa sikuyambira mpaka pulogalamuyo itakonzeka, apo ayi iyamba kupalasa njinga poyambiranso. Ndikupangira kugwiritsa ntchito nthawi yoyambira ya P99 kapena nthawi yoyambira yoyambira kuchokera ku buffer. Kumbukirani kusintha izi pamene nthawi yoyambitsa pulogalamu yanu ikufulumira kapena pang'onopang'ono.

Akatswiri ambiri amatsimikizira kuti Health Checks ndi cheke chovomerezeka pamakina aliwonse ogawidwa, ndipo Kubernetes ndizosiyana. Kugwiritsa ntchito macheke azaumoyo kumapangitsa kuti Kubernetes ikhale yodalirika, yopanda mavuto ndipo ndiyosavuta kwa ogwiritsa ntchito.

Ipitirizidwa posachedwa kwambiri...

Zotsatsa zina πŸ™‚

Zikomo chifukwa chokhala nafe. Kodi mumakonda zolemba zathu? Mukufuna kuwona zambiri zosangalatsa? Tithandizeni potipatsa oda kapena kulimbikitsa anzathu, mtambo VPS kwa opanga kuchokera ku $ 4.99, ma analogi apadera a ma seva olowera, omwe adakupangirani inu: Chowonadi chonse chokhudza VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps kuchokera $19 kapena momwe mungagawire seva? (ikupezeka ndi RAID1 ndi RAID10, mpaka 24 cores mpaka 40GB DDR4).

Dell R730xd 2x yotsika mtengo ku Equinix Tier IV data center ku Amsterdam? Pokhapokha 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV kuchokera $199 ku Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - kuchokera $99! Werengani za Momwe mungamangire Infrastructure Corp. kalasi pogwiritsa ntchito ma seva a Dell R730xd E5-2650 v4 ofunika ma euro 9000 pa khobiri?

Source: www.habr.com

Kuwonjezera ndemanga