ʻO Redundancy ma Kubernetes: aia

ʻO Sergey koʻu inoa, no ITSumma wau, a makemake wau e haʻi iā ʻoe pehea mākou e hoʻokokoke ai i ka redundancy ma Kubernetes. I kēia mau lā, ua hana nui au i nā hana kūkākūkā e pili ana i ka hoʻokō ʻana i nā hoʻonā devops like ʻole no nā hui like ʻole, a, ʻoi aku hoʻi, e hana kokoke i nā papahana me ka hoʻohana ʻana iā K8s. I ka lā Uptime 4 hālāwai kūkā, i hoʻolaʻa ʻia i ka redundancy i nā hale hana paʻakikī, ua hana wau i kahi hōʻike e pili ana i ka redundancy o ka "cube", a eia kāna haʻi hou ʻana. E ao wale aku au iā ʻoe ma mua ʻaʻole ia he alakaʻi pololei i ka hana, akā he hōʻuluʻulu manaʻo no kēia kumuhana.

ʻO Redundancy ma Kubernetes: aia

Ma ke kumu, ʻo ka nānā ʻana a me ka redundancy nā mea hana nui ʻelua no ka hoʻonui ʻana i ka hoʻomanawanui hewa o kekahi papahana. Akā, ma hope o nā mea a pau, i loko o ka cuber nā mea a pau kaulike ia iho, e olelo mai oe, na mea unahi na mea a pau ia ia iho, a ina kekahi mea, e ala mai ia ia iho ... ʻO ia hoʻi, i ka wā o ka mua superficial study o ke kumuhana, i ka ninau o ka mea hoʻokokoke mai. ka K8s reservation, ua pane mai ka Internet iaʻu "no ke aha ? Manaʻo ka poʻe he mea kupua ʻo Kuber e hoʻopau i nā pilikia ʻoihana āpau a ʻaʻole e hāʻule ka papahana. Akā ... ʻaʻole ka honua i ka mea i ʻike ʻia.

Pehea mākou i hoʻokokoke ai i ke kaʻina hana kope ma mua? Loaʻa iā mākou nā kahua hoʻokipa like—ʻo ia hoʻi ka virtual a i ʻole ka lako paʻa. nā kikowaena, kahi a mākou i hoʻopili ai i ʻekolu mau hana maʻamau:

  1. ka hoʻonohonoho ʻana o nā code a me nā statics
  2. hoʻonohonoho hoʻonohonoho
  3. hoʻopili waihona waihona

A voila: i kēlā me kēia manawa ke hoʻololi mākou i kahi kahua mālama, hauʻoli nā mea a pau, ala mākou a hoʻopuehu.

ʻO Redundancy ma Kubernetes: aia

A he aha kā lākou e hāʻawi ai iā mākou e hoʻonui i ka loaʻa mau o kā mākou noi kubernetes? ʻO ka mea mua i ʻōlelo ʻia e ka palapala kuʻuna ʻole e kau i nā mīkini he nui, e hana i nā haku he nui - pono kā lākou helu e hoʻokō i nā kūlana no ka hoʻokō ʻana i kahi kōrum i loko o ka puʻupuʻu, a me etcd, api, MC, scheduler e hāpai ʻia ma kēlā me kēia haku ... A, me he mea lā, ua maikaʻi nā mea a pau: ke hāʻule kekahi mau nodes a i ʻole haku, e hoʻoponopono hou ʻia kā mākou hui a e hoʻomau ka hana. Me he kilokilo hou lā! Akā ʻo ka manawa pinepine, aia kā mākou pūʻulu i loko o ka kikowaena data like a hiki i kēia ke hāpai i kekahi mau nīnau. Pehea inā hele mai kahi mea ʻeli a wehe i ke kaula, pā ka uila, he waikahe ka honua? Ua uhi ʻia nā mea a pau, ʻaʻole hou kā mākou hui. Pehea e hoʻokokoke ai i ka mālama ʻana, e noʻonoʻo ana i kēia ʻaoʻao o ka pilikia?

