Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Kubernetes machitidwe abwino. Kupanga zotengera zazing'ono

Mukayamba kupanga ntchito zambiri za Kubernetes, ntchito zomwe poyamba zimakhala zosavuta zimayamba kukhala zovuta. Mwachitsanzo, magulu achitukuko sangathe kupanga mautumiki kapena kutumiza pansi pa dzina lomwelo. Ngati muli ndi ma pod masauzande ambiri, kungowalemba m'ndandanda kumatenga nthawi yambiri, osasiya kuwasamalira bwino. Ndipo iyi ndi nsonga chabe ya madzi oundana.

Tiyeni tiwone momwe namespace imapangira kukhala kosavuta kuyang'anira zida za Kubernetes. Ndiye malo a mayina ndi chiyani? Namespace itha kuganiziridwa ngati gulu lenileni mkati mwa gulu lanu la Kubernetes. Mutha kukhala ndi malo angapo otalikirana pakati pa gulu limodzi la Kubernetes. Atha kukuthandizani inu ndi magulu anu ndi bungwe, chitetezo, komanso magwiridwe antchito.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Pamagawidwe ambiri a Kubernetes, gululo limatuluka m'bokosi lomwe lili ndi dzina lotchedwa "default". Pali malo atatu omwe Kubernetes amachita nawo: kusakhazikika, kube-system, ndi kube-public. Pakadali pano, Kube-public sagwiritsidwa ntchito nthawi zambiri.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Kusiya dzina la kube lokha ndi lingaliro labwino, makamaka pamakina oyendetsedwa ngati Google Kubernetes Engine. Imagwiritsa ntchito dzina la "default" monga malo omwe ntchito zanu ndi mapulogalamu anu amapangidwira. Palibe chilichonse chapadera pa izi, kupatula kuti Kubernetes idapangidwa kuchokera m'bokosi kuti mugwiritse ntchito, ndipo simungathe kuichotsa. Izi ndizabwino poyambira komanso magwiridwe antchito otsika, koma sindingalimbikitse kugwiritsa ntchito malo osasinthika pamakina akuluakulu a prod. Pamapeto pake, gulu limodzi lachitukuko likhoza kulembanso code ya wina mosavuta ndikuphwanya ntchito ya gulu lina osazindikira.

