Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Kubernetes cov kev coj ua zoo tshaj plaws. Tsim cov thawv me me

Thaum koj pib tsim cov kev pabcuam Kubernetes ntau dua, cov haujlwm uas pib yooj yim pib ua kom nyuaj dua. Piv txwv li, pab pawg txhim kho tsis tuaj yeem tsim cov kev pabcuam lossis kev xa mus rau tib lub npe. Yog tias koj muaj ntau txhiab lub pods, tsuas sau lawv yuav siv sij hawm ntau, cia nyob ib leeg kom tswj lawv. Thiab qhov no tsuas yog lub ntsis ntawm lub iceberg.

Cia peb saib yuav ua li cas lub namespace ua rau nws yooj yim dua los tswj Kubernetes cov peev txheej. Yog li dab tsi yog lub npe chaw? Namespace tuaj yeem xav tias yog pawg virtual hauv koj pawg Kubernetes. Koj tuaj yeem muaj ntau lub npe sib cais los ntawm ib leeg hauv ib pawg Kubernetes. Lawv tuaj yeem pab koj thiab koj pab pawg nrog lub koom haum, kev ruaj ntseg, thiab kev ua haujlwm zoo.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Ntawm feem ntau Kubernetes kev faib tawm, pawg tawm los ntawm lub thawv nrog lub npe hu ua "default". Muaj peb lub npe chaw uas Kubernetes cuam tshuam nrog: default, kube-system, thiab kube-public. Tam sim no, Kube-public tsis siv ntau zaus.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Tawm ntawm kube namespace ib leeg yog lub tswv yim zoo, tshwj xeeb tshaj yog nyob rau hauv kev tswj hwm zoo li Google Kubernetes Cav. Nws siv qhov "default" namespace raws li qhov chaw uas koj cov kev pabcuam thiab cov ntawv thov raug tsim. Tsis muaj dab tsi tshwj xeeb txog nws, tshwj tsis yog tias Kubernetes tau teeb tsa tawm ntawm lub thawv siv nws, thiab koj tsis tuaj yeem tshem nws. Qhov no yog qhov zoo rau kev pib thiab kev ua haujlwm qis, tab sis kuv yuav tsis pom zoo kom siv lub npe chaw nyob ntawm cov khoom loj. Hauv qhov kawg, ib pab pawg txhim kho tuaj yeem rov sau dua lwm tus tus lej thiab ua txhaum lwm pab pawg ua haujlwm yam tsis tau paub txog nws.

Yog li ntawd, koj yuav tsum tsim ntau lub npe chaw thiab siv lawv los faib koj cov kev pabcuam rau hauv cov chaw tswj tau. Lub namespace tuaj yeem tsim nrog ib qho lus txib. Yog tias koj xav tsim lub npe lub npe xeem, tom qab ntawd siv qhov hais kom ua $ kubectl tsim namespace test lossis tsuas yog tsim cov ntaub ntawv YAML thiab siv nws zoo li lwm yam khoom siv Kubernetes.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Koj tuaj yeem saib tag nrho namespaces siv $ kubectl tau txais namespace hais kom ua.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Thaum nws ua tiav, koj yuav pom peb qhov chaw nyob hauv lub npe thiab lub npe tshiab hu ua "test". Cia peb saib YAML cov ntaub ntawv yooj yim los tsim lub pod. Koj yuav pom tias tsis muaj qhov hais txog lub npe.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Yog tias koj siv kubectl los khiav cov ntaub ntawv no, nws yuav tsim cov mypod module hauv lub npe tam sim no. Qhov no yuav yog lub neej ntawd namespace kom txog thaum koj hloov nws. Muaj 2 txoj hauv kev los qhia Kubernetes qhov chaw npe koj xav tsim koj cov peev txheej hauv. Thawj txoj hauv kev yog siv tus chij namespace thaum tsim cov peev txheej.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Qhov thib ob yog los qhia lub npe chaw nyob hauv YAML tshaj tawm.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Yog tias koj teev npe qhov chaw hauv YAML, cov peev txheej yuav raug tsim nyob rau hauv lub npe ntawd. Yog tias koj sim siv lub npe sib txawv thaum siv tus chij namespace, cov lus txib yuav ua tsis tiav. Tam sim no yog koj sim nrhiav koj lub kaus mom, koj yuav tsis muaj peev xwm ua tau li ntawd.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Qhov no tshwm sim vim hais tias tag nrho cov lus txib raug tua sab nraum lub npe tam sim no. Txhawm rau nrhiav koj lub pod, koj yuav tsum siv tus chij namespace, tab sis qhov no tau dhuav sai, tshwj xeeb tshaj yog tias koj yog tus tsim tawm ntawm pab pawg uas siv nws tus kheej lub npe thiab tsis xav siv tus chij rau txhua qhov lus txib. Cia saib seb peb yuav kho qhov no li cas.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Tawm ntawm lub npov, koj lub npe nquag hu ua default. Yog tias koj tsis qhia npe chaw nyob hauv cov peev txheej YAML, tom qab ntawd tag nrho Kubernetes cov lus txib yuav siv qhov chaw siv lub npe no. Hmoov tsis zoo, sim tswj cov npe nquag siv kubectl tuaj yeem ua tsis tiav. Txawm li cas los xij, muaj cov cuab yeej zoo heev hu ua Kubens uas ua rau cov txheej txheem no yooj yim dua. Thaum koj khiav cov lus txib kubens, koj pom tag nrho cov npe chaw nrog lub npe nrov npe tseem ceeb.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Txhawm rau hloov lub npe nquag mus rau qhov chaw xeem lub npe, koj tsuas yog khiav ntawm $ kubens test command. Yog tias koj mam li khiav $kubens hais kom ua dua, koj yuav pom tias lub npe tshiab tam sim no tau faib - sim.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Qhov no txhais tau hais tias koj tsis xav tau tus chij namespace kom pom cov pod nyob rau hauv lub xeem namespace.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Txoj kev no lub npe chaw zais ntawm ib leeg, tab sis tsis cais ntawm ib leeg. Ib qho kev pabcuam hauv ib lub npe chaw tuaj yeem sib txuas lus tau yooj yim nrog kev pabcuam hauv lwm lub npe, uas feem ntau muaj txiaj ntsig zoo. Lub peev xwm los sib txuas lus thoob plaws lub npe sib txawv txhais tau hais tias koj cov neeg tsim khoom cov kev pabcuam tuaj yeem sib txuas lus nrog lwm pab pawg dev cov kev pabcuam hauv lub npe sib txawv.

