Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes

Cube-on-cube, metaclusters, honeycombs, mahele waiwai

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 1. Pūnaehana kaiaola Kubernetes ma Alibaba Cloud

Mai ka makahiki 2015, ʻo Alibaba Cloud Container Service no Kubernetes (ACK) kekahi o nā lawelawe kapuaʻi wikiwiki e ulu nei ma Alibaba Cloud. Hāʻawi ia i nā mea kūʻai aku he nui a kākoʻo pū i nā ʻōnaehana kūloko o Alibaba a me nā lawelawe ʻē aʻe o ka hui.

E like me nā lawelawe pahu like mai nā mea hoʻolako ao honua, ʻo kā mākou mea nui i ka hilinaʻi a me ka loaʻa. No laila, ua hoʻokumu ʻia kahi paepae hiki ke hoʻonui a hiki i ke ao holoʻokoʻa no nā ʻumi kaukani o nā pūʻulu Kubernetes.

Ma kēia ʻatikala, e kaʻana like mākou i kā mākou ʻike no ka hoʻokele ʻana i kahi heluna nui o nā pūʻulu Kubernetes ma nā ʻōnaehana kapua, a me ka hoʻolālā ʻana o ka paepae lalo.

komo

Ua lilo ʻo Kubernetes i ka maʻamau de facto no nā ʻano hana like ʻole ma ke ao. E like me ka hōʻike ʻana ma ka Fig. 1 ma luna aʻe, ke holo nei nā noi Alibaba Cloud ma nā pūʻulu Kubernetes: nā palapala mokuʻāina a me nā ʻāina ʻole, a me nā luna noi. He kumuhana hoihoi a koʻikoʻi ka hoʻokele Kubernetes no ka poʻe ʻenekinia e kūkulu a mālama i nā ʻoihana. I ka hiki ʻana i nā mea hoʻolako kapua e like me Alibaba Cloud, hiki mai ka pilikia o ka scaling i mua. Pehea e hoʻokele ai i nā pūʻulu Kubernetes ma kēia pālākiō? Ua uhi mākou i nā hana maikaʻi loa no ka mālama ʻana i nā pūʻulu Kubernetes nui 10-node. ʻOiaʻiʻo, he pilikia scaling hoihoi kēia. Akā aia kekahi pālākiō ʻē aʻe: ka nui nā pūʻulu iā lākou iho.

Ua kūkākūkā mākou i kēia kumuhana me nā mea hoʻohana ACK he nui. ʻO ka hapa nui o lākou e koho e holo i nā kakini, inā ʻaʻole i nā haneli, nā puʻupuʻu Kubernetes liʻiliʻi a i ʻole. Aia nā kumu maikaʻi no kēia: ka palena ʻana i ka pōʻino, ka hoʻokaʻawale ʻana i nā pūʻulu no nā hui like ʻole, ka hana ʻana i nā pūʻulu virtual no ka hoʻāʻo ʻana. Inā manaʻo ʻo ACK e lawelawe i ka lehulehu ākea me kēia ʻano hoʻohana, pono ia e hoʻokele me ka hilinaʻi a me ka maikaʻi o ka nui o nā puʻupuʻu ma nā wahi ʻoi aku ma mua o 20.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 2. Nā pilikia o ka mālama ʻana i ka nui o nā pūʻulu Kubernetes

He aha nā pilikia nui o ka mālama ʻana i nā pūʻulu ma kēia pālākiō? E like me ka mea i hōʻike ʻia ma ke kiʻi, ʻehā mau pilikia e hoʻoponopono ai:

  • Heterogeneity

Pono ʻo ACK e kākoʻo i nā ʻano hui like ʻole, me ka maʻamau, serverless, Edge, Windows, a me nā mea ʻē aʻe. Pono nā hui like ʻole i nā koho like ʻole, nā ʻāpana, a me nā hiʻohiʻona hoʻokipa. Pono kekahi mau mea kūʻai aku i ke kōkua me ka hana maʻamau no kā lākou mau hihia kikoʻī.

  • Nā nui hui like ʻole

