Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Sannadkan, shirkii ugu weynaa ee Kubernetes Yurub - KubeCon + CloudNativeCon Europe 2020 - wuxuu ahaa mid toos ah. Si kastaba ha ahaatee, isbeddelka noocan oo kale ah ee qaabku nagama hor istaagin inaan gudbino warbixintayada muddada dheer la qorsheeyay ee "Tag? Bash! La kulan hawl-wadeenka Shell” oo u heellan mashruucayada Isha Furan qolof-shaqaale.

Maqaalkani, oo dhiirigeliyay hadalka, wuxuu soo bandhigayaa hab lagu fududeeyo habka loo abuurayo hawlwadeenada Kubernetes oo muujinaya sida aad adigu u samayn karto dadaalka ugu yar adoo isticmaalaya hawl-wadeen qolof ah.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Isbarashada muuqaalka warbixinta (~ 23 daqiiqo oo Ingiriisi ah, oo si muuqata uga xog badan maqaalka) iyo soosaarkii ugu muhiimsanaa ee ka soo baxay qaab qoraal ah. Tag!

Flant waxaan si joogto ah u wanaajinaa oo wax walba u habaynnaa. Maanta waxaan ka hadli doonaa fikrad kale oo xiiso leh. La kulan: qorista qolof-hooyo!

Si kastaba ha ahaatee, aan ku bilowno macnaha guud ee waxaas oo dhami ay dhacaan: Kubernetes.

Kubernetes API iyo kontaroolayaasha

API ee Kubernetes waxaa loo matalli karaa nooc ka mid ah server-ka faylka oo leh hagayaal nooc kasta oo shay ah. Walxaha (khayraadka) ee serfarkan waxa matala faylasha YAML Intaa waxaa dheer, server-ku wuxuu leeyahay API aasaasiga ah kaas oo kuu ogolaanaya inaad sameyso saddex waxyaalood:

  • hela kheyraadka nooca iyo magaca;
  • beddel kheyraadka (xaaladdan, server-ku wuxuu kaydiyaa oo kaliya walxaha "sax ah" - dhammaan kuwa sida khaldan loo sameeyay ama loogu talagalay hagayaasha kale waa la tuuray);
  • raadraac kheyraadka (xaaladdan, isticmaaluhu isla markiiba wuxuu helayaa nooca hadda/la cusboonaysiiyay).

Markaa, Kubernetes waxay u shaqeysaa sidii nooc ka mid ah server-ka faylalka (ee YAML muujinaya) oo leh seddex qaab oo aasaasi ah (haa, dhab ahaantii waxaa jira kuwa kale, laakiin waan ka tagi doonaa hadda).

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Dhibaatadu waxay tahay in server-ku uu kaydin karo oo keliya macluumaadka. Si aad u shaqeyso waxaad u baahan tahay xakameeye - fikradda labaad ee ugu muhiimsan iyo aasaasiga ah ee adduunka Kubernetes.

Waxaa jira laba nooc oo waaweyn oo kantaroolayaal ah. Midka ugu horreeya wuxuu ka qaataa macluumaadka Kubernetes, wuxuu u maareeyaa si waafaqsan caqli-galnimada, oo wuxuu ku celiyaa K8s. Midka labaad wuxuu ka qaataa macluumaadka Kubernetes, laakiin, ka duwan nooca koowaad, wuxuu beddelaa xaaladda kheyraadka dibadda.

Aan si dhow u eegno habka abuurista Kubernetes:

  • Xakamaynta geynta (waxaa ku jira kube-controller-manager) Helaa macluumaadka ku saabsan Gelitaanka oo uu sameeyo ReplicaSet.
  • ReplicaSet waxay abuurtaa laba nuqul (laba gadmood) oo ku salaysan macluumaadkan, laakiin galalkan weli lama qorsheyn.
  • Jadwalka jadwalku wuxuu dejiyaa godadka wuxuuna ku daraa macluumaadka noodhka YAMLs.
  • Kubelets waxay isbedel ku sameeyaan kheyraadka dibadda (dhaho Docker).