Chifukwa chake, muyenera kupanga malo angapo a mayina ndikuwagwiritsa ntchito kugawa mautumiki anu kukhala mayunitsi otha kutha. Malo a mayina atha kupangidwa ndi lamulo limodzi. Ngati mukufuna kupanga dzina la dzina lotchedwa test, ndiye gwiritsani ntchito lamulo $ kubectl pangani namespace test kapena ingopangani fayilo ya YAML ndikuigwiritsa ntchito ngati chida china chilichonse cha Kubernetes.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Mutha kuwona malo onse pogwiritsa ntchito lamulo la $ kubectl get namespace.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Mukamaliza, muwona malo atatu omangidwamo ndi malo atsopano otchedwa "test". Tiyeni tiwone fayilo yosavuta ya YAML kuti tipange pod. Mudzawona kuti palibe kutchulidwa kwa mayina.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Ngati mugwiritsa ntchito kubectl kuyendetsa fayiloyi, idzapanga gawo la mypod mu malo omwe akugwiritsidwa ntchito panopa. Ili likhala malo osasinthika mpaka mutasintha. Pali njira ziwiri zowuzira Kubernetes malo omwe mukufuna kupanga zomwe mumagwiritsa ntchito. Njira yoyamba ndiyo kugwiritsa ntchito mbendera ya namespace popanga gwero.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Njira yachiwiri ndikutchula dzina lachidziwitso cha YAML.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Ngati mungatchule malo a mayina mu YAML, gwero lidzapangidwa nthawi zonse mu malowa. Ngati mutayesa kugwiritsa ntchito malo ena a mayina pamene mukugwiritsa ntchito mbendera ya namespace, lamulolo lidzalephera. Tsopano ngati muyesa kupeza pod yanu, simungathe kutero.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Izi zimachitika chifukwa malamulo onse amaperekedwa kunja kwa dzina lomwe likugwiritsidwa ntchito pano. Kuti mupeze pod yanu, muyenera kugwiritsa ntchito mbendera yamalo, koma izi zimatopetsa mwachangu, makamaka ngati ndinu wopanga gulu lomwe limagwiritsa ntchito malo ake enieni ndipo safuna kugwiritsa ntchito mbenderayo pa lamulo lililonse. Tiyeni tiwone momwe tingakonzere izi.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Kuchokera m'bokosilo, malo anu ogwiritsira ntchito amatchedwa kusakhulupirika. Ngati simunatchule malo a mayina muzinthu za YAML, ndiye kuti malamulo onse a Kubernetes adzagwiritsa ntchito malo osasintha awa. Tsoka ilo, kuyesa kuyang'anira malo ogwiritsira ntchito kubectl kungalephere. Komabe, pali chida chabwino kwambiri chotchedwa Kubens chomwe chimapangitsa kuti ntchitoyi ikhale yosavuta. Mukayendetsa lamulo la kubens, mumawona malo onse omwe ali ndi dzina logwira ntchito.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Kuti musinthe malo ogwiritsira ntchito kukhala malo oyesera, mumangoyendetsa $kubens test command. Ngati mutayendetsanso lamulo la $kubens, muwona kuti malo atsopano ogwiritsira ntchito tsopano aperekedwa - kuyesa.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Izi zikutanthauza kuti simukufunika mbendera yamalo kuti muwone poto mumalo oyesera.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Mwanjira iyi malo amazina amabisika kwa wina ndi mzake, koma osalekanitsidwa. Ntchito yopezeka m'malo amodzi imatha kulumikizana mosavuta ndi ntchito yamalo ena, zomwe zimakhala zothandiza kwambiri. Kutha kulumikizana m'malo osiyanasiyana amatanthawuza kuti mapulogalamu anu atha kulumikizana ndi gulu lina la dev m'malo osiyanasiyana.

Nthawi zambiri, pulogalamu yanu ikafuna kupeza ntchito ya Kubernetes, mumagwiritsa ntchito zodziwikiratu za DNS ndikungopereka dzina la ntchitoyo. Komabe, pochita izi, mutha kupanga ntchito pansi pa dzina lomwelo m'malo angapo, zomwe sizovomerezeka.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Mwamwayi, izi ndizosavuta kuzungulira pogwiritsa ntchito mawonekedwe owonjezera a adilesi ya DNS. Ntchito ku Kubernetes zimawulula zomaliza zawo pogwiritsa ntchito template wamba ya DNS. Zikuwoneka motere:

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Nthawi zambiri, mumangofunika dzina lautumiki ndipo DNS idzazindikira adilesi yonse.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Komabe, ngati mukufuna kupeza ntchito m'malo ena, ingogwiritsani ntchito dzina lautumiki kuphatikiza dzina lamalo:

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Mwachitsanzo, ngati mukufuna kulumikiza nkhokwe ya ntchito mu malo oyesera, mutha kugwiritsa ntchito adilesi ya database database.test

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Ngati mukufuna kulumikiza ku database ya service mu prod namespace, mumagwiritsa ntchito database.prod.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Ngati mukufunadi kudzipatula ndikuletsa mwayi wofikira malo, Kubernetes amakulolani kuchita izi pogwiritsa ntchito Kubernetes Network Policies. Ndikambirana izi mu gawo lotsatira.

Nthawi zambiri ndimafunsidwa funso, ndi malo angati omwe ndiyenera kupanga ndipo ndi cholinga chanji? Kodi data yoyendetsedwa ndi chiyani?