ʻOkoʻa ka nui o nā puʻupuʻu, mai nā node ʻelua me nā poʻi liʻiliʻi a i ʻumi kaukani o nā node me nā tausani o nā pods. He ʻokoʻa nō hoʻi nā pono waiwai. Hiki i ka hoʻokaʻawale ʻana i nā kumuwaiwai kūpono ʻole ke hoʻopilikia i ka hana a i ʻole ke kumu ʻole.

  • Nā mana like ʻole

Ke ulu wikiwiki nei nā Kubernetes. Hoʻokuʻu ʻia nā mana hou i kēlā me kēia mau mahina. Makemake mau nā mea kūʻai e hoʻāʻo i nā hiʻohiʻona hou. No laila makemake lākou e kau i ka ukana hoʻāʻo ma nā mana hou o Kubernetes a me ka ukana hana ma nā mea paʻa. No ka hoʻokō ʻana i kēia koi, pono e hāʻawi mau ʻo ACK i nā mana hou o nā Kubernetes i nā mea kūʻai aku me ka mālama ʻana i nā mana paʻa.

  • Hoʻokō palekana

Māhele ʻia nā hui ma nā ʻāpana like ʻole. No laila, pono lākou e hoʻokō i nā koi palekana like ʻole a me nā lula kūhelu. No ka laʻana, pono e hoʻokō GDPR kahi pūʻulu ma ʻEulopa, aʻo ke ao kālā ma Kina e loaʻa i nā papa o ka pale. Pono kēia mau koi a ʻaʻole ʻae ʻia ka haʻalele ʻana iā lākou, no ka mea, hana kēia i nā pilikia nui no nā mea kūʻai aku o ka paepae ao.

Hoʻolālā ʻia ka paepae ACK e hoʻoponopono i ka hapa nui o nā pilikia i luna. I kēia manawa ʻoi aku ka hilinaʻi a paʻa i ka mālama ʻana ma mua o 10 tausani Kubernetes cluster a puni ka honua. E nānā kākou i ka hoʻokō ʻia ʻana o kēia, e komo pū ana ma o kekahi mau kumu kumu hoʻolālā kiʻi.

mea i manao ai

Cube-on-cube a me ka waihona meli

ʻAʻole like me kahi hierarchy kikowaena, hoʻohana maʻamau ka hale hoʻolālā pūnaewele e hoʻonui i kahi paepae ma mua o kahi kikowaena data hoʻokahi a i ʻole e hoʻonui i ke ʻano o ka hoʻihoʻi ʻana i ka pōʻino.

Loaʻa i kēlā me kēia māhele o ka Alibaba Cloud kekahi mau ʻāpana (AZ) a pili pinepine i kahi kikowaena data kikoʻī. Ma kahi ʻāpana nui (e laʻa me Huangzhou), he mau tausani o nā hui kūʻai Kubernetes e holo ana i ka ACK.

Mālama ʻo ACK i kēia mau pūʻulu Kubernetes me ka hoʻohana ʻana iā Kubernetes ponoʻī, ʻo ia hoʻi, loaʻa iā mākou kahi pūʻulu Kubernetes e holo ana e hoʻokele i nā pūʻulu Kubernetes. Ua kapa ʻia kēia hoʻolālā ʻo “kube-on-kube” (KoK). Hoʻomaʻamaʻa ka hoʻolālā KoK i ka hoʻokele ʻana i nā pūʻulu o nā mea kūʻai aku no ka mea he maʻalahi ka hoʻonohonoho ʻana o ka puʻupuʻu. ʻO ka mea nui, hiki iā mākou ke hoʻohana hou i nā hiʻohiʻona Kubernetes maoli. No ka laʻana, ka hoʻokele ʻana i nā kikowaena API ma o ka waiho ʻana, me ka hoʻohana ʻana i ka mea hana etcd e hoʻokele i nā etcds he nui. ʻO ia recursion e lawe mau i ka leʻaleʻa kūikawā.