Dabadeed tixdan oo dhan ayaa lagu soo celiyaa siday u kala horrayso: kubeletku waxa uu eegayaa weelasha, xisaabiyaa heerka boodhka oo dib ayuu u soo dirayaa. Kantaroolaha ReplicaSet wuxuu helayaa heerka wuxuuna cusboonaysiiyaa xaalada isku dhufashada Isla wax la mid ah ayaa ku dhaca kontaroolaha Gelitaanka iyo isticmaaluhu ugu dambeyntii wuxuu helayaa heerka la cusboonaysiiyay (hadda).

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Shell-shaqaale

Waxay soo baxday in Kubernetes ay ku saleysan tahay shaqada wadajirka ah ee kontaroolayaasha kala duwan (Shaqeeyayaasha Kubernetes sidoo kale waa kontaroolayaasha). Su'aashu waxay soo baxaysaa, sida loo abuuro hawlwadeenkaaga dadaalka ugu yar? Oo halkan kii aanu horumarinay ayaa u soo gurmada qolof-shaqaale. Waxay u ogolaataa maamulayaasha nidaamka inay abuuraan hadaladooda iyagoo isticmaalaya habab caan ah.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Tusaale fudud: koobiyeynta siraha

Aynu eegno tusaale fudud.

Aynu nidhaahno waxaanu haysanaa kutlada Kubernetes. Waxay leedahay meel magac ah default oo leh wax sir ah mysecret. Intaa waxaa dheer, waxaa jira meelo magacyo kale oo kutlada ah. Qaarkood waxay leeyihiin calaamad gaar ah oo ku dheggan. Hadafkayagu waa inaan nuqul ka samayno siraha meelo magacyo leh oo leh calaamad.

Hawshu way adag tahay xaqiiqda ah in meelo magacyo cusub ay ka soo dhex muuqan karaan kooxda, qaarkoodna waxay yeelan karaan calaamaddan. Dhanka kale, marka calaamadda la tirtiro, sirta waa in sidoo kale la tirtiraa. Intaa waxaa dheer, sirta lafteedu waxay sidoo kale bedeli kartaa: kiiskan, sirta cusub waa in lagu koobiyeeyaa dhammaan magacyada magacyada leh. Haddii sirta si lama filaan ah loo tirtiro meel kasta oo magaceed ah, hawlwadeenkayaga waa inuu isla markiiba soo celiyaa.

Hadda oo hawsha la qaabeeyey, waxa la joogaa wakhtigii la bilaabi lahaa dhaqangelinteeda iyada oo la adeegsanayo hawl-wadeenka qolofka. Laakiin marka hore waxa habboon in dhawr eray laga sheego hawl-wadeenka qolofka laftiisa.

Sida uu u shaqeeyo shell-operator

Si la mid ah culeysyada kale ee shaqada ee Kubernetes, hawl-wadeenka qolofku wuxuu ku shaqeeyaa boodhkiisa. Boodhkan ku jira hagaha /hooks faylasha la fulin karo ayaa lagu kaydiyaa. Kuwani waxay noqon karaan qoraallada Bash, Python, Ruby, iwm. Waxaan ugu yeernaa faylalkaas la fulin karo hooks (qaboojiyey).

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Shell-operator waxa ay iska diiwaan gelisaa dhacdooyinka Kubernetes oo waxa uu maamulaa xidhmooyinkan isaga oo ka jawaabaya dhacdooyinka aan u baahanahay.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Sidee baa hawlwadeenka qolofku u garanayaa qabsada uu ordo iyo goorta? Taas macnaheedu waa in jilba kasta uu leeyahay laba marxaladood. Inta lagu jiro bilawga, hawl-wadeenka qolofku wuxuu ku socodsiiyaa dhammaan qab-qabsiyada muran --config Tani waa marxaladda qaabeynta. Kadibna, jillaabyada ayaa lagu bilaabay habka caadiga ah - iyada oo laga jawaabayo dhacdooyinka ay ku xiran yihiin. Xaaladda dambe, jillaabku wuxuu helayaa macnaha xidhitaanka (macnaha guud) - xogta qaabka JSON, oo aan si faahfaahsan uga hadli doono hoos.

Samaynta hawlwadeen gudaha Bash

