- Ama-Microservices avumela ukuthuthukiswa kwezinhlelo zokusebenza ezihlanganisiwe nezinwebekayo, lapho isevisi ngayinye izimele futhi ingasetshenziswa ngokuzimela.
- I-Docker yenza kube lula ukudala izitsha ezilula neziphathekayo ezipakisha yonke i-microservice nazo zonke izinto ezixhomeke kuyo.
- UKubernetes uhlela ama-container, ephatha ukuthunyelwa, ukukhuliswa, ukuxhumana, kanye nokubuyiselwa okuzenzakalelayo kwezinsizakalo ezincane eqenjini.
- Ukusebenzisa izindlela zokuphepha ezinhle, ukuqapha, kanye nezindlela zokwenza izinto ngokuzenzakalela kubalulekile ekusebenzeni ngempumelelo kwezinsizakalo ezincane ekukhiqizeni.

Eminyakeni yamuva, inhlanganisela yama-microservices, i-Docker, ne-Kubernetes Sekuyindinganiso yangempela yokusebenzisa izinhlelo zokusebenza zesimanje, ezikwazi ukukhuliswa, futhi ezilula ukuzinakekela. Izinkampani eziningi ziyasuka ezinhlelweni zokusebenza ze-monolithic zikhetha izakhiwo ezisatshalaliswayo ezifanelekela kangcono izindawo ezishintshayo kanye namasu e-DevOps.
Uma uzibuza Indlela yokusebenzisa ama-microservices nge-Docker kanye ne-Kubernetes ngokusebenzaLokhu okuqukethwe kuzokufanela kahle: sizobuyekeza imiqondo eyinhloko, izinzuzo kanye nezinselele, indlela yokwakha ama-container, indlela yokuwahlela ndawonye, kanye nezinyathelo okufanele uzilandele ukuze uwafake. Windows y Linuxkanye nochungechunge lwamathiphu okuwasebenzisa ngokuhlakanipha ezindaweni zangempela.
Iyini ukwakheka kwe-microservices futhi ihluke kanjani ku-monolith?
Ukwakhiwa kwezinsizakalo ezincane kusekelwe ku- hlukanisa uhlelo lokusebenza lube yizinsizakalo eziningi ezincane, ezizimele, nezingasetshenziswa ngokuzimelangayinye igxile ekusebenzeni okuthile (abasebenzisi, izinkokhelo, ikhathalogi, ama-oda, njll.), okuxhumana ikakhulukazi ngama-API alula (HTTP/REST, gRPC, imiyalezo, njll.).
Ngakolunye uhlangothi, ekusetshenzisweni kwe-monolithic, Yonke i-logic yebhizinisi, isendlalelo sokwethula, kanye nokufinyelela kwedatha kuhlanganiswe kubhulokhi eyodwa yokuthunyelwa.Noma yiluphi ushintsho ludinga ukuhlanganiswa kabusha, ukuhlolwa, kanye nokusetshenziswa kohlelo lonke, okwenza kube nzima ukuvela futhi kwandisa ingozi yokuletha amaphutha ekukhiqizweni.
Ngezinsizakalo ezincane, isevisi ngayinye inomjikelezo wayo wokuphila: Ingathuthukiswa, ihlolwe, isetshenziswe, ilinganiswe, futhi ihunyushwe ngokuzimela.Lokhu kuvumela amaqembu amaningi ukuthi asebenze ngesikhathi esisodwa, kwenza kube lula ukwamukelwa kobuchwepheshe obusha, futhi kwenza kube lula ukuhlanganiswa nemikhuba ye-CI/CD.
Ngaphezu kwalokho, lolu lwakhiwo lwethula umqondo wokuthi ukukhuliswa okungenazo izingxenyeEsikhundleni sokwandisa lonke uhlelo lokusebenza lwe-monolithic ukuze kusekelwe umthwalo owengeziwe kumojuli ethile, ama-microservices kuphela ayidinga ngempela ayandiswa, okwenza ngcono izinsiza zengqalasizinda.
Izinzuzo zangempela kanye nezinselele zezinsizakalo ezincane
Ukuthuthela kuma-microservices akuyona nje into eyenzeka ngokushesha: Inikeza izinzuzo ezibonakalayo ekukhuleni, ukuqina, kanye nesivinini sokusetshenziswa.Kodwa futhi kwethula ubunzima bokusebenza okumele buphathwe.
Phakathi kwezinzuzo eziphawuleka kakhulu yi- ukukhuliswa okuzimele kwensizakalo ngayinyeUma, isibonelo, imodyuli yezinkokhelo ithola ithrafikhi eningi kunemodyuli yokuphatha, ungandisa kuphela amakhophi ensizakalo encane yezinkokhelo, ngaphandle kokuthinta lonke uhlelo lokusebenza noma ukuchitha izinsiza.
Uzuza okuningi futhi ukuthunyelwa okuqhubekayo kanye nokulethwa njaloNgokuhlukanisa isevisi ngayinye, kungenzeka ukukhipha izinguqulo ezintsha kancane kancane, ngaphandle kokumisa noma ukuphinda usebenzise lonke uhlelo lokusebenza, ukunciphisa amafasitela okulungisa nokuthuthukisa isikhathi sokumaketha.
Elinye iphuzu elibalulekile yi- ukuqina nokubekezelela amaphuthaUma yaklanywa kahle, ukwehluleka kwe-microservice eyodwa akufanele kuwise lonke uhlelo. Ngamaphethini afana nokuphelelwa yisikhathi, ukuzama kabusha, kanye nama-circuit breakers, ezinye izinsizakalo zingaqhubeka nokusabela, zinciphise umthelela wokwehluleka.
Ngaphezu kwalokho, izinsizakalo ezincane zivumela ukuguquguquka kobuchwephesheIthimba ngalinye lingakhetha ulimi, uhlaka, noma isizindalwazi esifanele kakhulu isevisi yalo, uma nje lihlonipha izinkontileka zokuxhumana kanye nezinqubomgomo zomhlaba wonke zepulatifomu.
Ngakolunye uhlangothi lwemali sithola ubunzima bokusebenza nokubonakalaUkuphatha amashumi noma amakhulu ezinsizakalo kuhilela ukubhekana namanethiwekhi asatshalaliswe, ukulandelwa kwezinsizakalo eziphakathi, ukuloga okuhlanganisiwe, ukuphepha, ukuguqulelwa kwe-API, kanye nokuvumelana kwedatha, okudinga amathuluzi athuthukile nezinqubo ezivuthiwe.
Kubuye kube nzima ukuphathwa kokuxhumana phakathi kwezinsizakaloKubalulekile ukuklama ngokucophelela indlela idatha eshintshwa ngayo, indlela amaphutha aphathwa ngayo, indlela yokubambezeleka ephathwa ngayo, kanye nendlela yokuvimbela ukuthembela okuhamba kancane ekudonseleni phansi lonke uhlelo. Ukuhlola nokulungisa amaphutha akusasebenzi njengento encane, ngoba Akuyona ibhulokhi eyodwa evivinywayo, kodwa isethi yezinsizakalo ezixhunyiwe..

