Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Oṣu Kẹrin Ọjọ 8 ni apejọ Saint HighLoad++ 2019, gẹgẹ bi apakan ti apakan "DevOps ati Awọn iṣẹ-ṣiṣe", ijabọ kan "Imugboroosi ati imudara Kubernetes" ni a fun, ni ẹda ti awọn oṣiṣẹ mẹta ti ile-iṣẹ Flant ti kopa. Ninu rẹ, a sọrọ nipa awọn ipo lọpọlọpọ ninu eyiti a fẹ lati faagun ati ni ibamu si awọn agbara ti Kubernetes, ṣugbọn fun eyiti a ko rii ojutu ti o ṣetan ati irọrun. A ni awọn solusan pataki ni irisi awọn iṣẹ akanṣe orisun orisun, ati pe ọrọ yii tun jẹ igbẹhin si wọn.

Nipa aṣa, a ni inudidun lati ṣafihan fidio iroyin (Awọn iṣẹju 50, alaye diẹ sii ju nkan naa lọ) ati akopọ akọkọ ni fọọmu ọrọ. Lọ!

Mojuto ati awọn afikun ni K8s

Kubernetes n yi ile-iṣẹ pada ati awọn isunmọ si iṣakoso ti o ti fi idi mulẹ fun igba pipẹ:

  • O ṣeun fun u abstractions, a ko ṣiṣẹ mọ pẹlu awọn imọran gẹgẹbi iṣeto atunto kan tabi ṣiṣe aṣẹ kan (Oluwanje, Ansible...), ṣugbọn lo akojọpọ awọn apoti, awọn iṣẹ, ati bẹbẹ lọ.
  • A le mura awọn ohun elo lai lerongba nipa awọn nuances ti awọn pato ojula, lori eyiti yoo ṣe ifilọlẹ: irin igboro, awọsanma ti ọkan ninu awọn olupese, ati bẹbẹ lọ.
  • Pẹlu awọn K8 o ko ti ni iraye si ti o dara ju ise lori siseto awọn amayederun: awọn ilana igbelosoke, iwosan ara ẹni, ifarada aṣiṣe, bbl

Bibẹẹkọ, nitorinaa, ohun gbogbo ko ni irọrun: Kubernetes tun mu awọn italaya tuntun tirẹ wa.

Kubernetes kii ṣe jẹ apapọ ti o yanju gbogbo awọn iṣoro ti gbogbo awọn olumulo. Mojuto Kubernetes jẹ iduro fun ṣeto awọn iṣẹ ṣiṣe to kere julọ ti o wa ninu gbogbo iṣupọ:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Kubernetes mojuto n ṣalaye ipilẹ ipilẹ ti awọn alakoko fun akojọpọ awọn apoti, iṣakoso ijabọ, ati bẹbẹ lọ. A ti sọrọ nipa wọn ni alaye diẹ sii ni Iroyin 2 odun seyin.

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Ni apa keji, K8s nfunni awọn aye nla lati faagun awọn iṣẹ ti o wa, eyiti o ṣe iranlọwọ lati pa awọn miiran - pato - olumulo aini. Awọn afikun si Kubernetes jẹ ojuṣe awọn alakoso iṣupọ, ti o gbọdọ fi sori ẹrọ ati tunto ohun gbogbo ti o yẹ lati gba iṣupọ wọn "ni apẹrẹ ti o tọ" (lati yanju awọn iṣoro wọn pato). Iru awọn afikun wo ni awọn wọnyi? Jẹ ki a wo awọn apẹẹrẹ diẹ.

Awọn apẹẹrẹ ti awọn afikun

Lehin ti o ti fi Kubernetes sori ẹrọ, a le yà wa lẹnu pe Nẹtiwọọki ti o jẹ pataki fun ibaraenisepo ti awọn adarọ-ese mejeeji laarin ipade kan ati laarin awọn apa ko ṣiṣẹ lori tirẹ. Ekuro Kubernetes ko ṣe iṣeduro awọn asopọ to wulo; dipo, o ṣe ipinnu nẹtiwọọki naa ni wiwo (CNI) fun awọn afikun ẹgbẹ kẹta. A gbọdọ fi ọkan ninu awọn afikun wọnyi sori ẹrọ, eyiti yoo jẹ iduro fun iṣeto nẹtiwọọki.

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Apeere ti o sunmọ ni awọn solusan ipamọ data (disiki agbegbe, ẹrọ Àkọsílẹ nẹtiwọki, Ceph ...). Ni ibẹrẹ wọn wa ni mojuto, ṣugbọn pẹlu dide CSI ipo naa yipada si nkan ti o jọra si eyiti a ti ṣalaye tẹlẹ: wiwo naa wa ni Kubernetes, ati imuse rẹ wa ni awọn modulu ẹni-kẹta.