Hadda waxaan diyaar u nahay hirgelinta. Si tan loo sameeyo, waxaan u baahanahay inaan qorno laba hawlood (sida, waxaan kugula talineynaa maktabad shell_lib, kaas oo si weyn u fududeeya qab-qablayaasha qoraalka ee Bash):

  • kan ugu horreeya ayaa loo baahan yahay marxaladda qaabeynta - waxay soo bandhigaysaa macnaha xidhitaanka;
  • labaad waxa ku jira macquulka ugu weyn ee jillaab.

#!/bin/bash

source /shell_lib.sh

function __config__() {
  cat << EOF
    configVersion: v1
    # BINDING CONFIGURATION
EOF
}

function __main__() {
  # THE LOGIC
}

hook::run "$@"

Talaabada xigta waa in la go'aamiyo shayga aan u baahanahay. Xaaladeena, waxaan u baahanahay inaan raad raacno:

  • isha sirta ah ee isbedelada;
  • dhammaan meelaha magacyada ee kutlada, si aad u ogaato kuwa calaamad ku leh;
  • bartilmaameedka siraha si loo hubiyo in ay dhamaantood la mid yihiin sirta isha.

Isdiiwaangeli isha sirta ah

Isku xidhka u qaabaynta waa wax fudud. Waxaan muujineynaa inaan xiiseyneyno Sirta magaca leh mysecret magac ahaan default:

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

