Pupuri raraunga i roto i te huinga Kubernetes

He maha nga huarahi hei whirihora i te rokiroki raraunga mo nga tono e whakahaere ana i runga i te roopu Kubernetes. Ko etahi o ratou kua tawhito kee, ko etahi i puta tata mai. I roto i tenei tuhinga, ka titiro tatou ki te ariā o nga whiringa e toru mo te hono i nga punaha rokiroki, tae atu ki te mea hou - te hono ma te Atanga Rokiroki Ipu.

Pupuri raraunga i roto i te huinga Kubernetes

Tikanga 1: Tauwhāitihia te PV ki te whakaaturanga pod

He whakaaturanga angamaheni e whakaahua ana i tetahi poti i roto i te roopu Kubernetes:

Pupuri raraunga i roto i te huinga Kubernetes

Ko nga waahanga o te whakaaturanga e whakaatu ana ko tehea rōrahi e hono ana me te waahi ka tohua ki te tae.

wāhanga volumeMounts tohuhia nga tohu maunga (mountPath) - kei roto i te raarangi i roto i te ipu ka mau te rōrahi pūmau, me te ingoa o te rōrahi.

wāhanga x ka whakarārangihia ngā pukapuka katoa e whakamahia ana i roto i te pākākano. Tauwhāitihia te ingoa o ia rōrahi, me te momo (i roto i a maatau: awsElasticBlockStore) me nga tawhā hononga. Ko ēhea tawhā ka whakarārangihia ki te whakaaturanga ka whakawhirinaki ki te momo rōrahi.

Ka taea te whakauru i taua rōrahi i te wā kotahi i roto i ngā ipu pākākano maha. Ma tenei ara, ka taea e nga tukanga tono rereke te uru ki nga raraunga kotahi.

Ko tenei tikanga hononga i hangaia i te timatanga, i te wa e tamariki tonu ana a Kubernetes, a i tenei ra kua tawhito te tikanga.

He maha nga raruraru i te wa e whakamahi ana:

  1. me hanga a ringa nga pukapuka katoa, kaore e taea e Kubernetes te hanga i tetahi mea ma tatou;
  2. He ahurei nga tawhā uru mo ia rōrahi, ā, me tohu ki ngā whakaaturanga o ngā pākākano katoa e whakamahi ana i te rōrahi;
  3. ki te huri i te punaha rokiroki (hei tauira, neke mai i te AWS ki te Google Cloud), me whakarereke koe i nga tautuhinga me te momo o nga pukapuka kua eke ki roto i nga whakaaturanga katoa.

He tino rawe tenei katoa, no reira ka whakamahia tenei tikanga ki te hono i etahi momo momo pukapuka motuhake: configMap, ngaro, emptyDir, hostPath:

  • Ko te configMap me te mea ngaro he pukapuka ratonga ka taea e koe te hanga pukapuka me nga konae mai i nga whakaaturanga Kubernetes i roto i te ipu.

  • Ko te emptyDir he rōrahi rangitahi, he mea hanga mo te roanga o te pene. He waatea ki te whakamahi mo te whakamatautau me te penapena raraunga rangitahi. Ina mukua tetahi poti, ka mukua ano te pukapuka putungaDir ka ngaro nga raraunga katoa.

  • hostPath - ka taea e koe te whakauru i tetahi raarangi ki runga i te kopae a rohe o te tūmau kei te rere te tono ki roto i te ipu me te tono, tae atu ki te /etc/kubernetes. He ahua kino tenei, no reira ka aukati nga kaupapa here haumaru i te whakamahi i tenei momo oro. Ki te kore, ka taea e te tono a te kaitukino te whakauru i te raarangi HTC Kubernetes ki roto i tana ipu me te tahae i nga tiwhikete tautau katoa. Ko te tikanga, ko nga pukapuka hostPath e whakaaetia ana kia whakamahia e nga tono punaha e rere ana i te mokowāingoa kube-system.

Ko nga punaha rokiroki e mahi ana a Kubernetes i waho o te pouaka ka hoatu i roto i nga tuhinga.

Tikanga 2. Hononga ki nga papa ahi SC/PVC/PV

Ko tetahi tikanga hononga rereke ko te kaupapa o te akomanga Rokiroki, PersistentVolumeClaim, PersistentVolume.