Hoʻonohonoho ʻia kekahi mau pūʻulu metacluster Kubernetes i loko o hoʻokahi wahi, e pili ana i ka nui o nā mea kūʻai aku. Kapa mākou i kēia mau pūnaewele metaclusters. No ka pale ʻana i ka hiki ʻole o kahi ʻāpana holoʻokoʻa, kākoʻo ʻo ACK i nā hoʻolaha lehulehu ma kahi ʻāpana hoʻokahi: hāʻawi ka metacluster i nā ʻāpana kumu kumu cluster Kubernetes ma nā ʻāpana he nui a holo iā lākou i ka manawa like, ʻo ia hoʻi, ma ke ʻano multi-active. No ka hōʻoia ʻana i ka hilinaʻi a me ka pono o ka haku, hoʻomaikaʻi ʻo ACK i ka hoʻokomo ʻana o nā ʻāpana a hōʻoia i ka pili ʻana o ka server API a me etcd i kekahi i kekahi.

Hiki i kēia kŘkohu iā ʻoe ke hoʻokele i nā Kubernetes me ka maikaʻi, ka maʻalahi a me ka hilinaʻi.

Hoʻolālā waiwai Metacluster

E like me kā mākou i ʻōlelo ai, pili ka helu o nā metaclusters i kēlā me kēia wahi i ka helu o nā mea kūʻai aku. Akā i ka manawa hea e hoʻohui ai i kahi metacluster hou? He pilikia hoʻolālā waiwai maʻamau kēia. Ma ke ʻano he lula, he mea maʻamau ka hana ʻana i kahi mea hou i ka wā i pau ai nā metaclusters i kēia manawa i kā lākou waiwai āpau.

E lawe kākou i nā kumuwaiwai pūnaewele, no ka laʻana. Ma ka hoʻolālā KoK, ua hoʻonohonoho ʻia nā ʻāpana Kubernetes mai nā pūʻulu mea kūʻai aku ma ke ʻano he pods i kahi metacluster. Hoʻohana mākou Terway (Fig. 3) he plugin hana kiʻekiʻe i hoʻomohala ʻia e Alibaba Cloud no ka hoʻokele pūnaewele pahu. Hāʻawi ia i kahi hoʻonohonoho waiwai o nā kulekele palekana a hiki iā ʻoe ke hoʻopili i nā ao pilikino virtual (VPC) o nā mea kūʻai aku ma o ka Alibaba Cloud Elastic Networking Interface (ENI). No ka hāʻawi pono ʻana i nā kumuwaiwai pūnaewele ma waena o nā nodes, pods a me nā lawelawe i kahi metacluster, pono mākou e nānā pono i kā lākou hoʻohana ʻana i loko o ka metacluster o nā ao pilikino virtual. Ke pau nā kumuwaiwai pūnaewele, hana ʻia kahi kelepona hou.

No ka hoʻoholo ʻana i ka helu maikaʻi loa o nā puʻupuʻu mea kūʻai aku i kēlā me kēia metacluster, e noʻonoʻo pū mākou i kā mākou mau kumukūʻai, nā koi paʻa, quota waiwai, nā koi hilinaʻi a me nā helu. Hoʻoholo ʻia e hana i kahi metacluster hou ma muli o kēia ʻike āpau. E ʻoluʻolu e hiki ke hoʻonui nui ʻia nā puʻupuʻu liʻiliʻi i ka wā e hiki mai ana, no laila e hoʻonui ʻia ka hoʻohana waiwai inā ʻaʻole i loli ka nui o nā puʻupuʻu. Hāʻawi maʻamau mākou i nā wahi kaʻawale no kēlā me kēia puʻupuʻu e ulu ai.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 3. Hoʻolālā pūnaewele ʻo Terway

Hoʻonui i nā ʻāpana wizard ma nā pūʻulu mea kūʻai aku