Awọn apẹẹrẹ miiran pẹlu:

  • Ingress-awọn oludari (wo atunyẹwo wọn ni wa to šẹšẹ article).
  • oluṣakoso cert:

    Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

  • Awọn oniṣẹ jẹ gbogbo kilasi ti awọn afikun (eyiti o pẹlu oluṣakoso ijẹrisi ti a mẹnuba), wọn ṣalaye (awọn) ati awọn oludari (awọn). Imọye ti iṣẹ wọn ni opin nikan nipasẹ oju inu wa ati gba wa laaye lati yi awọn paati amayederun ti a ti ṣetan (fun apẹẹrẹ, DBMS) sinu awọn alakoko, eyiti o rọrun pupọ lati ṣiṣẹ pẹlu (ju pẹlu ṣeto awọn apoti ati awọn eto wọn). Nọmba nla ti awọn oniṣẹ ti kọ - paapaa ti ọpọlọpọ ninu wọn ko ba ti ṣetan fun iṣelọpọ, o jẹ ọrọ kan ti akoko:

    Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

  • Awọn iwọn - Apejuwe miiran ti bii Kubernetes ṣe yapa ni wiwo (Metrics API) lati imuse (awọn afikun awọn ẹni-kẹta gẹgẹbi ohun ti nmu badọgba Prometheus, oluranlowo iṣupọ Datadog…).
  • fun monitoring ati statistiki, nibiti ni iṣe kii ṣe nilo nikan Prometheus ati Grafana, sugbon tun kube-ipinle-metrics, node-Exporter, ati be be lo.

Ati pe eyi kii ṣe atokọ pipe ti awọn afikun… Fun apẹẹrẹ, ni ile-iṣẹ Flant ti a fi sii lọwọlọwọ 29 awọn afikun (gbogbo awọn ti o ṣẹda lapapọ 249 Kubernetes ohun). Ni kukuru, a ko le rii igbesi aye iṣupọ laisi awọn afikun.

Adaṣiṣẹ

A ṣe apẹrẹ awọn oniṣẹ lati ṣe adaṣe awọn iṣẹ ṣiṣe ti a pade ni gbogbo ọjọ. Eyi ni awọn apẹẹrẹ igbesi aye gidi fun eyiti kikọ oniṣẹ kan yoo jẹ ojutu ti o tayọ:

  1. Iforukọsilẹ ni ikọkọ (ie to nilo wiwọle) pẹlu awọn aworan fun ohun elo naa. O ti wa ni ro pe kọọkan podu ti wa ni sọtọ pataki kan ikoko ti o fun laaye ìfàṣẹsí ninu awọn iforukọsilẹ. Iṣẹ-ṣiṣe wa ni lati rii daju pe aṣiri yii wa ni aaye orukọ ki awọn pods le ṣe igbasilẹ awọn aworan. Ọpọlọpọ awọn ohun elo le wa (kọọkan ti o nilo aṣiri), ati pe o wulo lati ṣe imudojuiwọn awọn aṣiri ara wọn nigbagbogbo, nitorinaa aṣayan ti fifi awọn aṣiri silẹ nipasẹ ọwọ ti yọkuro. Eyi ni ibiti oniṣẹ wa si igbala: a ṣẹda oluṣakoso ti yoo duro fun aaye orukọ lati han ati, da lori iṣẹlẹ yii, yoo fi asiri kan kun si aaye orukọ.
  2. Jẹ ki nipasẹ aiyipada wiwọle lati awọn adarọ-ese si Intanẹẹti ti ni eewọ. Ṣugbọn nigbami o le nilo: o jẹ ọgbọn fun ẹrọ igbanilaaye iwọle lati ṣiṣẹ ni irọrun, laisi nilo awọn ọgbọn kan pato, fun apẹẹrẹ, nipasẹ wiwa aami kan ninu aaye orukọ. Bawo ni oniṣẹ ṣe le ṣe iranlọwọ fun wa nibi? A ṣẹda oludari ti o duro de aami lati han ni aaye orukọ ati ṣafikun eto imulo ti o yẹ fun iwọle si Intanẹẹti.
  3. Ipo ti o jọra: ṣebi a nilo lati ṣafikun kan idotin, ti o ba ni aami ti o jọra (pẹlu iru iṣaaju). Awọn iṣe pẹlu oniṣẹ jẹ kedere ...

