Ag Ăšrachadh buidheann Kubernetes gun Ăšine downt

Ag Ăšrachadh buidheann Kubernetes gun Ăšine downt

Am pròiseas Úrachaidh airson do chruinneachadh Kubernetes

Aig àm air choreigin rè obrachadh cruinneachadh Kubernetes, bidh feum air nòdan ruith ùrachadh. Dh’ fhaodadh seo a bhith a’ toirt a-steach ùrachaidhean pacaid, ùrachadh eithne, no ìomhaighean ùra inneal brìgheil a chleachdadh. Ann an teirmean Kubernetes, canar seo… "Briseadh Saor-thoileach".

Tha am post seo mar phĂ irt de shreath 4 puist:

  1. Am post seo.
  2. DĂšnadh grinn de phodan ann an cruinneachadh Kubernetes
  3. CrÏochnachadh dàil air pod nuair a thèid a dhubhadh às
  4. Mar a sheachnas tu Ăšine downt clustair Kubernetes le PodDisruptionBudgets

(Nota an eadar-theangaiche: bi an dùil ri eadar-theangachaidhean de na h-artaigilean a tha air fhàgail san t-sreath a dh’ aithghearr)

San artaigil seo, mìnichidh sinn na h-innealan uile a tha Kubernetes a’ toirt seachad gus nach bi ùine downt sam bith ann airson nan nódan a tha a’ ruith sa chruinneachadh agad.

MĂŹneachadh duilgheadas

Cleachdaidh sinn dòigh-obrach shìmplidh an toiseach, a’ comharrachadh dhuilgheadasan agus a’ measadh chunnartan a dh’ fhaodadh a bhith an lùib na dòigh-obrach seo, agus a’ cruinneachadh eòlais gus dèiligeadh ri gach cùis a choinnicheas sinn tron ​​chearcall-beatha. Is e an toradh deireannach rèiteachadh a bhios a’ cleachdadh dubhain cearcall-beatha, proban deisealachd, agus buidseatan briseadh pod gus ar n-amas gun ùine downt neoni a choileanadh.

Gus ar turas a thòiseachadh, leig dhuinn eisimpleir concrait a ghabhail. Abair gu bheil cruinneachadh Kubernetes dà-nòd againn a’ ruith aplacaid le dà pod air a chùlaibh. Service:

Ag Ăšrachadh buidheann Kubernetes gun Ăšine downt

Tòisichidh sinn le dà pod le Nginx agus Service a’ ruith air an dà nód cruinneachaidh Kubernetes againn.

Tha sinn airson an dreach kernel de dhà nód obrach san chruinneachadh againn ùrachadh. Ciamar a nì sinn seo? Bhiodh fuasgladh sìmplidh ann a bhith a’ tòiseachadh nódan ùra leis an rèiteachadh ùraichte agus an uairsin a’ dùnadh sìos na seann nódan fhad ‘s a tha sinn a’ cur air bhog na feadhainn ùra. Ged a dh’ obraicheadh ​​seo, tha grunn dhuilgheadasan ann leis an dòigh-obrach seo:

  • Nuair a dhĂšineas tu seann nĂłdan, thèid na pods a tha a’ ruith orra a dhĂšnadh sĂŹos cuideachd. Dè ma dh’fheumar na pods a ghlanadh gus an dĂšnadh sĂŹos ceart? Is dòcha nach bi an siostam brĂŹgheileachaidh a tha thu a’ cleachdadh a’ feitheamh gus am bi am pròiseas glanaidh deiseil.
  • Dè thachras ma dhĂšineas tu na nĂłdan uile aig an aon Ă m? Bidh Ăšine downt fada agad fhad ’s a bhios na pods a’ gluasad gu nĂłdan Ăšra.

Feumaidh sinn dòigh air pods a ghluasad gu grinn bho sheann nodan agus dèanamh cinnteach nach eil gin de na sruthan-obrach againn a’ ruith fhad ‘s a tha sinn a’ dèanamh atharrachaidhean air nod. No, nuair a bhios sinn a’ dèanamh ath-chur cruinneachadh iomlan, mar a tha san eisimpleir (i.e., a’ cur ìomhaighean VM an àite), tha sinn airson aplacaidean a tha a’ ruith a ghluasad bho sheann nodan gu feadhainn ùra. Anns an dà chùis, tha sinn airson casg a chuir air pods ùra bho bhith air an clàradh air na seann nodan agus an uairsin na pods uile a tha a’ ruith a thoirt a-mach àsda. Gus na h-amasan sin a choileanadh, is urrainn dhuinn an àithne a chleachdadh kubectl drain.