ʻO ka mea mua, pono e loaʻa iā ʻoe kahi puʻupuʻu ʻē aʻe ma kahi wela wela, ʻo ia hoʻi, kahi pūʻulu hiki iā ʻoe ke hoʻololi i kēlā me kēia manawa. I ka manawa like, mai ka manaʻo o ka cuber, pono e like loa nā ʻōnaehana. ʻO ia hoʻi, inā he mau plug-in maʻamau ʻole no ka hana ʻana me ka ʻōnaehana faila, nā hoʻonā maʻamau no ka komo ʻana, pono lākou e like me kāu ʻelua (a i ʻole ʻekolu, a i ʻole ʻumi paha, inā loaʻa nā kālā a me ka hoʻoikaika ʻana o nā luna. ) pūʻulu. Pono e wehewehe pono i ʻelua pūʻulu o nā noi (deployments, statefulsets, daemonsets, cronjobs, etc.): ʻo wai o lākou e hiki ke hana ma ka standby i nā manawa āpau, a ʻo wai ka mea ʻoi aku ka maikaʻi ʻaʻole e holo a hiki i kahi hoʻololi pololei.

No laila, e like paha kā mākou pūʻulu waihona me kā mākou pūʻulu hana? ʻAʻole. Inā ma mua, ma ke ʻano o ka hana ʻana me nā papahana monolithic, me nā ʻenehana hao, mālama mākou i kahi ʻano like like, a laila i loko o ke ʻano o ka cuber, manaʻo wau ʻaʻole pono kēia. E nānā kākou i ke kumu.

No ka laʻana, e hoʻomaka me nā hui Kubernetes kumu - hoʻolālā - pono lākou e like. Pono e hoʻokuʻu ʻia nā noi e hiki ke hoʻopaʻa i ka hana kaʻa i kēlā me kēia manawa a hiki i kā mākou papahana ke hoʻomau i ke ola. Inā mākou e kamaʻilio e pili ana i nā faila hoʻonohonoho, a laila pono mākou e nānā inā like lākou a ʻaʻole paha. ʻO ia hoʻi, inā mākou, nā poʻe akamai, ʻaʻole mākou e hoʻohana i nā mea i pāpā ʻia a ʻaʻole mālama i kahi kumu ma K8s, a laila pono mākou e loaʻa nā hoʻonohonoho i ke kahua kaua i nā configmaps (ʻo ke kaʻina hana hoʻopaʻa i kūkulu ʻokoʻa ʻia). No laila, no ka hāʻawi ʻana i ke komo i ka waihona waihona waihona, pono mākou i kahi faila hoʻonohonoho ʻokoʻa (configmap). E like me kā mākou hana me nā mea huna: nā ʻōlelo huna no ke komo ʻana i ka waihona, api-ki; i kēlā me kēia manawa, hiki i kahi mea huna hakakā a i ʻole kahi mālama ke hana no mākou. I ka huina, ua loaʻa iā mākou ʻelua mau mea kubernetes, ʻaʻole pono e like nā mana hoʻihoʻi me nā mea kaua. ʻO ka mea hou aʻe e noho ai ʻo ia ka cronjob. ʻAʻole pono e like nā cronjobs kū i ka pūʻulu o nā cronjobs puʻupuʻu hana! Inā mākou e hoʻokiʻekiʻe i kahi puʻupuʻu hoʻihoʻi a hoʻokiʻekiʻe loa me nā cronjobs a pau, a laila, no ka laʻana, e loaʻa i nā kānaka ʻelua leka mai ʻoe i ka manawa like ma kahi o hoʻokahi. A i ʻole kekahi ʻano o ka synchronization o ka ʻikepili me nā kumu o waho e hana ʻelua, kēlā me kēia, hoʻomaka mākou e maʻi, uē, uē a hoʻohiki.

ʻO Redundancy ma Kubernetes: aia

Akā, pehea e hāʻawi mai ai nā poʻe mai ka Pūnaewele iā mākou e hoʻonohonoho i kahi puʻupuʻu redundant? ʻO ka pane kaulana ʻelua ma hope o "no ke aha?" - hoʻohana i ka Kubernetes Federation.

