Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Таҷрибаҳои беҳтарини Kubernetes. Эҷоди контейнерҳои хурд
Таҷрибаҳои беҳтарини Kubernetes. Ташкилоти Кубернетес бо фазои ном

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Идоракунии системаҳои тақсимшуда метавонад душвор бошад, зеро онҳо унсурҳои зиёди ҳаракаткунанда ва тағирёбанда доранд, ки ҳама бояд барои фаъолияти система дуруст кор кунанд. Агар яке аз элементҳо ноком шавад, система бояд онро ошкор кунад, онро давр занад ва ислоҳ кунад ва ҳамаи ин бояд ба таври худкор анҷом дода шавад. Дар ин силсилаи беҳтарин таҷрибаҳои Kubernetes мо меомӯзем, ки чӣ гуна санҷишҳои омодагӣ ва зиндаиро барои санҷиши саломатии кластери Kubernetes насб кунем.

Санҷиши саломатӣ як роҳи соддаест, ки ба система хабар диҳад, ки намунаи барномаи шумо кор мекунад ё не. Агар намунаи аризаи шумо хомӯш бошад, хидматҳои дигар набояд ба он дастрасӣ пайдо кунанд ё ба он дархост ирсол накунанд. Ба ҷои ин, дархост бояд ба нусхаи дигари барнома, ки аллакай кор мекунад ё дертар оғоз мешавад, фиристода шавад. Илова бар ин, система бояд функсияҳои гумшудаи замимаи шуморо барқарор кунад.

Ба таври нобаёнӣ, Kubernetes ҳангоми кор кардани ҳама контейнерҳо дар дохили подкҳо интиқоли трафикро ба подк оғоз мекунад ва контейнерҳоро ҳангоми садама аз нав оғоз мекунад. Ин рафтори пешфарзии система метавонад барои оғоз ба қадри кофӣ хуб бошад, аммо шумо метавонед бо истифода аз санҷишҳои солимии фармоишӣ эътимоднокии ҷойгиркунии маҳсулоти худро беҳтар кунед.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Хушбахтона, Кубернетес иҷрои ин корро хеле осон мекунад, бинобар ин барои нодида гирифтани ин чекҳо узре нест. Kubernetes ду намуди Санҷиши саломатиро пешниҳод мекунад ва фаҳмидани фарқиятҳо дар истифодаи ҳар кадоми онҳо муҳим аст.

Санҷиши омодагӣ барои он тарҳрезӣ шудааст, ки ба Kubernetes бигӯяд, ки барномаи шумо барои коркарди трафик омода аст. Пеш аз он ки ба хидмат иҷозат диҳад, ки трафикро ба подк интиқол диҳад, Кубернетес бояд тафтиш кунад, ки санҷиши омодагӣ бомуваффақият аст. Агар санҷиши Омодагӣ ноком шавад, Кубернетес фиристодани трафикро ба подк то гузаштани санҷиш қатъ мекунад.

Санҷиши Зиндагӣ ба Кубернетес мегӯяд, ки аризаи шумо зинда ё мурда аст. Дар ҳолати аввал, Кубернетес онро танҳо мегузорад, дар дуюм он подтаи мурдаро нест мекунад ва онро бо наваш иваз мекунад.

Биёед як сенарияеро тасаввур кунем, ки барномаи шумо барои гарм шудан ва оғоз кардани он 1 дақиқа вақт лозим аст. То он даме, ки барнома пурра пур ва кор накунад, хидмати шумо кор намекунад, гарчанде ки ҷараёни кор аллакай оғоз шудааст. Агар шумо хоҳед, ки ин паҳнкуниро ба нусхаҳои сершумор васеъ кунед, шумо инчунин мушкилот хоҳед дошт, зеро он нусхаҳо то пурра омода нашаванд, набояд трафикро қабул кунанд. Аммо, бо нобаёнӣ, Kubernetes пас аз оғоз шудани равандҳо дар дохили контейнер интиқоли трафикро оғоз мекунад.

Ҳангоми истифодаи санҷиши Омодагӣ, Kubernetes интизор мешавад, ки барнома пурра кор кунад, то ба хидмат иҷозат диҳад, ки трафикро ба нусхаи нав фиристад.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Биёед як сенарияи дигареро тасаввур кунем, ки дар он барнома муддати тӯлонӣ овезон шуда, хидматрасонии дархостҳоро қатъ мекунад. Вақте ки ин раванд идома дорад, ба таври нобаёнӣ Кубернетес ҳама чиз хуб аст ва фиристодани дархостҳоро ба подкоҳи корношоям идома медиҳад. Аммо ҳангоми истифодаи Liveness, Кубернетес муайян мекунад, ки барнома дигар ба дархостҳо хидмат намекунад ва ба таври нобаёнӣ pod-и мурдаро аз нав оғоз мекунад.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Биёед бубинем, ки чӣ гуна омодагӣ ва қобилиятнокӣ санҷида мешавад. Се усули санҷиш вуҷуд дорад - HTTP, Фармон ва TCP. Шумо метавонед яке аз онҳоро барои тафтиш истифода баред. Усули маъмултарини санҷиши корбар санҷиши HTTP мебошад.