Ama-container: isisekelo sokusebenzisa ama-microservices ngokwawo
Ubuchwepheshe bezitsha bube ukusekelwa okuhle kakhulu kwezinsizakalo ezincane ngoba Ikuvumela ukuthi upakishe uhlelo lokusebenza kanye nakho konke okuncike kulo kube yiyunithi ejwayelekile nephathekayo.Esikhundleni sokufaka amalabhulali, izikhathi zokusebenza, namathuluzi kuseva ngayinye, konke kuhamba ngaphakathi kwesitsha.
Isitsha, ngokuyisisekelo, uhlobo olulula lwe-virtualization yezinga lesistimu yokusebenza: yabelana nge-kernel yomsingathi kodwa isebenzisa izinqubo ezindaweni zamagama ezihlukanisiwe kanye nezinsizakusebenza ezinqunyelwe ama-cgroup, okwenza ziqale ngokushesha futhi zisebenzise okungaphansi komshini obonakalayo.
Phakathi kwezimpawu zayo ezibalulekile kukhona ukufudumala, ukuphatheka kalula, ukukhanya kanye nokuguquguqukaIsevisi ngayinye encane esebenza esitsheni sayo iba lula ukuyibeka, ukuyimisa, ukuyibuyekeza, noma ukuyikopisha, ifanelana kahle nezimiso zezakhiwo ezisatshalalisiwe.
Uma kuqhathaniswa ne- imishini ebonakalayo yokukhiqizaizitsha Abadingi uhlelo lokusebenza oluphelele ngesikhathi ngasinye.kodwa kunalokho yabelana ngeyomsingathi. Lokhu kunciphisa kakhulu usayizi wezithombe kanye el tiempo de ibhuthiniokukuvumela ukuthi uphakamise noma ubhubhise izitsha ngemizuzwana.
I-Docker: ipulatifomu yokubhekisela yokufaka ama-microservices
I-Docker iyithuluzi elithandwa kakhulu lokusebenza ngeziqukathi, ngoba Kwenza kube lula ukudala, ukupakisha, ukusatshalaliswa, kanye nokwenza izinhlelo zokusebenza ezifakwe emathinini kokubili ezindaweni zokuthuthukiswa kanye nasekuhlolweni nasekukhiqizweni.
Umqondo wabo oyinhloko ukupakisha isofthiwe Izithombe ze-DockerLezi yizinto zobuciko ezingaguquki ezifaka ikhodi yohlelo lokusebenza, imitapo yolwazi eyidingayo, amathuluzi esistimu, kanye nokucushwa okuyisisekelo. Izinhlelo zokusebenza zenziwa ngalezi zithombe. izitsha ziyasebenza, okuyizibonelo ezihlukile ezisekelwe kuleso sithombe.
Ukwakhiwa kwesithombe kuchazwa ku- I-Dockerfile, ifayela lombhalo elicacisa imiyalelo efana nesithombe esiyisisekelo, isiqondisi esisebenzayo, ukuthi yimaphi amafayela okufanele uwakopishe, ukuthi yiziphi izinto okufanele uzifake, ukuthi yiziphi izimbobo okufanele zivele, nokuthi yimuphi umyalo okufanele uwusebenzise lapho uqala isitsha.
Cabanga ukuthi une-API ebhalwe ku-Node.js. Ungakha i-Dockerfile efana nale elandelayo, lapho Kusukela ngesithombe esisemthethweni se-Node, amafayela ayakopishwa, kufakwe ukuncika, bese kuchazwa umyalo wokuqalisa.:
FROM node:14
WORKDIR /app
COPY . .
RUN npm install
EXPOSE 3000
CMD
Leli fayela libonisa ukuthi uhlelo lokusebenza luzosebenza kufolda /uhlelo lokusebenza ngaphakathi kwesitsha, ukuthi ukuncika kuzofakwa nge-npm, ukuthi i-port 3000 izodalulwa, nokuthi, lapho iqala isitsha, izosebenza npm qala.
Ukuze wakhe futhi uqalise leso sitsha, mane nje usebenzise umyalo ovela kufolda yephrojekthi. ukwakha i-docker futhi ngemuva i-docker igijimaukumaka amachweba ukuvumela ukufinyelela kusuka kumphathi, noma ukusetshenziswa kwezinhlelo zokusebenza ezinamakhonteyina amaningi docker-compose:
docker build -t mi-app .
docker run -p 3000:3000 mi-app
Siyabonga kule modeli, Inkinga yakudala ethi "iyasebenza emshinini wami" incishisiwe yaba ncane kakhulu.Ngoba indawo yokusebenza ihamba nohlelo lokusebenza. Ngaphezu kwalokho, i-Docker ihlangana kalula nezinhlelo ze-CI/CD, amarejista azimele, kanye namathuluzi okuhlanganisa njenge-Kubernetes.
Izingxenye ezibalulekile ku-Docker kanye nendima yazo kuma-microservices
Ekusetshenzisweni okuvamile, sikhuluma nge I-Docker Hostokuyisistimu (ebonakalayo noma ebonakalayo) lapho kufakwa khona i-Docker; isebenza phezu kwayo. I-Docker Engine, i-daemon ephatha izithombe, amanethiwekhi, amavolumu, kanye nomjikelezo wokuphila kwesitsha.
Izitsha ziqukethe uhlelo lokusebenza kanye nokuxhomekeka kwalo okupakishwe esithombeniLokhu kuvumela noma iyiphi iseva ene-Docker ukuthi isebenze leso sithombe njalo. Lokhu kuvumelana kubalulekile uma unezinsizakalo eziningi ezincane ezisetshenziswa ezindaweni ezahlukene (ukuthuthukiswa, i-QA, ukukhiqiza, njll.).
Phakathi kwezinzuzo ezithakazelisa kakhulu ze-Docker yi- ukuphatheka phakathi kwezindawo, ukuzenzekela kokuthunyelwa, i-process modularity, kanye nokusekelwa kokubekwa kwezendlalelo kanye nokulawulwa kwenguqulo ezithombeniokwenza kube lula ukuguqula izinguquko nokwenza ngcono isitoreji.
UKubernetes: umhleli wokuphatha amakhulu ama-container
Uma usuka ezitsheni ezimbalwa uye emashumini noma amakhulu azo, Ukuziphatha ngesandla kuba yinto exakileYilapho iKubernetes ingena khona, ipulatifomu yomthombo ovulekile eyenzelwe ukuhlela izitsha ngobukhulu.
I-Kubernetes yenza imisebenzi ebalulekile ibe ngokuzenzakalelayo njenge ukuthunyelwa, ukukala, ukubuyiselwa kwamaphutha, ukucushwa kwenethiwekhi, kanye nesitoreji kwezinhlelo zokusebenza ezifakwe emathinini. Yenzelwe ukusebenza emafwini omphakathi, emafwini azimele, ezindaweni ezixubile, ngisho nasezindaweni ezingaphandle.
Ukugxila kwayo ekuphatheni amaqoqo akhiwe ngama-node amaningana (imishini) lapho kugijima khona izitsha. Umgomo ukuqinisekisa ukuthi izinhlelo zokusebenza zihlala zisesimweni esifiselekayo: inani lamakhophi, izinguqulo ezisetshenzisiwe, izinsiza ezabiwe, kanye nokuxhumana phakathi kwezinsizakalo.
Izinto eziyisisekelo ze-Kubernetes
Iyunithi encane kunazo zonke eKubernetes yi- I-podI-Pod imelela izibonelo zesitsha esisodwa noma ngaphezulu okumele zisebenze ndawonye (isibonelo, isitsha sohlelo lokusebenza kanye nesitsha se-sidecar sokuloba). Ama-Pod awapheli. Ziyadalwa, zibhujiswe, futhi zithathelwe indawo ngokwezidingo zeqembu.
Ukuze uveze ama-Pod akho, i-Kubernetes inikeza insiza Izikhungoesebenza njengesendlalelo sokuthatha inethiwekhi. Isevisi ihlanganisa isethi yama-Pod kanye Inikeza ikheli le-IP elizinzile, igama le-DNS, kanye nokulinganisela umthwalo wangaphakathi.ukuze amakhasimende angadingi ukwazi imininingwane ye-Pod ngayinye.
Umthombo Ukuthunyelwa Isetshenziselwa ukuchaza ukuthi ama-Pod kufanele asetshenziswe futhi abuyekezwe kanjani: ukuthi zingaki izifanekiso, yisiphi isithombe okufanele sisetshenziswe, yiziphi izithegi okufanele zisetshenziswe, kanye nesu lokubuyekeza okufanele lilandelwe. I-Kubernetes iphatha lokhu. gcina njalo inani elifunekayo lama-Pod asebenzayo kanye nokwenza izibuyekezo ezijikelezayo noma ukuhlehlisa uma ushintsha ukucushwa.
Kukhona nezinsizakusebenza ezifana I-ConfigMap kanye ne-SecretLezi zici zikuvumela ukuthi ukhiphe ukucushwa kwangaphandle futhi ugcine idatha ebucayi (amaphasiwedi, amathokheni, okhiye be-API) ngaphandle kokuwapakisha ngaphakathi kwezithombe. Lokhu kwenza kube lula kakhulu ukuphathwa kokucushwa okuphephile ezindaweni ezahlukene.
Indlela yokuhlela iqembu le-Kubernetes
“Inhloko” yeqembu yi- Uhlelo Lokulawula lwe-Kubernetesokuhlanganisa ndawonye izingxenye eziningana ezibhekene nokuhlela lonke uhlelo. Phakathi kwazo kukhona Iseva ye-APIokuyisango lokuphatha iqembu; noma yisiphi isenzo (ukudala i-Deployment, uhlu lwama-Pod, ukuguqula isevisi) sidlula kule API.
El Umhleli Inesibopho sokunquma ukuthi iyiphi i-Pod ngayinye esebenzisa i-node, icabangela izinsiza ezitholakalayo, ukuhlobana, kanye nemingcele; ngenkathi Umphathi wesilawuli Gada isimo seqembu bese uthatha isinyathelo ukuqinisekisa ukuthi iqiniso lihambisana nalokho okushilo kuma-manifest (isibonelo, dala ama-Pod amasha uma engaphansi kwalokho okucelile).
Isitoreji sikahulumeni sinikezwe ku njllIsizindalwazi esisatshalalisiwe sigcina ukucushwa kanye nolwazi lwazo zonke izinsiza zeqembu. Ngaphezu kwalokho, izinqubo ezifana nalezi ezilandelayo zisebenza ku-node ngayinye yesisebenzi: kubelet (i-ejenti exhumana ne-node ne-API Server), kube-ummeleli (elawula ithrafikhi yenethiwekhi kanye nokulinganisela umthwalo) kanye isikhathi sokusebenza sesitsha (I-Docker, i-container, i-CRI-O, njll.).
Ukufaka ama-microservices ku-Kubernetes ngamafayela e-YAML
Ukuze kusetshenziswe i-microservice ku-Kubernetes, kuvamile ukuyichaza nge- I-manifesto ye-YAML, lapho uchaza khona i-Deployment (ithempulethi ye-Pod, isithombe, amachweba, inani lamakhophi, amalebula) kanye ne-Service ehambisanayo ukuze uyiveze ngaphakathi noma ngaphandle kweqoqo.
Isibonelo esiyisisekelo sokusetshenziswa kohlelo lokusebenza olubizwa ngokuthi “uhlelo lokusebenza lwami” singase sibukeke kanje, lapho Kuchazwe amakhophi amathathu kanye ne-port 3000 njengembobo yesitsha:
apiVersion: apps/v1
kind: Deployment
metadata:
name: mi-app
spec:
replicas: 3
selector:
matchLabels:
app: mi-app
template:
metadata:
labels:
app: mi-app
spec:
containers:
- name: mi-app
image: mi-app:latest
ports:
- containerPort: 3000
Lo mbhalo ubonisa ukuthi iqembu kumele liqhubeke ama-Pod amathathu ayasebenza Ngesithombe esithi “my-app:latest”, konke kufakwe amathegi athi app=my-app, ukuze isevisi ikwazi ukuzithola futhi isabalalise ithrafikhi phakathi kwazo. Ama-Kubernetes aphatha ngokuzenzakalelayo i-logic yokukala, ukubuyekeza, kanye nokufaka ama-Pod esikhundleni uma kwenzeka ehluleka.
Kanye nokusetshenziswa, kuvamile ukuchaza izinhlobo zezinsizakalo I-ClusterIP, i-NodePort noma i-LoadBalancerKuye ngokuthi i-microservice kufanele itholakale kuphela ngaphakathi kweqoqo, kusukela kuma-node, noma kusuka ku-inthanethi, konke lokhu kulungiselelwa kunguqulo ezindaweni zokugcina, kuhlanganiswa kalula namapayipi e-CI/CD.
Ukukhulisa, ukuthuthukisa, kanye nokuzilungisa eKubernetes
Esinye sezizathu ezinkulu zokusebenzisa i-Kubernetes yikhono layo loku sikala futhi ubuyekeze ama-microservices ngaphandle kokuvimba uhlelo lokusebenzaUngashintsha inani lamakhophi ku-manifest (noma ngomyalo we-kubectl) futhi iqembu lizonakekela ukudala noma ukususa ama-Pod kuze kube yilapho inani elifunekayo selifinyelelwe.
Lokhu kukala kungaba ngesandla noma ngokuzenzakalelayo, kusetshenziswa izinsiza ezifana I-Horizontal Pod Autoscaler (HPA)Lesi sici silungisa ngokuguquguqukayo amakhophi ngokusekelwe kuma-metric afana ne-CPU noma imemori. Ngakho-ke, umthamo uyandiswa ngezikhathi zokufunwa okuphezulu, futhi izinsiza ziyakhululwa lapho umthwalo wehla.
Ngokuphathelene nezibuyekezo, i-Kubernetes implements izibuyekezo eziqhubekayo Ngokuzenzakalelayo: idala ama-Pod ngenguqulo entsha bese iwasusa kancane kancane kunguqulo yangaphambilini, ngaphandle kokusika ngokuzumayo. Uma kukhona okungahambi kahle, ukubuyela emuva Ikuvumela ukuthi ubuyisele ngokushesha inguqulo yangaphambilini.
Esinye isici esibalulekile yi- ukuzilungisaUma isitsha noma i-Pod ifa, i-Kubernetes iyiphinda ngokuzenzakalelayo; uma i-node iyeka ukuphendula, ama-Pod athintekile ahlelwa kabusha kwamanye ama-node atholakalayo, okugcina uhlelo lokusebenza lusebenza.
Ukuqapha nokuqashelwa kwezinsizakalo ezincane eKubernetes
Ukuze usebenzise indawo yama-microservices ngendlela efanele, akwanele nje ukufaka nokukhulisa: Udinga ukubonakala kwesikhathi sangempela ekusebenzeni kanye nesimo sezinsizakaloKu-Kubernetes, kuvamile kakhulu ukuhlanganisa amathuluzi afana ne-Prometheus ukuqoqa ama-metric kanye ne-Grafana ukuze uwabone ngeso lengqondo.
I-Prometheus iphatha amamethrikhi "okususa" kusuka kuma-Pod, ama-node, kanye nezingxenye zeqoqo, iwagcina, futhi ikuvumela ukuthi uchaze izexwayiso ngazo; kuhlanganiswe ne-Grafana, ungakha amadeshibhodi lapho Gada ukusetshenziswa kwe-CPU, inkumbulo, amaphutha e-HTTP, ukubambezeleka, inani lamakhophi, noma isimo se-node ngokucacile kakhulu.
Ngaphezu kwalokho, i-kubectl inikeza imiyalo Ukuze uhlole isimo se-Deployments, Services, Pods, kanye nezinye izinsiza, bheka izingodoLokhu kuhlanganisa ukuchaza imicimbi noma ukufinyelela ezitsheni zokulungisa amaphutha. Konke lokhu kuyingxenye yesu lokubona ukuthi, kuma-microservices, Akuyona into ongayikhetha uma ufuna ukulala ngokuthula..
Ubudlelwano phakathi kwe-microservices, i-Docker kanye ne-Kubernetes
Ama-Microservices, ama-Docker, nama-Kubernetes ahlangana ndawonye njengezingcezu zephazili efanayo: Ukwakhiwa kwe-Microservices kuchaza indlela oklama ngayo uhlelo lokusebenza, i-Docker iphatha ukupakisha nokusebenzisa isevisi ngayinye, kanti i-Kubernetes ihlela zonke lezo ziqukathi. eqenjini.
Insizakalo ngayinye encane ihlanganiswe ngaphakathi isithombe se-Docker esifaka ikhodi yaso kanye nokuxhomekeka kwasoLokhu kuqinisekisa ukuthi iziphatha ngendlela efanayo kwi-laptop yonjiniyela, endaweni yokuhlola, noma ekukhiqizweni kwamafu. Lokhu kupakisha okuqhubekayo kubalulekile kwifilosofi ye-DevOps.
Ngakolunye uhlangothi, iKubernetes isebenza njenge umhleli wekhonteyinaInquma ukuthi zingaki izimo ze-microservice ngayinye okufanele zisebenze, ukuthi zitholakala kuphi, ukuthi ithrafikhi ilingana kanjani nazo, ukuthi zilulama kanjani ekuhlulekeni, nokuthi zikhula kanjani lapho isidingo sikhuphuka noma sincipha.
Kuhlelo lokusebenza lwe-e-commerce, isibonelo, ungaba nezinsizakalo ezincane zokuqinisekisa, ikhathalogi, inqola yokuthenga, kanye nezinkokhelo, ngayinye inesithombe sayo se-Docker kanye nokufakwa kwe-Kubernetes. Ngale ndlela, Ungakhulisa ikhathalogi ngemikhankaso emikhulu noma izinkokhelo ngezikhathi ezibalulekile ngaphandle kokuthinta okunyefuthi ihlele yonke impilo yayo kusukela kumapayipi e-CI/CD kuya ekuqapheni kwangemva kokukhiqiza.
Ukufaka i-Docker kanye ne-Kubernetes ku-Windows
Uma usebenza neWindows, indlela elula yokuqala ukufaka Ideskithophu yeDockerokuhlanganisa injini ye-Docker namathuluzi engeziwe, ngisho nezinketho zokuvumela ama-Kubernetes ahlanganiswe emshinini wakho.
Inqubo evamile ihilela Landa i-Docker Desktop kusuka kuwebhusayithi esemthethweniSebenzisa isifaki (i-Docker Desktop Installer.exe) bese ulandela i-wizard. Ngesikhathi sokufaka, ungakhetha phakathi kokusebenzisa i-Hyper-V noma I-WSL 2 njengobuchwepheshe be-virtualization; uma kukhona obunye kuphela obutholakalayo, yibo obuzosetshenziswa.
Ngemva kokuthi uhlelo luqale kabusha, ukuvula i-Docker Desktop kuqalisa indawo yesitsha; uma i-virtualization ingazange inikwe amandla, umfakisi uqobo uvame ukunikeza kuvumele ngokuzenzakalelayoUkusuka lapho ungaqala izitsha, isibonelo, i-Nginx noma izinhlelo zakho zokusebenza.
Ukuze usebenzise ama-Kubernetes ku-Windows, kumele uqale ube nekhono le-Docker kanye ne-virtualization elivuliwe. Ngemuva kwalokho, ungavumela ama-Kubernetes kusuka ku-Docker Desktop noma faka futhi ulungiselele i-kubectl ukuphatha amaqoqo angaphandle, futhi uma kufaneleka, sebenzisa ideshibhodi ye-Kubernetes nge-manifest ekude.
Uma usulungisiwe, uzokwazi ukufinyelela ideshibhodi nge-proxy yendawo, usebenzisa ithokheni yokuqinisekisa ekhiqizwe nge-kubectl futhi ikhomba, isibonelo, kufayela lokucushwa. .kube/config ukuphatha ukufinyelela ku-cluster kusuka kusiphequluli.
Ukufaka i-Docker ne-Kubernetes ku-Linux
Kuzinhlelo ze-Linux, njenge-Ubuntu, ukufaka i-Docker kuvame ukuba lula kakhulu: Amaphakheji ayabuyekezwa, injini ye-Docker iyafakwa, futhi indawo iyahlolwa ukuqinisekisa ukuthi isebenza kahle. ukusebenzisa isitsha sokuhlola.
Izinyathelo ezijwayelekile zifaka phakathi ukubuyekeza uhlelo nge isibuyekezo se-apt-get kanye nokuthuthukiswa kwe-apt-getSusa noma yiziphi izinguqulo zangaphambilini ze-Docker Desktop, uma zikhona, bese ufaka i-docker-ce, i-docker-ce-cli, i-container.io, kanye ne-plugin ye-docker-compose kusuka ezindaweni zokugcina ezisemthethweni noma ngokucacisa inguqulo oyifunayo.
Ukuqinisekisa ukuthi konke kuhamba kahle, kuvame ukuqaliswa isitsha esithi "sawubona-mhlaba". Ilanda isithombe esincane bese isiqhuba.Uma umlayezo ubonakala kahle, une-Docker esebenzayo futhi isilungele ukuqala ukufaka ama-microservices akho.
Ngokuphathelene ne-Kubernetes, ku-Linux ingafakwa kusetshenziswa amathuluzi anjenge kubeadmUmsebenzi ojwayelekile uhilela ukwengeza ukhiye wokugcina we-Kubernetes, ukumisa ifayela lohlu lwephakheji, ukufaka i-kubeadm, nokuhlola inguqulo yayo.
Iqembu bese liqaliswa ku-node eyinhloko nge kubeadm init (echaza ububanzi benethiwekhi yama-Pod), umyalo othi “joyina” uyabuthwa ukuze ama-node esisebenzi ajoyine iqembu futhi ukufinyelela kwendawo kulungiselelwe ngokudala isiqondisi. $IKHAYA/.kubengokukopisha ifayela le-admin.conf nokulungisa izimvume.
Ngalokhu, uzoba neqoqo eliyisisekelo elilungele faka ama-microservices afakwe ezitsheni, faka inethiwekhi yama-Pod (i-Flannel, i-Calico, njll.) bese uqala ukusebenza nge-Deployments, Services kanye nezinye izinsiza ze-Kubernetes.
Imikhuba emihle kakhulu kanye nezincomo zokusebenzisa i-Docker kanye ne-Kubernetes
Ukuze uthole okuningi kulezi zindawo, kungcono ukulandela uchungechunge lwemikhuba emihle kakhulu nge-Docker, kuqala ngo sebenzisa izithombe ezisemthethweni noma ezithembekile, kungaba yi-Docker Hub noma ezindaweni zokugcina eziyimfihlo eziqinisekisiwe, ukuze kuncishiswe izingozi zokuphepha.
Kunconywa kakhulu thuthukisa usayizi wesithombe kusetshenziswa izithombe zesisekelo ezilula, ukwakhiwa kwezigaba eziningi nokususwa amafayela wesikhashana noma izinto zobuciko ezingadingekile. Izithombe ezincane zilandwa ngokushesha futhi zisheshise ukuthunyelwa ku-Kubernetes.
Elinye iphuzu elibalulekile ukusebenzisa amavolumu okuqhubeka kwedathaEsikhundleni sokugcina ulwazi ngaphakathi kweziqukathi, ukulahleka noma ukuphinda kwenziwe kwesiqukathi akubandakanyi ukulahlekelwa idatha ebalulekile.
Ukunciphisa izinsiza ezabelwe isitsha ngasinye (i-CPU, inkumbulo, i-I/O) kusiza ekwenzeni ukuvimbela isevisi eyodwa ekulawuleni umphathi futhi bonakalise okusele. Ngaphezu kwalokho, izitsha kumele ziqashwe ngamathuluzi afana ne-Docker Stats noma izixazululo ezithuthukisiwe ukuze kugcinwe ukulawula ekukhiqizeni.
Nge-Kubernetes, kubalulekile ukuqonda ukwakheka kweqoqo kanye nezingxenye zalo ngaphambi kokuthi kukhiqizwe. Lokhu kunciphisa izinhlungu eziningi.
Kungumqondo omuhle futhi automate ngangokunokwenzekaSebenzisa abalawuli bokukopisha, ama-autoscaler, kanye neMisebenzi ukuze ulayishe ama-batch; sebenzisa izibuyekezo ezigoqekayo kanye nama-rollback; bese uchaza ama-declarative manifest aguquliwe kuma-repositories e-Git.
Ukuphepha kumele kube yinto eza kuqala ngaso sonke isikhathi: Vimbela ukufinyelela ku-API Server, phatha iziqinisekiso usebenzisa i-Secrets, bhala idatha ngesikhathi sokuthutha kanye nalapho uphumuleSebenzisa ama-patches njalo bese uchaza izinqubomgomo zenethiwekhi ezikhawulela ukuxhumana phakathi kwezinsizakalo ngokwesimiso selungelo elincane.
Okokugcina, kubalulekile ukuba izinhlelo ezinhle zokuqapha kanye nokugcina imibhalo ezihlanganisiwekanye nezimo zangaphambi kokukhiqiza lapho izinguquko zingahlolwa khona ngokuphelele ngaphambi kokuba zilethwe eqenjini lokukhiqiza, okunciphisa izingozi kanye nezimanga ezingathandeki.
Lonke lolu hlelo lwe-microservices, izitsha ze-Docker, kanye ne-Kubernetes orchestration ikuvumela ukuthi wakhe izinhlelo eziguquguqukayo kakhulu, ezinwebekayo, futhi eziqinile kunezi-monolith zendabuko. Ngokuhlanganisa ukwakheka okucatshangelwe kahle, amathuluzi afanele, kanye nemikhuba emihle ye-DevOps, ungathumela izinhlelo zokusebenza ezizivumelanisa kalula nezinguquko zomsebenzi, zilulame ngokushesha ekuhlulekeni, futhi kulula ukuzishintsha ngokuhamba kwesikhathi.
Umbhali oshisekayo ngomhlaba wamabhayithi nobuchwepheshe ngokujwayelekile. Ngiyathanda ukwabelana ngolwazi lwami ngokubhala, futhi yilokho engizokwenza kule bhulogi, ngikubonise zonke izinto ezithakazelisayo kakhulu ngamagajethi, isofthiwe, ihadiwe, izitayela zobuchwepheshe, nokuningi. Inhloso yami ukukusiza ukuthi uzulazule emhlabeni wedijithali ngendlela elula nejabulisayo.
