Thuthukisa inqubo yeqoqo lakho le-Kubernetes
Ngesinye isikhathi, lapho usebenzisa iqoqo le-Kubernetes, kunesidingo sokuvuselela ama-node asebenzayo. Lokhu kungase kuhlanganise izibuyekezo zephakheji, izibuyekezo ze-kernel, noma ukuthunyelwa kwezithombe ezintsha zemishini ebonakalayo. Ku-Kubernetes terminology lokhu kubizwa
Lokhu okuthunyelwe kuyingxenye yochungechunge lokuthunyelwe okungu-4:
- Lokhu okuthunyelwe.
- Ukuvalwa okulungile kwama-pods kuqoqo le-Kubernetes
- Ukunqanyulwa kwe-pod kubambezelekile uma isuswa
- Ungagwema Kanjani Isikhathi Sokuphumula Se-Kubernetes Cluster Usebenzisa I-PodDisruptionBudgets
(cishe. Lindela ukuhunyushwa kwama-athikili asele ochungechungeni maduze nje)
Kulesi sihloko, sizochaza wonke amathuluzi ahlinzekwa yi-Kubernetes ukuze sifinyelele isikhathi sokuphumula se-zero kumanodi asebenza kuqoqo lakho.
Incazelo Yenkinga
Sizothatha indlela engenangqondo ekuqaleni, sihlonze izinkinga futhi sihlole ubungozi obungaba khona bale ndlela, futhi sakhe ulwazi lokuxazulula inkinga ngayinye esihlangabezana nayo kuwo wonke umjikelezo. Umphumela uwukucushwa okusebenzisa izingwegwe zomjikelezo wempilo, ama-probes ukulungela, nesabelomali sokuphazamiseka kwe-Pod ukuze sifinyelele umgomo wethu wesikhathi sokuphumula onguziro.
Ukuze siqale uhambo lwethu, ake sithathe isibonelo esiphathekayo. Ake sithi sineqoqo le-Kubernetes lama-node amabili, lapho isicelo sisebenza nama-pods amabili atholakala ngemuva. Service
:
Ake siqale ngama-pods amabili nge-Nginx ne-Service esebenza kuma-cluster node ethu amabili e-Kubernetes.
Sifuna ukubuyekeza inguqulo ye-kernel yamanodi amabili ezisebenzi kuqoqo lethu. Sikwenza kanjani lokhu? Isixazululo esilula kungaba ukuqala ama-node amasha ngokucushwa okubuyekeziwe bese uvala ama-node amadala ngenkathi uqala amasha. Ngenkathi lokhu kuzosebenza, kuzoba nezinkinga ezimbalwa ngale ndlela:
- Uma ucisha ama-node amadala, ama-pods agijima kuwo nawo azocishwa. Kuthiwani uma ama-pods edinga ukusulwa ukuze kuvalwe kahle? Isistimu ye-virtualization oyisebenzisayo ingase ingalindi ukuthi inqubo yokuhlanza iphele.
- Kuthiwani uma uvala wonke ama-node ngesikhathi esisodwa? Uzothola isikhathi sokuphumula esihle ngenkathi ama-pods ethuthela ezindaweni ezintsha.
Sidinga indlela yokuthutha ngomusa ama-pod kusuka kumanodi amadala kuyilapho siqinisekisa ukuthi azikho izinqubo zethu zabasebenzi ezisebenzayo ngenkathi senza izinguquko endaweni. Noma uma senza ukushintshwa okuphelele kweqoqo, njengakusibonelo (okungukuthi, sishintsha izithombe ze-VM), sifuna ukudlulisa izinhlelo zokusebenza ezisebenzayo zisuka kumanodi amadala ziye kwezintsha. Kuzo zombili izimo, sifuna ukuvimbela ama-pods amasha ekuhleleni kumanodi amadala, bese sikhipha wonke ama-pods asebenzayo kuwo. Ukufeza lezi zinhloso singasebenzisa umyalo kubectl drain
.
Ukusabalalisa kabusha wonke ama-pods kusuka ku-node
Ukusebenza kwe-drain kukuvumela ukuthi usabalalise kabusha wonke ama-pods kusuka ku-node. Ngesikhathi sokukhishwa kwe-drain, i-node imakwa njengengahleleki (ifulegi NoSchedule
). Lokhu kuvimbela ama-pod amasha ukuthi angaveli kuyo. Khona-ke i-drain iqala ukukhipha ama-pods ku-node, ivala iziqukathi okwamanje ezisebenza ku-node, ithumela isignali. TERM
iziqukathi kuphod.
Noma kunjalo kubectl drain
izokwenza umsebenzi omuhle kakhulu wokuxosha ama-pods, kunezinye izici ezimbili ezingabangela ukuthi ukusebenza kwe-drain kuhluleke:
- Isicelo sakho kufanele sikwazi ukunqanyulwa kahle lapho usithumela
TERM
isignali. Lapho ama-pods exoshwa, u-Kubernetes uthumela isignaliTERM
iziqukathi bese ilinda ukuthi ime isikhathi esithile esinqunyiwe, ngemva kwalokho, uma ingakami, iwaqeda ngenkani. Kunoma ikuphi, uma isiqukathi sakho singayiboni kahle isignali, usengakwazi ukucisha ama-pods ngokungalungile uma esebenza njengamanje (isibonelo, ukuthengiswa kwedathabhesi kuyaqhubeka). - Ulahlekelwa yiwo wonke ama-pods aqukethe uhlelo lwakho lokusebenza. Ingase ingatholakali lapho iziqukathi ezintsha zethulwa kumanodi amasha, noma uma ama-pods akho esetshenziswa ngaphandle kwezilawuli, angase angaqali kabusha nhlobo.
Ukugwema isikhathi sokuphumula
Ukuze unciphise isikhathi sokuphumula kusukela ekuphazamisekeni ngokuzithandela, njengokuphuma kokukhipha amanzi endaweni, i-Kubernetes inikeza izinketho ezilandelayo zokubamba ukwehluleka:
Kulolu chungechunge olusele, sizosebenzisa lezi zici ze-Kubernetes ukuze sinciphise umthelela wokufuduka kwe-pod. Ukwenza kube lula ukulandela umqondo oyinhloko, sizosebenzisa isibonelo sethu esingenhla ngokucushwa kwensiza elandelayo:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.15
ports:
- containerPort: 80
---
kind: Service
apiVersion: v1
metadata:
name: nginx-service
spec:
selector:
app: nginx
ports:
- protocol: TCP
targetPort: 80
port: 80
Lokhu kulungiselelwa kuyisibonelo esincane Deployment
, ephatha ama-nginx pods kuqoqo. Ngaphezu kwalokho, ukucushwa kuchaza insiza Service
, engasetshenziswa ukufinyelela i-nginx pods kuqoqo.
Kuwo wonke umjikelezo, sizokwandisa ngokuphindaphindiwe lokhu kulungiselelwa ukuze ekugcineni kufake wonke amakhono ahlinzekwa yi-Kubernetes ukuze kuncishiswe isikhathi sokuphumula.
Ukuze uthole inguqulo esetshenziswe ngokugcwele futhi evivinyiwe yezibuyekezo zeqoqo le-Kubernetes ukuze uthole isikhathi sokuphumula esingekho ku-AWS nangale kwalokho, vakashela
Funda nezinye izindatshana kubhulogi yethu:
Zero Downtime Deployment and Databases Kubernetes: kungani kubaluleke kangaka ukusetha ukuphathwa kwensiza yesistimu? I-Tekton Pipeline - amapayipi omdabu waseKubernetes Ukwakha amamojula aguqukayo e-Nginx Isingeniso se-Hashicorp Consul's Kubernetes Authorization Ukufuduka kusuka ku-ClickHouse ngaphandle kokugunyazwa kuya ku-ClickHouse ngokugunyazwa kuholele kuphi?
Source: www.habr.com