Loaʻa i nā ʻāpana wizard nā kumuwaiwai ʻokoʻa. Ke hilinaʻi nei lākou i ka helu o nā nodes a me nā pods i loko o ka pūʻulu, ka helu o nā mea hoʻokele maʻamau / mea hoʻohana e launa pū me APIServer.

Ma ACK, ʻokoʻa kēlā me kēia pūʻulu mea kūʻai Kubernetes i ka nui a me nā koi manawa holo. ʻAʻohe hoʻonohonoho hoʻonohonoho holoʻokoʻa no ke kau ʻana i nā ʻāpana wizard. Inā kuhi hewa mākou i ka palena haʻahaʻa haʻahaʻa no ka mea kūʻai aku nui, a laila ʻaʻole hiki i kāna puʻupuʻu ke hoʻokō i ka ukana. Inā hoʻonoho ʻoe i ka palena kiʻekiʻe conservative no nā pūʻulu āpau, e pau nā kumuwaiwai.

No ka huli ʻana i kahi kālepa maʻalahi ma waena o ka hilinaʻi a me ke kumu kūʻai, hoʻohana ʻo ACK i kahi ʻano ʻōnaehana. ʻO ia hoʻi, wehewehe mākou i ʻekolu ʻano hui: liʻiliʻi, waena a me ka nui. Loaʻa i kēlā me kēia ʻano kahi moʻolelo hoʻokaʻawale waiwai. Hoʻoholo ʻia ke ʻano ma muli o ka ukana o nā ʻāpana wizard, ka helu o nā nodes, a me nā mea ʻē aʻe. Hiki ke loli ke ʻano puʻupuʻu i ka manawa. Mālama mau ʻo ACK i kēia mau mea a hiki ke ʻano i luna/lalo e like me ia. Ke hoʻololi ʻia ke ʻano puʻupuʻu, hōʻano hou ʻia ka hoʻoili waiwai me ka liʻiliʻi o ka mea hoʻohana.

Ke hana nei mākou e hoʻomaikaʻi i kēia ʻōnaehana me ka scaling ʻoi aku ka maikaʻi a me ka hoʻonui ʻana i ke ʻano kikoʻī i hiki i kēia mau hoʻololi ke hele mālie a ʻoi aku ka manaʻo waiwai.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 4. Naauao multi-ʻano hoʻololi 'ano

Ka ulu ʻana o nā pūʻulu o nā mea kūʻai aku ma ka nui

Ua uhi ʻia nā ʻāpana o mua i kekahi mau ʻano o ka mālama ʻana i nā pūʻulu Kubernetes he nui. Eia nō naʻe, aia kekahi pilikia ʻē aʻe e pono e hoʻoponopono ʻia: ʻo ka ulu ʻana o nā pūʻulu.

ʻO Kubernetes ka "Linux" o ke ao ao. Hoʻomau mau ia a lilo i modular. Pono mākou e hāʻawi mau i nā mana hou i kā mākou mea kūʻai aku, hoʻoponopono i nā nāwaliwali a hōʻano hou i nā puʻupuʻu i loaʻa, a me ka mālama ʻana i ka nui o nā mea pili (CSI, CNI, Device Plugin, Scheduler Plugin a me nā mea ʻē aʻe he nui).

E lawe kākou i ka hoʻokele ʻāpana Kubernetes ma ke ʻano he laʻana. No ka hoʻomaka ʻana, ua kūkulu mākou i kahi ʻōnaehana kikowaena no ka hoʻopaʻa inoa ʻana a me ka mālama ʻana i kēia mau mea pili.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 5. ʻO nā mea hiki ke hoʻololi a hoʻopili

Ma mua o ka neʻe ʻana i mua, pono ʻoe e hōʻoia i ka holomua o ka mea hou. No ka hana ʻana i kēia, ua kūkulu mākou i kahi ʻōnaehana no ka nānā ʻana i ka hana o nā ʻāpana. Hana ʻia ka nānā ma mua a ma hope o ka hoʻonui ʻana.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 6. Nānā mua o nā ʻāpana hui

