Simudzira maitiro eKubernetes cluster yako
Pane imwe nguva, kana uchishandisa Kubernetes cluster, pane chinodiwa chekuvandudza kumhanya node. Izvi zvinogona kusanganisira zvigadziriso zvepakeji, kernel inogadziridza, kana kutumira kwemifananidzo mitsva yemuchina. MuKubernetes terminology iyi inonzi
Ichi chinyorwa chikamu che 4-post series:
- Ichi chinyorwa.
- Kuvhara chaiko kwemapods muKubernetes cluster
- Kunonoka kupera kwepodhi kana yadzimwa
- Maitiro ekudzivisa Kubernetes Cluster Downtime Uchishandisa PodDisruptionBudgets
(inenge. Tarisira kushandurwa kwezvinyorwa zvasara munhevedzano munguva pfupi iri kutevera)
Muchinyorwa chino, isu tichatsanangura ese maturusi anopihwa naKubernetes kuti awane zero kudzika nguva yemanodhi ari kumhanya musumbu rako.
Kutsanangura dambudziko
Isu tichatora nzira yekusaziva pakutanga, kuona matambudziko uye kuongorora njodzi dzinogona kuitika dzeiyi nzira, uye kuvaka ruzivo rwekugadzirisa rimwe nerimwe rematambudziko atinosangana nawo mukati mekutenderera. Mhedzisiro iyi gadziriso inoshandisa lifecycle hooks, kugadzirira probes, uye Pod kukanganisa mabhajeti kuti tiwane zero yedu yekudzika nguva chinangwa.
Kuti titange rwendo rwedu, ngatitorei muenzaniso chaiwo. Ngatiti isu tine Kubernetes cluster yemanode maviri, umo application iri kushanda nemapodhi maviri ari kumashure. Service
:
Ngatitangei nemapodhi maviri neNginx uye Sevhisi inomhanya pane edu maviri Kubernetes cluster node.
Isu tinoda kugadzirisa iyo kernel vhezheni yevashandi vaviri node musumbu redu. Tinozviita sei izvi? Mhinduro yakapusa ingave yekubhuya node nyowani neyakagadziridzwa gadziriso uye wobva wavhara manodhi ekare uchitanga matsva. Kunyange izvi zvichishanda, pachava nematambudziko mashoma neiyi nzira:
- Paunodzima node dzekare, mapodhi ari paari anodzimwawo. Ko kana mapodhi achida kucheneswa kuti avhare zvine nyasha? Iyo virtualization system yauri kushandisa inogona kusamirira kuti chirongwa chekuchenesa chipere.
- Ko kana ukadzima node dzese panguva imwe chete? Iwe uchawana yakadzikama yekudzikira apo mapodhi anoenda kune nyowani node.
Isu tinoda nzira yekutamisa nenyasha mapodhi kubva kune ekare node tichiona kuti hapana yevashandi vedu maitiro ari kushanda isu tichichinja kune node. Kana isu patinoita kutsiva kwakazara kwesumbu, semuenzaniso (kureva, isu tinotsiva VM mifananidzo), isu tinoda kuendesa inomhanya maapplication kubva kune yekare node kuenda kune itsva. Muzviitiko zvese izvi, tinoda kudzivirira mapodhi matsva kubva pakurongeka pamanodhi akare, uye tozobvisa ese anomhanya mapodhi kubva kwavari. Kuzadzisa zvinangwa izvi tinogona kushandisa murairo kubectl drain
.
Kugoverazve mapodhi ese kubva pane node
Kushanda kwedrain kunokubvumira kuti ugovere mapodhi ese kubva pane node. Munguva yekudonhedza mvura, iyo node inotaridzwa seisingagadzirike (mureza NoSchedule
) Izvi zvinodzivirira mapodhi matsva kubva pakuonekwa pairi. Ipapo kudonhedza kunotanga kudzinga mapodhi kubva kunode, kuvharira midziyo irikumhanya pane node, kutumira chiratidzo. TERM
midziyo mune pod.
Kunyange zvakadaro kubectl drain
ichaita basa guru rekudzinga mapods, pane zvimwe zvinhu zviviri zvinogona kuita kuti basa rekudhira rikundike:
- Chikumbiro chako chinofanira kukwanisa kupera nenyasha paunotumira
TERM
chiratidzo. Kana mapodhi adzingwa, Kubernetes anotumira chiratidzoTERM
midziyo uye inomirira kuti imire kwenguva yakatarwa, mushure mokunge, kana isina kumira, inoimisa nechisimba. Chero zvazvingaitika, kana mudziyo wako usingaone chiratidzo nenzira kwayo, unogona kudzima mapodhi zvisizvo kana ari kushanda izvozvi (semuenzaniso, dhatabhesi dhizaini iri kuitika). - Iwe unorasikirwa nemapodhi ese ane application yako. Inogona kunge isingawanikwe kana midziyo mitsva yatangwa pane nyowani nyowani, kana mapodhi ako akaiswa pasina vatongi, anogona kusatangazve.
Kudzivisa kunonoka
Kuti uderedze nguva yekudzikira kubva mukuvhiringwa kwekuzvidira, senge kubva mukudhiraivha pane node, Kubernetes inopa zvinotevera kutadza kubata sarudzo:
Mune mamwe ese akateedzana, isu tichashandisa aya maKubernetes maficha kudzikisira kukanganisa kwekutama kwepod. Kuita kuti zvive nyore kutevedzera pfungwa huru, isu tichashandisa muenzaniso wedu uri pamusoro neinotevera masisitimu ekugadzirisa:
---
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
Iyi gadziriso muenzaniso mudiki Deployment
, iyo inobata nginx pods musumbu. Mukuwedzera, iyo gadziriso inotsanangura sosi Service
, iyo inogona kushandiswa kuwana nginx pods musumbu.
Mukufamba kwese, isu tichawedzera kuwedzera iyi gadziriso kuitira kuti inozopedzisira yasanganisira zvese zvinopihwa naKubernetes kuderedza nguva.
Kuti uwane yakazadzikiswa uye yakaedzwa vhezheni yeKubernetes cluster inogadziridza zero downtime paAWS uye nekumwe, shanya.
Verengawo zvimwe zvinyorwa pane yedu blog:
Zero Downtime Deployment uye Databases Kubernetes: nei zvakakosha kumisikidza sisitimu yekushandisa manejimendi? Tekton Pipeline - Kubernetes-native mapaipi Kuvaka dynamic modules yeNginx Nhanganyaya kune Hashicorp Consul's Kubernetes Mvumo Ko kutama kubva kuClickHouse pasina mvumo kuenda kuClickHouse nemvumo kwakatungamira kupi?
Source: www.habr.com