He aha ia? ʻO ia, e ʻōlelo mākou, he pūʻulu meta-nui. Inā mākou e noʻonoʻo i ka hoʻolālā o ka cuber - kahi i loaʻa iā mākou kahi haku, he nui nā nodes - a laila mai ka manaʻo o ka federation, loaʻa iā mākou kahi haku a me kekahi mau nodes, ʻo kēlā me kēia node he hui kaʻawale. ʻO ia hoʻi, hana mākou me nā hui like, me nā primitives like, e like me ka cuber hoʻokahi, wili wale mākou a huli ʻole me kā mākou mau mīkini kino, akā me nā pūʻulu holoʻokoʻa. I loko o ke kaʻina o ka hui, loaʻa iā mākou kahi hoʻonohonoho piha o nā kumuwaiwai hui mai nā mākua i nā keiki. No ka laʻana, inā mākou i hoʻomaka i kekahi ʻano hoʻolaha ma o ka hui, e hoʻoili ʻia i kēlā me kēia o kā mākou mau puʻupuʻu keiki. Inā mākou e lawe i kahi configmap, kahi huna, e ʻōwili iā ia ma luna o ka federation, e laha aku i nā pūʻulu keiki a pau; i ka manawa like, ʻae ka hui iā mākou e hana i kā mākou mau kumuwaiwai ma nā keiki. ʻO ia hoʻi, ua lawe mākou i kekahi configmap, hoʻonoho iā ia ma o ka federation, a laila, inā pono mākou e hoʻoponopono i kekahi mea ma nā pūʻulu kikoʻī, hele mākou e hoʻoponopono ma kahi hui ʻokoʻa, a ʻaʻole e hoʻonohonoho ʻia kēia hoʻololi ma nā wahi āpau.

ʻO Kubernetes Federation kahi mea hana i kēia manawa, a ʻaʻole ia e kākoʻo i ka pūʻulu holoʻokoʻa o nā kumuwaiwai i hāʻawi ʻia e K8s ponoʻī: i ka manawa o ka hoʻolaha ʻana i kekahi o nā mana mua o ka palapala, ua kamaʻilio wale ʻo ia e pili ana i ke kākoʻo ʻana i nā palapala config, hoʻolālā no kahi. replica-set, komo. ʻAʻole i kākoʻo ʻia nā mea huna, ʻaʻole i kākoʻo ʻia ka hana me ka leo. Kau palena ʻole. ʻOi loa inā makemake mākou i ka leʻaleʻa - no ka laʻana, e hoʻololi i kā mākou waiwai ponoʻī iā Kubernetes ma o ka wehewehe kumu waiwai maʻamau - ʻaʻole mākou e hoʻokuke iā lākou i loko o ka hui. ʻO ia hoʻi, me he mea lā ... he hoʻonā like loa me ka ʻoiaʻiʻo, akā hana ia iā mākou e pana pinepine iā mākou iho i ka wāwae. Ma ka ʻaoʻao ʻē aʻe, ʻae ka federation iā mākou e hoʻokele maʻalahi i kā mākou replicase. No ka laʻana, makemake mākou i 10 replicas o kā mākou noi e holo, ma ke ʻano maʻamau, e puʻunaue ka hui i kēia helu ma waena o ka helu o nā pūʻulu. A hiki ke hoʻonohonoho ʻia nā mea a pau! ʻO ia hoʻi, hiki iā ʻoe ke kuhikuhi pono e mālama i 6 replicas o kā mākou noi ma ka hui kaua, a ʻo 4 replicas wale nō o kā mākou noi ma ka puʻupuʻu waihona, e mālama i nā kumuwaiwai, a i ʻole no kāu ʻoliʻoli ponoʻī. He mea maʻalahi hoʻi. Akā me ka federation, pono mākou e hoʻohana i kekahi mau hoʻonā hou, e kau i kahi mea ma ka hele, e hoʻoikaika iā mākou iho e noʻonoʻo hou aʻe ...

Hiki paha ke hoʻokokoke i ke kaʻina hana o ka redundant Kuber ma kekahi ʻano maʻalahi? He aha nā mea hana i loaʻa iā mākou?

ʻO ka mea mua, loaʻa iā mākou kekahi ʻano ci / cd system, ʻo ia hoʻi, ʻaʻole mākou e hele lima, ʻaʻole mākou e kākau i nā kikowaena hana / noi. Hoʻokumu ka ʻōnaehana i ka yamlʻiki no kā mākou pahu.

ʻO ka lua, aia kekahi mau puʻupuʻu, loaʻa iā mākou hoʻokahi a i ʻole kekahi (inā he akamai mākou), a mākou i lawe ai a mālama ʻia. A aia kahi mea hoʻohana kubectl maikaʻi e hiki ke hana me nā pūʻulu lehulehu i ka manawa like.

ʻO Redundancy ma Kubernetes: aia