Ath-sgaoileadh a h-uile pod bho nĂłd

Leigidh an obair drèanaidh leat na pods uile bho nód ath-riarachadh. Rè na h-obrach drèanaidh, thèid an nód a chomharrachadh mar neo-chlàraichte (am bratach NoSchedule). Tha seo a’ cur casg air pods ùra a bhith air an cruthachadh air. An uairsin bidh an drain a’ tòiseachadh air pods a chuir a-mach às an nód, a’ cur crìoch air soithichean a tha an-dràsta a’ ruith air an nód le bhith a’ cur comharra. TERM soithichean ann am poit.

Ged a tha kubectl drain Ged a tha seo ag obair gu math airson pods a chuir a-mach, tha dà fheart eile ann a dh’ fhaodadh adhbhrachadh gun tèid an obair drèanaidh a chall:

  • Feumaidh an t-iarrtas agad a bhith comasach air crĂŹochnachadh gu grinn nuair a thèid a chuir a-steach. TERM comharra. Nuair a thèid pods a chur a-mach, cuiridh Kubernetes comharra TERM soithichean agus a’ feitheamh gus an stad iad airson Ăšine shònraichte, agus Ă s dèidh sin, mura stad iad, cuiridh e crĂŹoch orra le fòirneart. Co-dhiĂš, mura freagair an soitheach agad an comharra gu ceart, faodaidh tu fhathast pods a thoirt gu crĂŹch gu ceĂ rr ma tha iad a’ ruith an-drĂ sta (mar eisimpleir, ma tha malairt stòr-dĂ ta a’ dol air adhart).
  • Caillidh tu na pods uile anns a bheil an aplacaid agad. Is dòcha nach bi e ri fhaighinn nuair a chuireas tu soithichean Ăšra air bhog air nodan Ăšra, no, ma thèid na pods agad a chleachdadh Ă s aonais rianadairean, is dòcha nach tòisich iad a-rithist idir.

A’ seachnadh ùine downt

Gus an ùine downt a lughdachadh bho bhriseadh saor-thoileach, leithid gnìomhachd drèanadh nód, tha Kubernetes a’ toirt seachad na roghainnean làimhseachaidh fàilligidhean a leanas:

Anns na h-earrannan a tha air fhàgail den t-sreath seo, cleachdaidh sinn na feartan Kubernetes seo gus buaidh imrich pod a lughdachadh. Gus am bun-bheachd a dhèanamh nas fhasa a leantainn, cleachdaidh sinn an eisimpleir againn gu h-àrd leis an rèiteachadh ghoireasan a leanas:

---
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

Is e eisimpleir as lugha a tha san rèiteachadh seo. Deployment, a bhios a’ riaghladh pods nginx anns a’ chnuasach. A bharrachd air sin, tha an rèiteachadh a’ toirt cunntas air an goireas Service, a ghabhas cleachdadh gus faighinn gu pods nginx sa chlasair.

Tron chearcall, leudaichidh sinn an rèiteachadh seo mean air mhean gus am bi e mu dheireadh a’ toirt a-steach a h-uile feart a tha Kubernetes a’ toirt seachad gus ùine downt a lughdachadh.

Airson dreach lĂ n-ghnĂŹomhach agus deuchainnichte de Ăšrachaidhean cruinneachaidh Kubernetes airson gun Ăšine downtaidh sam bith air AWS agus goireasan eile, tadhail air Gruntwork.io.

Leugh cuideachd artaigilean eile air ar blog:

Source: www.habr.com

Ceannaich aoigheachd earbsach airson làraich le dìon DDoS, frithealaichean VPS VDS 🔥 Ceannaich aoigheachd làrach-lìn earbsach le dìon DDoS, frithealaichean VPS VDS | ProHoster