No ka wikiwiki a hilinaʻi hoʻi i kēia mau ʻāpana, hana kahi ʻōnaehana hoʻomau mau me ke kākoʻo no ka holomua hapa (grayscale), hoʻomaha a me nā hana ʻē aʻe. ʻAʻole kūpono nā mea hoʻokele Kubernetes maʻamau no kēia hihia hoʻohana. No laila, no ka mālama ʻana i nā ʻāpana cluster, ua kūkulu mākou i kahi pūʻulu o nā mea hoʻokele kūikawā, me kahi plugin a me kahi module control auxiliary (sidecar management).

No ka laʻana, ua hoʻolālā ʻia ka mea hoʻoponopono BroadcastJob e hōʻano hou i nā ʻāpana o kēlā me kēia mīkini hana a i ʻole e nānā i nā nodes ma kēlā me kēia mīkini. Ke holo nei ka hana Broadcast i kahi pod ma kēlā me kēia node i ka hui, e like me kahi DaemonSet. Eia naʻe, mālama mau ʻo DaemonSet i ka holo ʻana o ka pod no ka manawa lōʻihi, ʻoiai e hāʻule ana ʻo BroadcastJob. Hoʻokuʻu pū ka mea hoʻoponopono Broadcast i nā pods ma nā nodes i hui hou ʻia a hoʻomaka i nā nodes me nā mea pono. I Iune 2019, ua wehe mākou i ke kumu kumu o ka OpenKruise automation engine, a mākou e hoʻohana ai i loko o ka hui.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 7. Hoʻonohonoho ʻo OpenKurise i ka hoʻokō ʻana i ka hana Broadcast ma nā node āpau

No ke kōkua ʻana i nā mea kūʻai aku e koho i nā hoʻonohonoho puʻupuʻu kūpono, hāʻawi pū mākou i kahi pūʻulu o nā ʻaoʻao i koho mua ʻia, e komo pū me Serverless, Edge, Windows, a me Bare Metal profiles. I ka hoʻonui ʻana o ka ʻāina a me ka ulu ʻana o nā pono o kā mākou mea kūʻai aku, e hoʻohui mākou i nā profiles hou aʻe e maʻalahi i ke kaʻina hana hoʻonohonoho paʻakikī.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 8. Nā moʻolelo puʻupuʻu kiʻekiʻe a maʻalahi no nā hiʻohiʻona like ʻole

Ka nānā ʻana o ka honua ma nā kikowaena ʻikepili

E like me ka mea i hōʻike ʻia ma lalo o ka fig. 9, ua hoʻokau ʻia ka lawelawe kapuaʻi ʻo Alibaba Cloud Container ma nā wahi he iwakālua a puni ka honua. Hāʻawi ʻia i kēia pālākiō, ʻo kekahi o nā pahuhopu koʻikoʻi o ka ACK ʻo ia ka nānā maʻalahi i ke kūlana o ka holo ʻana o nā puʻupuʻu i mea inā loaʻa kahi puʻupuʻu mea kūʻai aku i kahi pilikia, hiki iā mākou ke pane koke i ke kūlana. I nā huaʻōlelo ʻē aʻe, pono ʻoe e hana i kahi hopena e hiki ai iā ʻoe ke hōʻiliʻili maikaʻi a paʻa i nā ʻikepili i ka manawa maoli mai nā pūʻulu o nā mea kūʻai aku ma nā wahi āpau - a hōʻike ʻike i nā hopena.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 9. Hoʻolaha honua o ka lawelawe ʻo Alibaba Cloud Container ma nā ʻāpana he iwakālua

E like me nā ʻōnaehana kiaʻi Kubernetes he nui, hoʻohana mākou iā Prometheus i kā mākou mea hana nui. No kēlā me kēia metacluster, hōʻiliʻili nā ʻelele Prometheus i nā metric aʻe:

  • ʻO nā metric OS e like me nā kumuwaiwai host (CPU, memory, disk, etc.) a me ka bandwidth network.
  • Metrics no ka metacluster a me ka ʻōnaehana hoʻokele cluster client, e like me kube-apiserver, kube-controller-manager a me kube-scheduler.
  • Metrics mai kubernetes-state-metrics a me cadvisor.
  • etcd metrics e like me ka manawa kākau disk, ka nui o ka waihona, ka throughput o nā pilina ma waena o nā nodes, etc.