Ni eyikeyi iṣupọ, awọn iṣẹ ṣiṣe deede gbọdọ jẹ ipinnu, ati ọtun eyi le ṣee ṣe nipa lilo awọn oniṣẹ ẹrọ.

Ni akojọpọ gbogbo awọn itan ti a ṣalaye, a wa si ipari pe fun iṣẹ itunu ni Kubernetes o nilo: A) fi sori ẹrọ awọn afikun, b) se agbekale awọn oniṣẹ (fun lohun lojojumo admin awọn iṣẹ-ṣiṣe).

Bii o ṣe le kọ alaye kan fun Kubernetes?

Ni gbogbogbo, ilana naa rọrun: +

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

... ṣugbọn lẹhinna o wa ni pe:

  • Kubernetes API jẹ dipo ti kii ṣe nkan ti o gba akoko pupọ lati ṣakoso;
  • siseto tun kii ṣe fun gbogbo eniyan (ede Go ni a yan gẹgẹbi ede ti o fẹ nitori ilana pataki kan wa fun rẹ - SDK onišẹ);
  • Ipo naa jẹ iru pẹlu ilana funrararẹ.

Isalẹ ila: lati kọ oludari (onišẹ) ni lati na significant oro lati ṣe iwadi ohun elo. Eyi yoo jẹ idalare fun awọn oniṣẹ “nla” - sọ, fun MySQL DBMS. Ṣugbọn ti a ba ranti awọn apẹẹrẹ ti a ṣalaye loke (awọn aṣiri ṣiṣi silẹ, iwọle si awọn adarọ-ese si Intanẹẹti…), eyiti a tun fẹ lati ṣe ni deede, lẹhinna a yoo loye pe igbiyanju ti a lo yoo kọja abajade ti a nilo ni bayi:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Ni gbogbogbo, atayanyan kan dide: lo ọpọlọpọ awọn ohun elo ati rii ọpa ti o tọ fun awọn alaye kikọ, tabi ṣe ni ọna ti atijọ (ṣugbọn yarayara). Lati yanju rẹ - lati wa adehun laarin awọn iwọn wọnyi - a ṣẹda iṣẹ akanṣe tiwa: ikarahun-onišẹ (wo tun rẹ laipe fii lori ibudo).

Ikarahun-onišẹ

Báwo ló ṣe ń ṣiṣẹ́? Iṣupọ naa ni adarọ-ese ti o ni alakomeji Go pẹlu oniṣẹ ẹrọ ikarahun kan. Next si rẹ ni a ti ṣeto ti ìkọ (awọn alaye diẹ sii nipa wọn - wo isalẹ). Oluṣeto ikarahun funrararẹ ṣe alabapin si awọn kan Awọn iṣẹlẹ ni Kubernetes API, lori iṣẹlẹ ti o ṣe ifilọlẹ awọn kio ti o baamu.

Bawo ni ikarahun-onišẹ mọ eyi ti ìkọ lati pe lori eyi ti awọn iṣẹlẹ? Alaye yii ni a gbejade si oniṣẹ ẹrọ ikarahun nipasẹ awọn kio funrararẹ, ati pe wọn ṣe ni irọrun pupọ.

Kio jẹ iwe afọwọkọ Bash tabi eyikeyi faili ti o le ṣiṣẹ ti o gba ariyanjiyan kan --config ati idahun pẹlu JSON. Ikẹhin pinnu iru awọn nkan ti o nifẹ si ati iru awọn iṣẹlẹ (fun awọn nkan wọnyi) yẹ ki o dahun si:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Emi yoo ṣe apejuwe imuse lori ikarahun-oṣiṣẹ ti ọkan ninu awọn apẹẹrẹ wa - jijẹ awọn aṣiri fun iraye si iforukọsilẹ ikọkọ pẹlu awọn aworan ohun elo. O ni awọn ipele meji.

Iwa: 1. Kọ ìkọ

Ni akọkọ, ninu kio a yoo ṣe ilana --config, nfihan pe a nifẹ si awọn aaye orukọ, ati ni pataki, akoko ti ẹda wọn:

[[ $1 == "--config" ]] ; then
  cat << EOF
{
  "onKubernetesEvent": [
    {
      "kind": "namespace",
      "event": ["add"]
    }
  ]
}
EOF
…

Bawo ni ọgbọn naa yoo dabi? Bakannaa o rọrun:

…
else
  createdNamespace=$(jq -r '.[0].resourceName' $BINDING_CONTEXT_PATH)
  kubectl create -n ${createdNamespace} -f - << EOF
Kind: Secret
...
EOF
fi

Igbesẹ akọkọ ni lati wa iru orukọ ti o ṣẹda, ati ekeji ni lati ṣẹda rẹ ni lilo kubectl asiri fun yi namespace.

Iwa: 2. Ṣiṣepo aworan naa

Gbogbo ohun ti o ku ni lati kọja kio ti a ṣẹda si oniṣẹ ikarahun - bawo ni a ṣe le ṣe eyi? Oṣiṣẹ ikarahun funrararẹ wa bi aworan Docker, nitorinaa iṣẹ-ṣiṣe wa ni lati ṣafikun kio si itọsọna pataki kan ni aworan yii:

FROM flant/shell-operator:v1.0.0-beta.1
ADD my-handler.sh /hooks

Gbogbo ohun ti o ku ni lati ko o jọ ki o si titari rẹ:

$ docker build -t registry.example.com/my-operator:v1 .
$ docker push registry.example.com/my-operator:v1

Ifọwọkan ikẹhin ni lati fi aworan ranṣẹ si iṣupọ. Lati ṣe eyi, jẹ ki a kọ imuṣiṣẹ:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: my-operator
spec:
  template:
    spec:
      containers:
      - name: my-operator
        image: registry.example.com/my-operator:v1 # 1
      serviceAccountName: my-operator              # 2

Awọn aaye meji wa lati san ifojusi si:

  1. itọkasi aworan tuntun ti a ṣẹda;
  2. Eyi jẹ paati eto ti (ni o kere ju) nilo awọn ẹtọ lati ṣe alabapin si awọn iṣẹlẹ ni Kubernetes ati lati pin awọn aṣiri si awọn aaye orukọ, nitorinaa a ṣẹda AccountAccount (ati ṣeto awọn ofin) fun kio.

Abajade - a yanju iṣoro wa ìbátan fun Kubernetes ni ọna ti o ṣẹda oniṣẹ kan fun sisọ awọn asiri.

Miiran ikarahun-onišẹ awọn ẹya ara ẹrọ

Lati ṣe idinwo awọn nkan ti iru ti o yan ti kio yoo ṣiṣẹ pẹlu, won le wa ni filtered, yiyan ni ibamu si awọn akole kan (tabi lilo matchExpressions):

"onKubernetesEvent": [
  {
    "selector": {
      "matchLabels": {
        "foo": "bar",
       },
       "matchExpressions": [
         {
           "key": "allow",
           "operation": "In",
           "values": ["wan", "warehouse"],
         },
       ],
     }
     …
  }
]

Pese deduplication siseto, eyiti - lilo àlẹmọ jq - gba ọ laaye lati yi awọn nkan JSON nla pada si awọn kekere, nibiti awọn paramita yẹn nikan wa ti a fẹ lati ṣe atẹle fun awọn ayipada.

Nigbati a ba pe kio kan, oniṣẹ ikarahun naa kọja ohun data, eyi ti o le ṣee lo fun eyikeyi nilo.

Awọn iṣẹlẹ ti o nfa kio ko ni opin si awọn iṣẹlẹ Kubernetes: oniṣẹ ẹrọ ikarahun pese atilẹyin fun pipe ìkọ nipa akoko (bii crontab ni oluṣeto aṣa), bakanna bi iṣẹlẹ pataki kan lori Ibẹrẹ. Gbogbo awọn iṣẹlẹ wọnyi le ni idapo ati sọtọ si kio kanna.

Ati awọn ẹya meji diẹ sii ti oniṣẹ ikarahun:

  1. O ṣiṣẹ asynchronously. Niwọn igba ti iṣẹlẹ Kubernetes kan ti gba (gẹgẹbi nkan ti o ṣẹda) ti gba, awọn iṣẹlẹ miiran (gẹgẹbi ohun kanna ti paarẹ) le ti waye ninu iṣupọ, ati awọn kio nilo lati ṣe akọọlẹ fun eyi. Ti kio ba ti ṣiṣẹ pẹlu aṣiṣe kan, lẹhinna nipasẹ aiyipada yoo jẹ tun-ipe titi ti o fi pari aṣeyọri (ihuwasi yii le yipada).
  2. O okeere awọn metiriki fun Prometheus, pẹlu eyiti o le loye boya oluṣe ikarahun naa n ṣiṣẹ, wa nọmba awọn aṣiṣe fun kio kọọkan ati iwọn isinyi lọwọlọwọ.

Lati ṣe akopọ apakan yii ti ijabọ naa:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Fifi awọn afikun kun

Fun iṣẹ itunu pẹlu Kubernetes, iwulo lati fi awọn afikun sii ni a tun mẹnuba. Emi yoo sọ fun ọ nipa lilo apẹẹrẹ ti ọna ile-iṣẹ wa si bi a ṣe ṣe ni bayi.

A bẹrẹ ṣiṣẹ pẹlu Kubernetes pẹlu ọpọlọpọ awọn iṣupọ, afikun nikan si eyiti o jẹ Ingress. O nilo lati fi sori ẹrọ oriṣiriṣi ni iṣupọ kọọkan, ati pe a ṣe ọpọlọpọ awọn atunto YAML fun awọn agbegbe oriṣiriṣi: irin igboro, AWS…

Bi awọn iṣupọ diẹ sii wa, awọn atunto diẹ sii wa. Ni afikun, a ni ilọsiwaju awọn atunto wọnyi funrararẹ, nitori abajade eyiti wọn di pupọ pupọ:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Lati ṣeto ohun gbogbo, a bẹrẹ pẹlu iwe afọwọkọ kan (install-ingress.sh), eyiti o mu bi ariyanjiyan iru iṣupọ si eyiti a yoo fi ranṣẹ, ṣe ipilẹṣẹ iṣeto YAML ti o wulo ati yiyi si Kubernetes.

Ni kukuru, ọna wa siwaju ati imọran ti o ni nkan ṣe pẹlu rẹ jẹ bi atẹle:

  • lati ṣiṣẹ pẹlu awọn atunto YAML, ẹrọ awoṣe kan nilo (ni awọn ipele akọkọ eyi jẹ sed ti o rọrun);
  • pẹlu ilosoke ninu nọmba awọn iṣupọ, iwulo fun imudojuiwọn laifọwọyi wa (ojutu akọkọ ni lati fi iwe afọwọkọ sinu Git, ṣe imudojuiwọn rẹ nipa lilo cron ati ṣiṣe rẹ);
  • iru iwe afọwọkọ kan nilo fun Prometheus (install-prometheus.sh), sibẹsibẹ, o jẹ ohun akiyesi fun otitọ pe o nilo data titẹ sii pupọ diẹ sii, ati ibi ipamọ wọn (ni ọna ti o dara - ti aarin ati ni iṣupọ), ati diẹ ninu awọn data (awọn ọrọ igbaniwọle) le ṣe ipilẹṣẹ laifọwọyi:

    Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

  • Ewu ti yiyi nkan ti ko tọ si nọmba ti o pọ si ti awọn iṣupọ n dagba nigbagbogbo, nitorinaa a rii pe awọn fifi sori ẹrọ (ie awọn iwe afọwọkọ meji: fun Ingress ati Prometheus) A nilo iṣeto (ọpọlọpọ awọn ẹka ni Git, ọpọlọpọ awọn cron lati mu wọn dojuiwọn ni ibamu: iduroṣinṣin tabi awọn iṣupọ idanwo);
  • с kubectl apply o ti nira lati ṣiṣẹ pẹlu nitori pe kii ṣe asọye ati pe o le ṣẹda awọn nkan nikan, ṣugbọn kii ṣe awọn ipinnu lori ipo wọn / paarẹ wọn;
  • A padanu awọn iṣẹ kan ti a ko ti ṣe ni gbogbo igba yẹn:
    • Iṣakoso ni kikun lori abajade ti awọn imudojuiwọn iṣupọ,
    • ipinnu aifọwọyi ti diẹ ninu awọn paramita (igbewọle fun awọn iwe afọwọkọ fifi sori ẹrọ) da lori data ti o le gba lati inu iṣupọ (awari),
    • awọn oniwe-mogbonwa idagbasoke ni awọn fọọmu ti lemọlemọfún Awari.