akomanga rokiroki ka penapena i nga tawhā hononga ki te punaha rokiroki raraunga.

TonuKereeme e whakaahua ana i nga whakaritenga mo te mea e hiahiatia ana e te tono.
Puka Tonu ka rokiroki i nga tawhā uru me te mana rōrahi.

Ko te ngako o te whakaaro: i roto i te whakaaturanga pod ka tohuhia he rōrahi o te momo PersistentVolumeClaim me te tohu i te ingoa o tenei hinonga ki te tawhā claimName.

Pupuri raraunga i roto i te huinga Kubernetes

Ko te whakaaturanga PersistentVolumeClaim e whakaatu ana i nga whakaritenga mo te nui o nga raraunga e hiahiatia ana e te tono. Kei roto ko:

  • rahi kōpae;
  • tikanga uru: ReadWriteOnce or ReadWriteMany;
  • hono ki te akomanga Rokiroki - kei hea te punaha rokiroki raraunga e hiahia ana matou ki te hanga i te rōrahi.

Ko te whakaaturanga o te akomanga Rokiroki e rongoa ana i te momo me nga tawhā o te hononga ki te punaha rokiroki. E hiahia ana te cubelet ki te whakairi i te rōrahi ki runga i tōna kōpuku.

Ko nga whakaaturanga PersistentVolume e whakaatu ana i te karaehe Rokiroki me nga tawhā uru mo tetahi rōrahi motuhake (ID rōrahi, ara, aha atu).

I te wa e hanga ana he PVC, ka tirohia e Kubernetes he aha te rahi o te rōrahi me te aha te karaehe Rokiroki e hiahiatia ana, ka kowhiria he PersistentVolume koreutu.

Mena kaore i te waatea enei PV, ka taea e Kubernetes te whakarewa i tetahi kaupapa motuhake - Kaituku (kua tohua tona ingoa ki te akomanga Rokiroki). Ka hono tenei papatono ki te punaha rokiroki, ka hangaia he rōrahi o te rahi e hiahiatia ana, ka whiwhi i te tohu tohu me te hanga whakaaturanga PersistentVolume i roto i te roopu Kubernetes, e hono ana ki te PersistentVolumeClaim.

Ko enei huinga tangohanga ka taea e koe te tango korero mo te punaha rokiroki e mahi ana te tono mai i te taumata whakaatu tono ki te taumata whakahaere.

Ko nga tawhā katoa mo te hono atu ki te punaha rokiroki raraunga kei roto i te akomanga Rokiroki, kei a ia nga kaiwhakahaere roopu. Ko nga mea katoa e hiahia ana koe ki te neke mai i te AWS ki te Google Cloud ko te whakarereke i te ingoa o te akomanga Rokiroki ki te PVC i roto i nga whakaaturanga tono. Ko te Rorahi Tonu mo te rokiroki raraunga ka hangaia i roto i te roopu ma te whakamahi i te kaupapa Kaituku.

Tikanga 3. Atanga Rokiroki Ipu

Ko nga waehere katoa e hono ana ki nga momo punaha rokiroki he waahanga o te matua Kubernetes. Ko te tukunga o nga whakatika iro, mahi hou ranei kua herea ki nga putanga hou; me huri te waehere mo nga putanga tautoko katoa o Kubernetes. He uaua tenei katoa ki te pupuri me te taapiri i nga mahi hou.

Hei whakaoti i te raru, i hangaia e nga kaiwhakawhanake mai i Cloud Foundry, Kubernetes, Mesos me Docker te Atanga Rokiroki Ipu (CSI) - he atanga whakakotahi ngawari e whakaatu ana i te taunekeneke o te punaha whakahaere ipu me tetahi taraiwa motuhake (CSI Driver) e mahi tahi ana me tetahi waahanga motuhake. pūnaha rokiroki. Ko nga waehere katoa mo te taunekeneke me nga punaha rokiroki i nekehia mai i te matua Kubernetes ki tetahi punaha motuhake.

Tuhinga Atanga Rokiroki Ipu.

Ko te tikanga, e rua nga waahanga o te Atekōkiri CSI: Node Mono me te Kaiwhakahaere mono.