No laila: i koʻu manaʻo, ʻo ka hoʻonā maʻalahi a pololei loa no ke kūkulu ʻana i kahi puʻupuʻu kākoʻo he hoʻonohonoho like mua. Aia kekahi ʻano pipeline i ka ʻōnaehana ci / cd; ʻO ka mea mua, kūkulu mākou i kā mākou mau ipu, hoʻāʻo a ʻōwili i nā noi ma o kubectl i loko o nā pūʻulu kūʻokoʻa. Hiki iā mākou ke kūkulu i nā helu hoʻokahi no kekahi mau pūʻulu. No laila, hoʻoholo pū mākou i ka hāʻawi ʻana i nā hoʻonohonoho i kēia pae. Hiki iā ʻoe ke hoʻoholo mua i kahi hoʻonohonoho hoʻonohonoho no kā mākou puʻupuʻu kaua, kahi hoʻonohonoho hoʻonohonoho no kahi pūʻulu hoʻihoʻi, a ma ka pae ci / cd o ka ʻōnaehana e ʻōwili i kahi kaiapuni hana i loko o kahi pūʻulu hana, kahi ʻāpana hoʻihoʻi i kahi pūʻulu kākoʻo. . Ke hoʻohālikelike ʻia me ka hui ʻana, ma hope o ka wehewehe ʻana i kahi punawai hui, ʻaʻole pono e hele i kēlā me kēia pūʻulu keiki a wehewehe hou i kekahi mea. Ua hana mākou i kēia ma mua. He mau hoa maikai kakou.

Akā ... aia ... kākau wau, aia kahi "aʻa o nā mea ʻino āpau", akā aia ʻelua o lākou. ʻO ka mea mua, ka ʻōnaehana faila. Aia kekahi ʻano PV, a i ʻole mākou e hoʻohana i kahi waiho waho. Inā mālama mākou i nā faila i loko o ka puʻupuʻu, a laila pono mākou e hahai i nā hana kahiko i waiho ʻia mai nā lā o ka hana hao: no ka laʻana, synchronize me lsync. ʻAe, a i ʻole kekahi koʻi ʻē aʻe āu i makemake ai iā ʻoe iho. Hoʻopili mākou i nā mea a pau i nā kaʻa ʻē aʻe a ola.

ʻO ka lua, a me ka ʻoiaʻiʻo, ʻoi aku ka nui o ka mea e hina ai ka waihona. Inā mākou he poʻe akamai a ʻaʻole mālama i ka waihona i loko o ka cuber, a laila ke kaʻina o ke kākoʻo ʻana i ka ʻikepili e like me ka hoʻolālā kahiko o ka haku-kauā replication, a laila hoʻololi, e hopu mākou i ka replica a ola maikaʻi mākou. Akā inā mālama mākou i kā mākou DB i loko o ka pūʻulu, a laila ma ke kumu he nui nā hoʻonā i hoʻomākaukau ʻia no ka hoʻonohonoho ʻana i ka replica master-slave hoʻokahi, nā hopena he nui no ka hoʻonui ʻana i ka DB i loko o ka cuber.
E pili ana i ke kākoʻo ʻana i nā ʻikepili, ua heluhelu ʻia kahi piliona hōʻike, hoʻokahi piliona ʻatikala i kākau ʻia, ʻaʻohe mea hou, ʻoiaʻiʻo, pono ʻia ma aneʻi. Ma keʻano laulā, e hahai i kāu moeʻuhane, e ola e like me kou makemake, e hana i nā koʻokoʻo paʻakikī no ʻoe iho, akā e noʻonoʻo e noʻonoʻo pehea ʻoe e mālama ai i kēia mau mea āpau.