Feem ntau, thaum koj daim ntawv thov xav nkag mus rau Kubernetes cov kev pabcuam, koj siv qhov kev pabcuam nrhiav pom DNS built-in thiab tsuas yog muab koj daim ntawv thov lub npe ntawm qhov kev pabcuam. Txawm li cas los xij, los ntawm kev ua li ntawd, koj tuaj yeem tsim ib qho kev pabcuam nyob rau hauv tib lub npe hauv ntau lub npe, uas tsis tsim nyog.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Luckily, qhov no yooj yim mus ncig los ntawm kev siv daim ntawv nthuav dav ntawm DNS chaw nyob. Cov kev pabcuam hauv Kubernetes nthuav tawm lawv cov ntsiab lus kawg uas siv DNS qauv. Nws zoo li qhov no:

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Feem ntau, koj tsuas yog xav tau lub npe kev pabcuam thiab DNS yuav txiav txim siab tag nrho qhov chaw nyob.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Txawm li cas los xij, yog tias koj xav tau nkag mus rau qhov kev pabcuam hauv lub npe sib txawv, tsuas yog siv lub npe pabcuam ntxiv rau lub npe namespace:

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Piv txwv li, yog tias koj xav txuas mus rau ib qho kev pabcuam database hauv lub xeem namespace, koj tuaj yeem siv qhov chaw nyob database database.test

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Yog tias koj xav txuas mus rau qhov kev pabcuam database hauv prod namespace, koj siv database.prod.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Yog tias koj xav cais tawm thiab txwv tsis pub nkag mus rau lub npe, Kubernetes tso cai rau koj ua qhov no siv Kubernetes Network Txoj Cai. Kuv mam li tham txog qhov no nyob rau ntu tom ntej.

Kuv feem ntau nug cov lus nug, pes tsawg lub npe kuv yuav tsum tsim thiab rau lub hom phiaj twg? Dab tsi yog ib daim ntawv tswj hwm?

Yog tias koj tsim ntau namespaces, lawv yuav cia li nkag rau hauv koj txoj kev. Yog tias muaj tsawg dhau ntawm lawv, koj yuav poob tag nrho cov txiaj ntsig ntawm cov tshuaj zoo li no. Kuv xav tias muaj plaub theem tseem ceeb uas txhua lub tuam txhab mus txog thaum tsim nws cov txheej txheem. Nyob ntawm theem ntawm kev txhim kho koj qhov project lossis tuam txhab nyob rau hauv, koj tuaj yeem xav siv lub tswv yim tsim nyog lub npe.

Xav txog tias koj yog ib feem ntawm pab pawg me uas ua haujlwm ntawm kev tsim 5-10 microservices thiab koj tuaj yeem yooj yim sau tag nrho cov tsim tawm hauv ib chav. Hauv qhov xwm txheej no, nws ua rau kev txiav txim siab khiav tag nrho cov kev pabcuam khoom hauv lub neej ntawd lub npe. Tau kawg, kom yooj yim dua, koj tuaj yeem siv 2 lub npe chaw - cais rau cov khoom lag luam thiab dev. Thiab feem ntau yuav, koj sim koj txoj kev loj hlob ntawm koj lub computer hauv zos siv qee yam xws li Minikube.