function __config__() {
  cat << EOF
    configVersion: v1
    kubernetes:
    - name: src_secret
      apiVersion: v1
      kind: Secret
      nameSelector:
        matchNames:
        - mysecret
      namespace:
        nameSelector:
          matchNames: ["default"]
      group: main
EOF

Natiijo ahaan, jillaabku wuxuu kicin doonaa marka sirta isha is beddesho (src_secret) oo hel macnaha xidhidha ee soo socda:

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Sida aad arki karto, waxay ka kooban tahay magaca iyo shayga oo dhan.

La socoshada meelaha magacyada

Hadda waxaad u baahan tahay inaad iska diiwaangeliso meelaha magacyada Si tan loo sameeyo, waxaanu cayimnaa qaabaynta xidhitaanka ee soo socota:

- name: namespaces
  group: main
  apiVersion: v1
  kind: Namespace
  jqFilter: |
    {
      namespace: .metadata.name,
      hasLabel: (
       .metadata.labels // {} |  
         contains({"secret": "yes"})
      )
    }
  group: main
  keepFullObjectsInMemory: false

Sida aad arki karto, goob cusub ayaa ka soo muuqatay qaabaynta magaca jqFilter. Sida magaceeda ka muuqata. jqFilter shaandheeyaa dhammaan macluumaadka aan loo baahnayn oo abuuraa shay cusub oo JSON ah oo leh meelaha xiisaha noo leh. Jillaab leh qaabayn la mid ah ayaa heli doonta macnaha xidhitaanka soo socda:

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Waxay ka kooban tahay habayn filterResults meel kasta oo magaceed oo ka mid ah kooxda. Doorsoome Boolean hasLabel waxay tusinaysaa in calaamaddu ku xidhan tahay meel magac la bixiyay iyo in kale. Xule keepFullObjectsInMemory: false waxay tusinaysaa in aan loo baahnayn in shay dhamaystiran lagu hayo xusuusta.

Dabagalka siraha bartilmaameedka ah

Waxaan la wadaagnaa dhammaan siraha leh sharraxaad cayiman managed-secret: "yes" (Kuwaani waa bartilmaameedkeena dst_secrets):

- name: dst_secrets
  apiVersion: v1
  kind: Secret
  labelSelector:
    matchLabels:
      managed-secret: "yes"
  jqFilter: |
    {
      "namespace":
        .metadata.namespace,
      "resourceVersion":
        .metadata.annotations.resourceVersion
    }
  group: main
  keepFullObjectsInMemory: false

Xaaladdan jqFilter shaandheeyaa dhammaan macluumaadka marka laga reebo meel-magaceedka iyo halbeegga resourceVersion. Halbeegga ugu dambeeya ayaa loo gudbiyay sharraxaadda marka la abuurayo sirta: waxay kuu oggolaaneysaa inaad isbarbar dhigto noocyada siraha oo aad cusbooneysiiso.

Jillaab lagu habeeyey habkan ayaa, marka la fuliyo, heli doonta saddexda qodob ee xidhidha ee kor lagu sharraxay. Waxaa loo malayn karaa inay yihiin nooc sawir-qaadis ah (sheyga) koox.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Iyada oo ku saleysan dhammaan macluumaadkan, algorithm aasaasiga ah ayaa la samayn karaa. Waxay ku celcelisaa dhammaan meelaha magacyada iyo:

  • haddii hasLabel arrimaha true magaca hadda jira:
    • is barbar dhigaya sirta caalamiga ah iyo tan gudaha:
      • Haddii ay isku mid yihiin, waxba ma qabato;
      • haddii ay ku kala duwan yihiin - fuliya kubectl replace ama create;
  • haddii hasLabel arrimaha false magaca hadda jira:
    • waxay hubisaa in sirtu aanay ku jirin meesha magaca la bixiyay:
      • Haddii sirta maxalliga ahi ay jirto, tirtir adigoo isticmaalaya kubectl delete;
      • Haddii sirta maxalliga ah aan la ogaan, waxba ma qabato.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Hirgelinta algorithm ee Bash you can download in our kaydka tusaalayaal.

Taasi waa sida aan u awoodnay inaan abuurno kontorool fudud oo Kubernetes ah anagoo adeegsanayna 35 khadadka qaabeynta YAML iyo qiyaastii isla qadarka koodka Bash! Shaqaaleeyaha qolofka shaqadiisu waa isku xidhka iyaga.

Si kastaba ha ahaatee, koobiyaynta siraha ma aha meesha kaliya ee codsiga utility. Waa kuwan dhawr tusaale oo kale oo muujinaya waxa uu awood u leeyahay.

Tusaale 1: Ku samaynta isbeddelada ConfigMap

Aynu eegno Hawlgalka ka kooban saddex qaybood. Pods waxay isticmaalaan ConfigMap si ay u kaydiyaan qaar ka mid ah qaabaynta. Markii boodhadhka la bilaabay, ConfigMap waxay ku jirtay xaalad gaar ah (aan u yeedhno v.1). Sidaa darteed, dhammaan boodhadhku waxay isticmaalaan nooca gaarka ah ee ConfigMap.

Hadda aan ka soo qaadno in ConfigMapka uu isbeddelay (v.2). Si kastaba ha ahaatee, boodhadhku waxay isticmaali doonaan noocii hore ee ConfigMap (v.1):

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Sideen ku heli karaa inay u beddelaan ConfigMap-ka cusub (v.2)? Jawaabtu waa sahlan tahay: isticmaal template. Aynu ku darno sharraxaad-kooxeedka qaybta template Habaynta geynta:

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Natiijo ahaan, lacagtan jeegga ah ayaa laga diwaangelin doonaa dhammaan balliyada, waxayna la mid noqon doontaa tan la geynayo. Hadda waxaad u baahan tahay inaad cusboonaysiiso sharraxaadda marka ConfigMapku isbeddelo. Oo hawlwadeenka qolofka ayaa ku habboon kiiskan. Waxa kaliya ee aad u baahan tahay waa barnaamij jillaab ku biiri doona ConfigMap oo cusbooneysiin doona jeeggaga.

Haddii isticmaaluhu uu isbeddelo ku sameeyo ConfigMap-ka, hawl-wadeenka qolofka ayaa ogaan doona iyaga oo dib u xisaabin doona jeegaga. Taas ka dib sixirka Kubernetes ayaa soo gali doona ciyaarta: orchestertor-ku wuxuu dili doonaa podska, abuurista mid cusub, sug ilaa uu noqdo Ready, una gudubta kan ku xiga. Natiijo ahaan, Hawlgelintu way wada shaqayn doontaa oo waxay u wareegi doontaa nooca cusub ee ConfigMap.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Tusaalaha 2: La shaqaynta Qeexitaannada Ilaha Gaarka ah

Sida aad ogtahay, Kubernetes waxay kuu ogolaaneysaa inaad abuurto noocyo shay oo gaar ah. Tusaale ahaan, waxaad abuuri kartaa nooc MysqlDatabase. Aynu nidhaahno noocani wuxuu leeyahay laba cabbir oo metadata: name и namespace.

apiVersion: example.com/v1alpha1
kind: MysqlDatabase
metadata:
  name: foo
  namespace: bar

Waxaan haynaa koox Kubernetes ah oo leh magacyo kala duwan oo aan ku abuuri karno xogta MySQL. Xaaladdan oo kale shell-operator waxaa loo isticmaali karaa si loo raad raaco ilaha MysqlDatabase, iyaga oo ku xidhaya server-ka MySQL iyo isku-dubarid la doonayo oo la arkay gobolada kutlada.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Tusaalaha 3: Kormeerka Shabakadda Kooxda

Sidaad ogtahay, isticmaalka ping waa habka ugu fudud ee lagula socon karo shabakada. Tusaalahan waxaan ku tusi doonaa sida loo hirgeliyo kormeerka iyadoo la isticmaalayo shell-operator.

Marka hore, waxaad u baahan doontaa inaad rukunto nodes. Hawlwadeenka qolofku wuxuu u baahan yahay magaca iyo cinwaanka IP-ga ee nood kasta. Iyaga oo ay caawinayaan, wuxuu ku dhufan doonaa noodhadhkan.

configVersion: v1
kubernetes:
- name: nodes
  apiVersion: v1
  kind: Node
  jqFilter: |
    {
      name: .metadata.name,
      ip: (
       .status.addresses[] |  
        select(.type == "InternalIP") |
        .address
      )
    }
  group: main
  keepFullObjectsInMemory: false
  executeHookOnEvent: []
schedule:
- name: every_minute
  group: main
  crontab: "* * * * *"

Xildhibaan executeHookOnEvent: [] waxay ka ilaalisaa jillaabku inuu ordo si uu uga jawaabo dhacdo kasta (taas oo ah, ka jawaabista beddelka, ku darista, tirtirida noodhka). Si kastaba ha ahaatee, isagu ordi doona (oo cusboonaysii liiska noodhka) La qorsheeyay - Daqiiqad kasta, sida lagu qoray goobta schedule.

Hadda su'aashu waxay soo baxaysaa, sidee ayaan dhab ahaan ugu ogaan karnaa dhibaatooyinka sida luminta xirmooyinka? Aan eegno koodka:

function __main__() {
  for i in $(seq 0 "$(context::jq -r '(.snapshots.nodes | length) - 1')"); do
    node_name="$(context::jq -r '.snapshots.nodes['"$i"'].filterResult.name')"
    node_ip="$(context::jq -r '.snapshots.nodes['"$i"'].filterResult.ip')"
    packets_lost=0
    if ! ping -c 1 "$node_ip" -t 1 ; then
      packets_lost=1
    fi
    cat >> "$METRICS_PATH" <<END
      {
        "name": "node_packets_lost",
        "add": $packets_lost,
        "labels": {
          "node": "$node_name"
        }
      }
END
  done
}

Waxaan ku celcelineynaa liiska noodhadhka, hel magacyadooda iyo cinwaannada IP-ga, ku dhejineynaa oo u dirnaa natiijooyinka Prometheus. Shell-operator wuxuu u dhoofin karaa cabbirada Prometheus, iyaga oo ku kaydinaya fayl ku yaal si waafaqsan dariiqa ku qeexan doorsoomaha deegaanka $METRICS_PATH.

Sidan oo kale Waxaad samayn kartaa hawlwadeen si ay ula socdaan shabakada fudud ee kooxdu.

Habka safka

Maqaalkani waxa uu noqon lahaa mid aan dhamaystirnayn iyada oo aan la sifeynin hab kale oo muhiim ah oo lagu dhisay hawl-wadeenka qolofka. Bal qiyaas in ay fulinayso nooc ka mid ah jillaab iyada oo ka jawaabaysa dhacdo ka mid ah kooxda.

  • Maxaa dhacaya haddii, isla markaana, ay wax ka dhacaan kooxda? mid kale dhacdo?
  • Hawl-wadeenka qolofka ma maamuli doonaa tusaale kale oo jillaab ah?
  • Maxaa dhacaya haddii, dheh, shan dhacdo ay hal mar ka dhacaan kooxda?
  • Hawl-wadeenka qolofka ma u farsamayn doonaa si isku mid ah?
  • Ka warran agabka la isticmaalay sida xusuusta iyo CPU?

Nasiib wanaag, hawl-wadeenka qolofku waxa uu leeyahay habka safka ku dhex jira. Dhammaan dhacdooyinka saf ayaa loo galay oo si isdaba joog ah ayaa loo habeeyey.

Aan tusaale ku muujinno arrintan. Aynu nidhaahno waxaan leenahay laba jillaab. Dhacdada ugu horreysa waxay ku socotaa jilbaha ugu horreeya. Marka habaynteedu dhammaato, safku hore ayuu u socdaa. Saddexda dhacdo ee soo socota ayaa loo jiheeyaa jillaabka labaad - waxaa laga saaray safka oo la galaa " xidhmo". Taasi waa jillaabku wuxuu helayaa dhacdooyin kala duwan - ama, si ka sii saxan, oo ah mawduucyo xidhidhsan.

Sidoo kale kuwan dhacdooyinka waxaa lagu dari karaa hal weyn. Halbeegga ayaa ka mas'uul ah tan group in qaabeynta xidhitaan.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Waxaad samayn kartaa tiro kasta oo saf ah/hoosyo iyo iskudarkooda kala duwan. Tusaale ahaan, hal saf ayaa ku shaqayn kara laba jillaab, ama liddi ku ah.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Waxa kaliya ee aad u baahan tahay inaad sameyso waa u habaynta garoonka si waafaqsan queue in qaabeynta xidhitaan. Haddii magaca safka aan la cayimin, jillaabku wuxuu ku socdaa safka caadiga ah (default). Habkan safka ayaa kuu ogolaanaya inaad si buuxda u xalliso dhammaan dhibaatooyinka maareynta kheyraadka markaad la shaqeyneyso jillaabyada.

gunaanad

Waxaanu sharaxnay waxa uu yahay hawl-wadeen-hawleed, waxaanu tusnay sida loogu isticmaali karo in si degdeg ah oo aan dadaal lahayn loo abuuro hawl-wadeennada Kubernetes, waxaanu soo jeedinay dhawr tusaale oo ku saabsan isticmaalkiisa.

Macluumaad faahfaahsan oo ku saabsan hawl-wadeenka qolofka, iyo sidoo kale casharro degdeg ah oo ku saabsan sida loo isticmaalo, ayaa lagu heli karaa kuwa u dhigma. kaydka GitHub. Ha ka waaban inaad nala soo xiriirto su'aalo: waxaad kala hadli kartaa iyaga si gaar ah Kooxda Telegram (Ruushka) ama gudaha madashan (Ingiriisi).

Oo haddii aad jeceshay, had iyo jeer aad ayaan ugu faraxsanahay inaan ku aragno arrimo/PR/xiddigaha cusub ee GitHub, halkaas oo, jidka, aad ka heli karto kuwa kale mashaariic xiiso leh. Waxaa ka mid ah inay mudan tahay in la muujiyo addon-operator, kaas oo ah walaalka weyn ee shell-operator. Utility Tani waxay isticmaashaa jaantusyada Helm si ay u rakibto add-ons, waxay keeni kartaa cusbooneysiin waxayna la socon kartaa jaantusyo kala duwan / qiimayaal, waxay xakameysaa habka rakibidda jaantusyada, waxayna sidoo kale wax ka beddeli kartaa iyaga oo ka jawaabaya dhacdooyinka kutlada.

Tag? Bash! La kulan hawl-wadeenka qolofka (dib u eegis iyo warbixinta muuqaalka ee KubeCon EU'2020)

Muuqaalo iyo sawiro

Fiidiyowga waxqabadka (~ 23 daqiiqo):


Soo bandhigida warbixinta:

PS

Sidoo kale ka akhri boggayaga:

Source: www.habr.com

Add a comment