A i kēia manawa pehea, ma ke kumu, e loaʻa iā mākou ke kaʻina o ka hoʻololi ʻana i kahi kahua hoʻihoʻi i ke ahi. ʻO mākou, ʻo ka mea mua, hoʻolaha i nā noi stateless i ka like. ʻAʻole pili lākou i ka loiloi ʻoihana o kā mākou mau noi, kā mākou papahana, hiki iā mākou ke mālama mau i ʻelua pūʻulu o nā noi e holo ana, a hiki iā lākou ke hoʻomaka e loaʻa nā kaʻa. He mea nui e nānā i ke kaʻina hana o ka hoʻololi ʻana i kahi kahua hoʻihoʻi - pono ʻoe e wehewehe hou i nā hoʻonohonoho? No ka laʻana, loaʻa iā mākou kahi pūʻulu kubernetes hana, loaʻa iā mākou kahi pūʻulu kubernetes standby, loaʻa iā mākou kahi waihona kumu waho, loaʻa iā mākou kahi waihona kumu kūʻai. Loaʻa iā mākou nā koho ʻehā no ka hoʻomaka ʻana o kēia mau noi i ka prod e launa pū me kekahi. Hiki iā mākou ke hoʻololi i ke kumu, a ua ʻike ʻia e pono mākou e hoʻololi i ke kaʻa i ke kahua hou i ka pūʻulu meaʻai, a i ʻole hiki iā mākou ke loaʻa i kahi pūʻulu - a neʻe mākou i ka mālama ʻana, akā hoʻomau mākou e hana me ka waihona meaʻai, maikaʻi. , ʻO ke kolu o ka koho, i ka wā i loaʻa ai iā mākou kēia , a laila ua loaʻa kekahi mea, a hoʻololi mākou i nā noi ʻelua, hoʻololi hou i kā mākou hoʻonohonoho ʻana i hana mua nā noi hou me ka ʻikepili hou.

ʻAe, ʻoiaʻiʻo, he aha nā hopena e hiki ke huki ʻia mai kēia mau mea āpau?

ʻO Redundancy ma Kubernetes: aia

ʻO ka hopena mua: e noho maikaʻi me kahi mālama. Akā pipiʻi. Akā ʻo ka mea maikaʻi, ʻaʻole e noho me kahi mālama hoʻokahi. ʻO ke kūpono, pono ʻoe e noho me kekahi mau mea mālama. ʻO ka mea mua, ʻaʻole ma ka liʻiliʻi loa ka mālama ʻana i hoʻokahi DC, a, ʻo ka lua, ma ka liʻiliʻi loa ma kahi hoʻokipa ʻē aʻe. Ua hana pinepine ia - a ma kaʻu hana. ʻO ka mea pōʻino,ʻaʻole hiki iaʻu ke inoa i nā papahana, i ka manawa wale nō i loaʻa ai ke ahi ma ke kikowaenaʻikepili ... Ua like wau me kēia: ke hoʻololi nei mākou i ka waihona! A ʻo nā kikowaena hoʻihoʻi i loko o ka pahu hoʻokahi ...

A i ʻole e noʻonoʻo ua pāpā ʻia ʻo Amazon ma Rūsia (a ʻo ia nō). A ʻo ia: he aha ke kumu o ka loaʻa ʻana o kā mākou waihona ma kahi amazon ʻē aʻe? ʻAʻole loaʻa ʻo ia. No laila ke haʻi hou aku nei au: mālama mākou i kahi mālama, ma ka liʻiliʻi ma kahi DC ʻē aʻe, a ʻoi aku ka maikaʻi me kahi hoʻokipa ʻē aʻe.

ʻO ka hopena ʻelua: inā kamaʻilio kāu noi i kāu cuber me kekahi mau kumu o waho (hiki ke lilo kēia i kahi waihona a i ʻole kekahi api waho), e hoʻomaopopo ʻoe e wehewehe i kahi lawelawe me kahi Endpoint waho i ʻole ʻoe e hoʻihoʻi i ka manawa. o ka hoʻololi ʻana i 15 o kāu mau noi e kīkēkē ana ma ka waihona like. E wehewehe i ka waihona ma ke ʻano he lawelawe ʻokoʻa, e kīkēkē iā ia me he mea lā ua loaʻa iā ʻoe i loko o ka puʻupuʻu: inā he kumu kāu, hoʻololi ʻoe i ip ma kahi hoʻokahi a hoʻomau i ka noho hauʻoli.

A ʻo ka hope: makemake wau i ka "cube", a me nā hoʻokolohua me ia. A makemake nō hoʻi au e kaʻana like i nā hopena o kēia mau hoʻokolohua a me kaʻu ʻike pilikino. No laila, ua hoʻopaʻa wau i kahi moʻo o nā webinars e pili ana iā K8s, aloha mai kā mākou youtube channel no nā kikoʻī.

Source: www.habr.com

E kūʻai i ka hoʻokipa hilinaʻi no nā pūnaewele me ka pale DDoS, nā kikowaena VPS VDS 🔥 E kūʻai i ka hoʻokipa pūnaewele hilinaʻi me ka pale DDoS, nā kikowaena VPS VDS | ProHoster