Ngati mupanga malo ochulukirapo, amangokuvutitsani. Ngati alipo ochepa kwambiri, mudzataya ubwino wonse wa yankho lotere. Ndikuganiza kuti pali magawo anayi omwe kampani iliyonse imadutsa popanga dongosolo lake. Kutengera momwe polojekiti yanu kapena kampani yanu ilili, mungafunike kugwiritsa ntchito njira yoyenera ya mayina.

Tangoganizani kuti muli m'gulu laling'ono lomwe likugwira ntchito yopanga ma microservices a 5-10 ndipo mutha kusonkhanitsa onse opanga chipinda chimodzi. Munthawi imeneyi, ndizomveka kuyendetsa ntchito zonse za prod mumalo osasinthika. Zachidziwikire, kuti muzitha kusinthasintha, mutha kugwiritsa ntchito malo awiri - padera pa prod ndi dev. Ndipo mwina, mumayesa kukula kwanu pakompyuta yanu yanu pogwiritsa ntchito zina monga Minikube.

Tinene kuti zinthu zikusintha ndipo tsopano muli ndi gulu lomwe likukula mwachangu lomwe likugwira ntchito yopitilira ma microservices 10 nthawi imodzi. Imafika nthawi yomwe ikufunika kugwiritsa ntchito magulu angapo kapena malo a mayina, padera pa prod ndi dev. Mutha kugawa gululo kukhala matimu angapo ang'onoang'ono kuti aliyense wa iwo akhale ndi ma microservices ake ndipo gulu lililonse lamaguluwa litha kusankha malo akeake kuti atsogolere njira yoyendetsera mapulogalamu ndi kumasula.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Pamene membala aliyense wa gulu akupeza chidziwitso cha momwe dongosolo lonse limagwirira ntchito, zimakhala zovuta kwambiri kugwirizanitsa kusintha kulikonse ndi okonza ena onse. Kuyesera kutulutsa mulu wathunthu pamakina akomweko kukukulirakulira tsiku lililonse.

M'makampani akuluakulu, opanga nthawi zambiri samadziwa yemwe akugwira ntchito pa chiyani. Magulu amalankhulana pogwiritsa ntchito makontrakitala a ntchito kapena kugwiritsa ntchito ukadaulo wa ma mesh, omwe amawonjezera kusanja pamanetiweki, monga chida chosinthira cha Istio. Kuyesa kuyendetsa mulu wathunthu kwanuko sikutheka, ndikupangira kugwiritsa ntchito nsanja yotumiza mosalekeza (CD) ngati Spinnaker pa Kubernetes. Chifukwa chake, pamabwera pomwe lamulo lililonse limafunikira malo ake enieni. Gulu lirilonse likhoza kusankha malo angapo a mayina a chilengedwe cha dev ndi chilengedwe cha prod.

Pomaliza, pali makampani akuluakulu azamalonda omwe gulu limodzi la omanga sadziwa nkomwe za kukhalapo kwa magulu ena. Kampani yotereyi nthawi zambiri imatha kulemba ganyu oyambitsa gulu lachitatu omwe amalumikizana nawo kudzera mu ma API olembedwa bwino. Gulu lililonse lotere lili ndi magulu angapo ndi ma microservice angapo. Pankhaniyi, muyenera kugwiritsa ntchito zida zonse zomwe ndanena kale.

Kubernetes machitidwe abwino. Bungwe la Kubernetes lomwe lili ndi dzina

Okonza mapulogalamu sayenera kutumizira ntchito pamanja ndipo sayenera kukhala ndi mwayi wopeza mayina omwe sakuwakhudza. Pakadali pano, ndikofunikira kukhala ndi magulu angapo kuti muchepetse "kuphulika" kwa mapulogalamu omwe sanasankhidwe bwino, kuti muchepetse njira zolipirira komanso kasamalidwe kazinthu.

Chifukwa chake, kugwiritsa ntchito koyenera kwa mayina ndi gulu lanu kumakupatsani mwayi wopanga Kubernetes kukhala wosavuta kuwongolera, wowongoka, wotetezeka, komanso wosinthika.

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

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