Hōʻiliʻili ʻia nā ʻikepili honua me ka hoʻohana ʻana i kahi kumu hoʻohālike maʻamau. Hoʻopili mua ʻia nā ʻikepili nānā mai kēlā me kēia metacluster i kēlā me kēia māhele a laila hoʻouna ʻia i kahi kikowaena kikowaena e hōʻike ana i ke kiʻi holoʻokoʻa. Ke hana nei nā mea a pau ma o ka mīkini hui. ʻO kahi kikowaena Prometheus ma kēlā me kēia kikowaena ʻikepili e hōʻiliʻili i nā metric mai kēlā kikowaena data, a ʻo ke kikowaena Prometheus kikowaena ke kuleana no ka hōʻuluʻulu ʻana i ka ʻikepili nānā. Hoʻopili ʻo AlertManager i ke kikowaena Prometheus a, inā pono, e hoʻouna i nā leka ma o DingTalk, leka uila, SMS, etc. ʻIke - me ka hoʻohana ʻana iā Grafana.

Ma ke Kiʻi 10, hiki ke hoʻokaʻawale ʻia ka ʻōnaehana nānā i ʻekolu pae:

  • pae palena

ʻO ka papa mamao loa mai ke kikowaena. Holo ka Prometheus Edge Server i kēlā me kēia metacluster, e hōʻiliʻili ana i nā metric mai nā pūʻulu meta a me nā mea kūʻai aku i loko o ka pūnaewele pūnaewele like.

  • Ka pae ʻana

ʻO ka hana o ka Prometheus cascade layer ʻo ia ka hōʻiliʻili ʻana i ka ʻikepili nānā mai nā wahi he nui. Ke hana nei kēia mau kikowaena ma ka pae o nā ʻāpana ʻāina nui e like me Kina, Asia, ʻEulopa a me ʻAmelika. I ka ulu ʻana o nā puʻupuʻu, hiki ke māhele ʻia ka ʻāina, a laila e ʻike ʻia kahi kikowaena Prometheus pae cascade ma kēlā me kēia ʻāpana nui hou. Me kēia hoʻolālā, hiki iā ʻoe ke hoʻonui maʻalahi e like me ka mea e pono ai.

  • pae waena

Hoʻopili ka kikowaena Prometheus kikowaena i nā kikowaena cascade āpau a hana i ka hōʻuluʻulu ʻikepili hope loa. No ka hilinaʻi, ua hoʻāla ʻia ʻelua mau kikowaena Prometheus ma nā ʻāpana like ʻole, pili i nā kikowaena cascade like.

Pehea ʻo Alibaba Cloud e hoʻokele ai i nā ʻumi tausani o nā pūʻulu Kubernetes me... Kubernetes
Laiki. 10. ʻO ka hoʻolālā nānā ʻana i nā pae he nui o ka honua ma muli o ke ʻano hana hui Prometheus

Hōʻuluʻulu

Ke hoʻomau nei ka hoʻololi ʻana i kā mākou ʻoihana i nā hāʻina kapuaʻi Kubernetes. Hāʻawi ka lawelawe pahu pahu Alibaba Cloud i ka hoʻokipa palekana, hilinaʻi a me ka hana kiʻekiʻe - ʻo ia kekahi o nā mea hoʻokipa kapuaʻi Kubernetes maikaʻi loa. Manaʻo nui ka hui Alibaba Cloud i nā loina o Open Source a me ke kaiāulu open source. E hoʻomau mākou e kaʻana like i kā mākou ʻike ma ke kahua o ka hana ʻana a me ka mālama ʻana i nā ʻenehana ao.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka