Kubernetes

Kubernetes Operaatori õpetus

Kubernetes Operaatori õpetus
Kubernetes Operaatorid on kontseptsioon, mille CoreOS projekt tutvustas Kubernetes võimete, eriti olekuliste rakenduste haldamise laiendamiseks. See peaks lihtsustama olekuressursside kogu olelusringi alates rakenduse pakkimisest ja Kubernetes klastrisse juurutamisest kuni rakenduse haldamise ja skaleerimiseni.

Näiteks on mõnel Kubernetes'e põhikomponendil, näiteks etcd, CoreOs projekti kaudu kättesaadavaks tehtud vastavad operaatorid. Etcd on hajutatud võtmeväärtuste salvestus, mis peegeldab kogu Kubernetes-klastri töötavat olekut igal hetkel. Loomulikult on see olekurakendus ja erinevad Kubernetese kontrollerid viitavad failile etcd, et välja selgitada, milline on nende järgmine samm. Näiteks kontrollib ReplicaSeti kontroller antud valija all töötavate kaunade arvu ja proovib viia töötavate eksemplaride arvu võrdseks teie ReplicaSeti või juurutamise YAML-i määratud arvuga. ReplicaSet viitab failile etcd, mis jälgib töötavate kaunade arvu ja kui kaunade arv on soovitud väärtuseks muudetud, värskendaks etcd ka selle kirjet.

Kuid kui tegemist on olekurakendustega, nagu näiteks etcd ise, siis ilma tõsise sekkumiseta ei saa me erinevate sõlmede vahel rohkem kaunasid keerutada. Sest kõigil töötavatel eksemplaridel peavad olema pidevalt üksteisega kooskõlas olevad andmed. Siin tulevad operaatorid kasuks.

Eeldused

Kui soovite seda õpetust jälgida, võite alustada kõigest väikesest, nagu sülearvutisse installitud Minikube või Dockeriga töölauale kuuluv Kubernetese distributsioon.

Oluline on kõigepealt mõista Kubernetese põhiideid.

Jne

Loome operaatori, mis haldaks faili etc kogu meie Kubernetes klastris. Me ei installi faili etcd Kubernetese komponendina (see tähendab kube-süsteemi nimeruumis), vaid tavalise rakendusena. Sest selle tegemine ohustaks kogu klastrit. Kuid kui olete operaatoritega rahul, saate neid kasutada uue faili käivitamisel kube-süsteemis jne.

Ma kasutan siin Katacoda mänguväljakut ja kube-süsteemi nimeruumi lähemal uurimisel ilmneb, et meil töötab üks pod jne. Kuid see pole midagi, mille kallal me sebime. Installime etcd vaikimisi nimeruumi, mida haldab etcd-operaator

Vaikimisi nimeruumi käivitamisel pole ühtegi kaunat töötavat, meil on puhas leht.

$ kubectl saavad kaunad

Ressursse ei leitud.

Nüüd installime sellesse nimeruumi uue etcd-eksemplari. Alustame hoidla kloonimisega, millele järgneb lihtne käsk kubectl.

$ giti kloon https: // github.com / coreos / etcd-operaator.git
$ cd etd-operaator

Etcd-operaatori loomine

Repos on mitu näidet, millega opereerida. Esimene neist looks lihtsa etcd-operaatori juurutamine.yaml faili. Enne selle kasutamist peame kõigepealt looma operaatorile rolli, mille kaudu saab hallata ja skaleerida etc-klastrit. Selle rolli saate luua shelliskripti abil.

$ / example / rbac / create_role.sh
$ kubectl luua -f ./ näide / juurutamine.yaml

Operaatorobjekt luuakse viimase käsuga, kuigi pole midagi opereerida. Meil pole veel etcd klastrit. Nii et loome ühe.

$ kubectl luua -f ./ example / example-etcd-klaster.yaml

Nii luuakse etcd kaunade klaster. Näete neid kasutades:

$ kubectl saavad kaunad
 
NIMI VALMIS STATUS TAASALUSTAB VANUSE
etcd-operator-69b559656f-495vg 1/1 Töötab 0 9m
example-etcd-cluster-9bxfh657qq 1/1 Töötab 0 23s
näide-etcd-klaster-ntzp4hrw79 1/1 töötab 0 8m
näide-etcd-klaster-xwlpqrzj2q 1/1 töötab 0 9m

Selle loendi esimene on operaatori pod, mis tagab, et etcd-klaster säilitab teatud oleku, nagu on öeldud varem kasutatud yaml-failides. Kui proovite kustutada ühte näite-etcd-klastri kaunadest, luuakse selle asemele teine. See on märkimisväärselt sarnane sellega, mida ReplicaSet teeb, kuid siin on kaunad olekuga!

Operaatorid üldiselt

Nagu varem mainitud, on operaatorid üldine raamistik, mille raames saab keerukaid rakendusi juurutada ja hallata. Raamistik ise muudab need kasulikuks ja CoreOSi pakutavad konkreetsed näited, nagu näiteks etcd-operaator või Prometheuse operaator, on mõeldud juhendina teie enda rakenduse väljatöötamiseks sarnasel viisil.

Kubernetes Operaatorite mõned olulised aspektid on SDK kasutatakse teie enda kohandatud operaatori kirjutamiseks, ehitamiseks ja testimiseks, teine ​​on idee Operaatori elutsükli juht kus saate mõelda kõigile erinevatele etappidele, mida teie operaator ja tema pakutavad teenused saavad läbida.

Olelusringi etapid võivad sisaldada mitmesuguseid värskendusi, selgitades välja, milline operaator millistes nimeruumides töötab, ja ka uue versiooni ilmumisel operaatoreid.

Viited

Selle tehnoloogia kohta saate lugeda palju rohkem:

  1. CoreOSi algne postitus ja
  2. Operaatorit etcd saab siin uurida
Kuidas muuta hiire ja puuteplaatide kerimise suund Windows 10-s ümber
Hiir ja PuuteplaatNeed muudavad arvutamise mitte ainult lihtsaks, vaid ka tõhusamaks ja vähem aeganõudvaks. Me ei kujuta ette elu ilma nende seadmetet...
Kuidas muuta hiirekursori ja kursori suurust, värvi ja skeemi Windows 10-s
Windows 10 hiirekursor ja kursor on operatsioonisüsteemi väga olulised aspektid. Seda võib öelda ka teiste opsüsteemide kohta, nii et tegelikult pole ...
Tasuta ja avatud lähtekoodiga mängumootorid Linuxi mängude arendamiseks
See artikkel hõlmab loetelu tasuta ja avatud lähtekoodiga mängumootoritest, mida saab kasutada 2D- ja 3D-mängude arendamiseks Linuxis. Selliseid mängu...