Cia peb hais tej yam hloov pauv thiab tam sim no koj muaj pab pawg loj hlob sai ua haujlwm ntawm ntau dua 10 microservices ib zaug. Muaj ib lub sij hawm thaum nws yuav tsum tau siv ob peb pawg los yog namespaces, cais rau prod thiab dev. Koj tuaj yeem rhuav tshem cov pab pawg ua ntau pab pawg kom lawv txhua tus muaj nws tus kheej microservices thiab txhua pab pawg tuaj yeem xaiv nws tus kheej lub npe chaw los pab txhawb cov txheej txheem ntawm kev tswj hwm software tsim thiab tso tawm.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Raws li txhua tus tswvcuab hauv pab pawg tau txais kev nkag siab txog yuav ua li cas lub kaw lus ua haujlwm tag nrho, nws yuav nyuaj dua los koom tes nrog txhua qhov kev hloov pauv nrog rau lwm tus tsim tawm. Sim tig ib pawg tag nrho ntawm koj lub tshuab hauv zos tau nyuaj dua txhua hnub.

Hauv cov tuam txhab loj, cov neeg tsim khoom feem ntau tsis paub tias leej twg ua haujlwm rau dab tsi. Cov pab pawg sib txuas lus siv cov ntawv cog lus kev pabcuam lossis siv cov cuab yeej siv thev naus laus zis, uas ntxiv cov txheej txheem abstraction hauv lub network, xws li Istio configuration tool. Sim khiav tag nrho cov pawg hauv zos tsuas yog ua tsis tau. Yog li, muaj los txog qhov twg txhua qhov lus txib xav tau nws tus kheej lub npe. Txhua pab neeg tuaj yeem xaiv ntau lub npe chaw rau dev ib puag ncig thiab cov khoom ib puag ncig.

Thaum kawg, muaj cov tuam txhab ua lag luam loj nyob rau hauv uas ib pab pawg neeg tsim khoom tsis paub txog qhov muaj nyob ntawm lwm pab pawg. Lub tuam txhab zoo li no feem ntau yuav ntiav cov neeg tsim tawm thib peb uas cuam tshuam nrog nws los ntawm cov ntaub ntawv APIs zoo. Txhua pab pawg muaj ntau pab pawg thiab ob peb microservices. Hauv qhov no, koj yuav tsum siv tag nrho cov cuab yeej uas kuv tau tham dhau los.

Kubernetes cov kev coj ua zoo tshaj plaws. Lub koom haum ntawm Kubernetes nrog namespace

Programmers yuav tsum tsis txhob siv cov kev pabcuam manually thiab yuav tsum tsis txhob nkag mus rau lub npe chaw uas tsis cuam tshuam rau lawv. Nyob rau theem no, nws raug nquahu kom muaj ntau pawg los txo qis "lub vojvoog tawg" ntawm cov ntawv thov kev teeb tsa tsis zoo, kom yooj yim rau cov txheej txheem them nqi thiab kev tswj hwm cov peev txheej.

Yog li, kev siv lub npe zoo los ntawm koj lub koom haum tso cai rau koj kom Kubernetes tswj tau ntau dua, tswj tau, ruaj ntseg, thiab hloov pauv.

Kubernetes cov kev coj ua zoo tshaj plaws. Validating Kubernetes Liveness nrog Kev Npaj Ua Haujlwm thiab Kev Ntsuas Kev Ua Neej

Ib co ads πŸ™‚

Ua tsaug uas koj tau nyob nrog peb. Koj puas nyiam peb cov ntawv? Xav pom cov ntsiab lus nthuav ntxiv? Txhawb nqa peb los ntawm kev tso ib qho kev txiav txim lossis qhia rau cov phooj ywg, huab VPS rau cov tsim tawm los ntawm $ 4.99, ib qho tshwj xeeb analogue ntawm nkag-theem servers, uas tau tsim los ntawm peb rau koj: Qhov tseeb tag nrho txog VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps los ntawm $ 19 los yog yuav ua li cas faib cov server? (muaj nrog RAID1 thiab RAID10, mus txog 24 cores thiab mus txog 40GB DDR4).

Dell R730xd 2x pheej yig dua hauv Equinix Tier IV data center hauv Amsterdam? Tsuas yog nyob ntawm no 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV los ntawm $ 199 hauv Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - los ntawm $ 99! Nyeem txog Yuav ua li cas tsim infrastructure Corp. chav kawm nrog kev siv Dell R730xd E5-2650 v4 servers muaj nqis 9000 euros rau ib lub nyiaj?

Tau qhov twg los: www.hab.com

Ntxiv ib saib