A ṣe imuse gbogbo iriri ikojọpọ yii laarin ilana ti iṣẹ akanṣe miiran - addoni-onišẹ.

Addoni-onišẹ

O da lori oniṣẹ ẹrọ ikarahun ti a ti sọ tẹlẹ. Gbogbo eto naa dabi eyi:

Atẹle yii ni a ṣafikun si awọn ìkọ onisẹ ikarahun:

  • ipamọ iye,
  • Helm aworan atọka,
  • paati ti diigi awọn iye itaja ati - ni irú ti eyikeyi ayipada - béèrè Helm lati tun-yipo awọn chart.

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Nitorinaa, a le fesi si iṣẹlẹ kan ni Kubernetes, ṣe ifilọlẹ kio kan, ati lati inu kio yii a le ṣe awọn ayipada si ibi ipamọ, lẹhin eyi chart yoo tun ṣe igbasilẹ. Ninu aworan atọka ti o yọrisi, a ya ṣeto ti awọn kio ati chart sinu paati kan, eyiti a pe modulu:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Awọn modulu lọpọlọpọ le wa, ati si wọn a ṣafikun awọn kio agbaye, ile itaja iye agbaye, ati paati kan ti o ṣe abojuto ile itaja agbaye yii.

Ni bayi, nigbati nkan kan ba ṣẹlẹ ni Kubernetes, a le fesi si rẹ nipa lilo kio agbaye kan ati yi ohunkan pada ninu ile itaja agbaye. Iyipada yii yoo ṣe akiyesi ati pe yoo fa ki gbogbo awọn modulu ninu iṣupọ yii jade:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Eto yii ni itẹlọrun gbogbo awọn ibeere fun fifi sori awọn afikun ti a sọ loke:

  • Helm jẹ lodidi fun templating ati declarativeness.
  • Ọrọ ti imudojuiwọn-imudojuiwọn ni ipinnu nipa lilo kio agbaye, eyiti o lọ si iforukọsilẹ lori iṣeto ati, ti o ba rii aworan eto tuntun kan nibẹ, yiyi jade (ie “ararẹ”).
  • Eto ipamọ ninu iṣupọ ti wa ni imuse nipa lilo ConfigMap, eyiti o ni awọn data akọkọ fun awọn ibi ipamọ (ni ibẹrẹ wọn ti kojọpọ sinu awọn ibi ipamọ).
  • Awọn iṣoro pẹlu iran ọrọ igbaniwọle, wiwa ati wiwa lemọlemọfún ni a yanju nipa lilo awọn kio.
  • Iṣeto jẹ aṣeyọri ọpẹ si awọn afi, eyiti Docker ṣe atilẹyin jade kuro ninu apoti.
  • Abajade jẹ abojuto nipa lilo awọn metiriki nipasẹ eyiti a le loye ipo naa.

Gbogbo eto yii jẹ imuse ni irisi alakomeji kan ni Go, eyiti a pe ni adon-operator. Eyi jẹ ki aworan naa dabi irọrun:

Imugboroosi ati iranlowo Kubernetes (atunyẹwo ati ijabọ fidio)

Ẹya akọkọ ninu aworan atọka yii jẹ ṣeto awọn modulu (ti ṣe afihan ni grẹy ni isalẹ). Bayi a le kọ module kan fun afikun ti o nilo pẹlu igbiyanju diẹ ati rii daju pe yoo fi sori ẹrọ ni iṣupọ kọọkan, yoo ni imudojuiwọn ati dahun si awọn iṣẹlẹ ti o nilo ninu iṣupọ.

"Flant" nlo addoni-onišẹ lori 70+ Kubernetes iṣupọ. Ipo lọwọlọwọ - Alpha version. Bayi a ngbaradi iwe lati tusilẹ beta, ṣugbọn fun bayi ni ibi ipamọ apeere wa, lori ipilẹ eyiti o le ṣẹda addon tirẹ.

Nibo ni MO le gba awọn modulu fun oniṣẹ ẹrọ addon? Titẹjade ile-ikawe wa jẹ ipele ti o tẹle fun wa; a gbero lati ṣe eyi ni igba ooru.

Awọn fidio ati awọn kikọja

Fidio lati iṣẹ (~ iṣẹju 50):

Igbejade ijabọ naa:

PS

Awọn ijabọ miiran lori bulọọgi wa:

O tun le nifẹ ninu awọn atẹjade wọnyi:

orisun: www.habr.com

Fi ọrọìwòye kun