Ka rere te Mono Node ki ia node me te kawenga mo te whakauru i nga pukapuka me te mahi i nga mahi ki runga. Ka mahi tahi te mono Controller me te punaha rokiroki: ka waihanga, ka mukua ranei nga pukapuka, ka tautapa mo nga mana uru, aha atu.

I tenei wa, kei te noho tonu nga taraiwa tawhito i roto i te kernel Kubernetes, engari karekau e kii kia whakamahia, ka tohutohuhia nga tangata katoa ki te whakauru i te Atekōkiri CSI mo te punaha e mahi ai ratou.

Ko te mea hou ka mataku i te hunga kua waia ki te whakarite rokiroki raraunga ma te akomanga Rokiroki, engari kaore he mea kino i pa. Mo te hunga hötaka, karekau he mea tino rereke - kua mahi noa ratou me te ingoa Rokiroki karaehe, a ka pera tonu. Mo nga kaiwhakahaere, kua taapirihia te whakaurunga tūtohi urungi, kua rereke te hanganga o nga tautuhinga. Mena i mua i whakauruhia nga tautuhinga ki roto i te akomanga Rokiroki, inaianei me whakanoho ki te tūtohi urungi, katahi ki te akomanga Rokiroki. Mena ka tirohia e koe, kaore he kino i tupu.

Me whai tauira ki te titiro ki nga painga ka taea e koe ma te huri ki te hono i nga punaha rokiroki Ceph ma te whakamahi i te taraiwa CSI.

I te wa e mahi tahi ana me Ceph, ka whakaratohia e te mono CSI etahi atu whiringa mo te mahi me nga punaha rokiroki atu i nga taraiwa kua hangaia.

  1. Te waihanga kōpae hihiri. Ko te tikanga ka whakamahia nga kopae RBD ki te aratau RWO anake, engari ka taea e CSI mo Ceph te whakamahi i te aratau RWX. He maha nga pona kei runga i nga pona rereke ka taea te whakanoho i te kōpae RDB kotahi ki runga i o raatau pona ka mahi whakarara. Kia tika, kaore nga mea katoa e tino marama ana - ka taea anake te hono i tenei kopae hei taputapu poraka, ko te tikanga me urutau koe ki te tono ki te mahi i roto i te aratau uru maha.
  2. Te hanga whakaahua. I roto i te roopu Kubernetes, ka taea e koe te hanga whakaaturanga me te hiahia ki te hanga pikitia. Ka kite te mono CSI ka tangohia he whakaahua mai i te kōpae. I runga i tera, ka taea e koe te hanga he taapiri, he kape ranei o PersistentVolume.
  3. Te whakanui ake i te rahi o te kōpae i runga i te rokiroki me te PersistentVolume i roto i te roopu Kubernetes.
  4. Nga roherohenga. Ko nga taraiwa CephFS i hangaia ki roto i nga Kubernetes kaore i te tautoko i nga waahi, engari ko nga taputapu CSI hou me nga Ceph Nautilus hou ka taea te whakauru i nga waahanga mo nga waahanga CephFS.
  5. Inenga. Ka taea e te mono CSI te whakarato ki a Prometheus nga momo inenga e pa ana ki nga pukapuka e hono ana, he aha nga korero kei te whakahaerehia, aha atu.
  6. E mohio ana te topology. Ka taea e koe te whakaatu i roto i nga whakaaturanga me pehea te tohatoha matawhenua, me te karo i te hono i tetahi punaha rokiroki kei Amsterdam ki nga poro e rere ana i Raanana.

Me pehea te hono atu ki a Ceph ki te roopu Kubernetes ma te CSI, tirohia i roto i te wahanga mahi o te kauhau kura ahiahi Slurm. Ka taea hoki e koe te ohauru Te akoranga ataata Ceph, ka whakarewa i te Oketopa 15th.

Kaituhi o te tuhinga: Sergey Bondarev, he tohunga hoahoa i Southbridge, Kaiwhakahaere Kubernetes whaimana, tetahi o nga kaihanga o kubespray.

He iti Post Scriptum ehara mo te panui, engari hei painga...

Ko PS Sergey Bondarev e arahi ana i nga akoranga kaha e rua: kua whakahoutia Kubernetes Base Hepetema 28-30 me te matatau Kubernetes Mega Oketopa 14–16.

Pupuri raraunga i roto i te huinga Kubernetes

Source: will.com

Tāpiri i te kōrero