Ҳатто агар барномаи шумо сервери HTTP набошад ҳам, шумо метавонед дар дохили барномаи худ сервери HTTP-и сабукро эҷод кунед, то бо санҷиши Liveness ҳамкорӣ кунед. Пас аз ин, Кубернетес ба пинг кардани pod оғоз мекунад ва агар посухи HTTP дар диапазони 200 ё 300 мс бошад, ин нишон медиҳад, ки подк солим аст. Дар акси ҳол, модул ҳамчун "носолим" қайд карда мешавад.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Барои санҷишҳои Фармон, Kubernetes фармонро дар дохили контейнери шумо иҷро мекунад. Агар фармон бо рамзи баромади сифр баргардад, пас контейнер солим қайд карда мешавад, дар акси ҳол, ҳангоми гирифтани рақами ҳолати баромад аз 1 то 255, контейнер ҳамчун "бемор" қайд карда мешавад. Ин усули санҷиш муфид аст, агар шумо сервери HTTP-ро иҷро карда наметавонед ё нахоҳед, аммо тавонед фармонеро иҷро кунед, ки саломатии барномаи шуморо тафтиш мекунад.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Механизми ниҳоии санҷиш санҷиши TCP мебошад. Кубернетес кӯшиш мекунад, ки дар бандари муайяншуда пайвасти TCP барқарор кунад. Агар ин корро кардан мумкин бошад, контейнер солим ҳисобида мешавад, агар не, он ғайриимкон ҳисобида мешавад. Ин усул метавонад муфид бошад, агар шумо сенарияеро истифода баред, ки санҷиш бо дархости HTTP ё иҷрои фармон чандон хуб кор намекунад. Масалан, хидматҳои асосии санҷиш бо истифода аз TCP gRPC ё FTP хоҳанд буд.

Таҷрибаҳои беҳтарини Kubernetes. Тасдиқи зиндагонии Кубернетес бо санҷишҳои омодагӣ ва зинда

Санҷишҳоро бо чанд роҳ бо параметрҳои гуногун танзим кардан мумкин аст. Шумо метавонед муайян кунед, ки онҳо бояд чанд вақт иҷро карда шаванд, остонаи муваффақият ва нокомӣ кадомҳоянд ва то чӣ андоза интизории посухҳо лозим аст. Барои маълумоти иловагӣ, ба ҳуҷҷатҳои санҷишҳои омодагӣ ва зинда будан нигаред. Бо вуҷуди ин, як нуқтаи хеле муҳим дар ташкили санҷиши Liveness вуҷуд дорад - танзими ибтидоии таъхири санҷиши initialDelaySeconds. Тавре ки ман зикр кардам, нокомии ин санҷиш боиси аз нав оғоз шудани модул мегардад. Аз ин рӯ, шумо бояд боварӣ ҳосил кунед, ки санҷиш то он даме, ки барнома ба кор омода нашавад, оғоз нашавад, вагарна он тавассути бозоғозкунӣ ба велосипедронӣ оғоз мекунад. Ман тавсия медиҳам, ки вақти оғози P99 ё вақти миёнаи оғози барнома аз буфер истифода шавад. Дар хотир доред, ки ин арзишро танзим кунед, зеро вақти оғози барномаи шумо тезтар ё сусттар мешавад.

Аксари коршиносон тасдиқ мекунанд, ки Санҷиши саломатӣ санҷиши ҳатмӣ барои ҳама гуна системаи тақсимшуда мебошад ва Kubernetes истисно нест. Истифодаи санҷишҳои саломатии хидматрасонӣ кори боэътимод ва бе мушкилоти Kubernetes-ро таъмин мекунад ва барои корбарон осон аст.

Давомаш ба зудӣ...

Баъзе рекламаҳо 🙂

Ташаккур ба шумо барои бо мо мондан. Мақолаҳои мо ба шумо маъқуланд? Мехоҳед мундариҷаи ҷолибтарро бубинед? Бо фармоиш додан ё тавсия додан ба дӯстон моро дастгирӣ кунед, абр VPS барои таҳиягарон аз $4.99, аналоги беназири серверҳои сатҳи ибтидоӣ, ки аз ҷониби мо барои шумо ихтироъ шудааст: Тамоми ҳақиқат дар бораи VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps аз $19 ё чӣ гуна мубодила кардани сервер? (бо RAID1 ва RAID10, то 24 ядро ​​ва то 40 ГБ DDR4 дастрас аст).

Dell R730xd дар маркази додаҳои Equinix Tier IV дар Амстердам 2 маротиба арзонтар аст? Танҳо дар ин ҷо 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ аз $199 дар Нидерландия! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - аз $99! Дар бораи хондан Корпоратсияи инфраструктураро чӣ гуна бояд сохт. синф бо истифодаи серверҳои Dell R730xd E5-2650 v4 ба маблағи 9000 XNUMX евро барои як динор?

Манбаъ: will.com

Илова Эзоҳ