Danes želimo govoriti o VMware Tanzu, novi liniji izdelkov in storitev, ki je bila napovedana na lanski konferenci VMWorld. Na dnevnem redu je eno najzanimivejših orodij: Tanzu Mission Control.
Bodite previdni: pod rezom je veliko slik.
Kaj je nadzor misije
Kot podjetje samo navaja v svojem blogu, je glavni cilj VMware Tanzu Mission Control "vnesti red v grozdni kaos." Mission Control je platforma, ki jo poganja API, ki bo skrbnikom omogočila uporabo pravilnikov za gruče ali skupine gruč in nastavitev varnostnih pravil. Orodja, ki temeljijo na SaaS, se varno integrirajo v gruče Kubernetes prek agenta in podpirajo različne standardne operacije gruče, vključno z operacijami upravljanja življenjskega cikla (razmestitev, skaliranje, brisanje itd.).
Ideologija linije Tanzu temelji na maksimalni uporabi odprtokodnih tehnologij. Za upravljanje življenjskega cikla gruč Tanzu Kubernetes Grid se uporablja Cluster API, Velero se uporablja za varnostne kopije in obnovitev, Sonobuoy se uporablja za spremljanje skladnosti s konfiguracijo gruč Kubernetes in Contour kot vhodni krmilnik.
Splošni seznam funkcij Tanzu Mission Control je videti takole:
- centralizirano upravljanje vseh vaših gruč Kubernetes;
- управление идентификацией и доступом (IAM);
- diagnostika in spremljanje stanja grozda;
- upravljanje konfiguracije in varnostnih nastavitev;
- načrtovanje rednih pregledov zdravja gruče;
- ustvarjanje varnostnih kopij in obnavljanje;
- upravljanje kvot;
- vizualni prikaz uporabe virov.
Zakaj je pomembno
Tanzu Mission Control bo podjetjem pomagal rešiti problem upravljanja velike flote gruč Kubernetes, ki se nahajajo v prostorih, v oblaku in pri več ponudnikih tretjih oseb. Prej ali slej se vsako podjetje, katerega dejavnost je vezana na IT, znajde primorano podpirati številne heterogene grozde, ki se nahajajo pri različnih ponudnikih. Vsaka gruča se spremeni v snežno kepo, ki potrebuje kompetentno organizacijo, ustrezno infrastrukturo, politike, zaščito, nadzorne sisteme in še veliko več.
Dandanes si vsako podjetje prizadeva zmanjšati stroške in avtomatizirati rutinske procese. In zapletena krajina IT očitno ne spodbuja varčevanja in koncentracije na prednostne naloge. Tanzu Mission Control daje organizacijam možnost, da upravljajo več gruč Kubernetes, nameščenih pri več ponudnikih, medtem ko usklajujejo operativni model.
Arhitektura rešitve
Tanzu Mission Control je platforma z več najemniki, ki uporabnikom omogoča dostop do nabora zelo nastavljivih pravilnikov, ki jih je mogoče uporabiti za gruče Kubernetes in skupine gruč. Vsak uporabnik je vezan na organizacijo, ki je "koren" virov – skupin gruče in delovnih prostorov.
Kaj zmore Tanzu Mission Control
Zgoraj smo že na kratko našteli seznam funkcij rešitve. Poglejmo, kako je to implementirano v vmesnik.
En sam pogled na vse gruče Kubernetes v podjetju:
Ustvarjanje nove gruče:
Skupino lahko takoj dodelite gruči in ta bo podedovala pravilnike, ki so ji dodeljeni.
Povezava gruče:
Že obstoječe grozde lahko preprosto povežete s posebnim agentom.
Združevanje v skupine:
V skupinah gruč lahko združujete gruče, da podedujete dodeljene pravilnike takoj na ravni skupine, brez ročnega posredovanja.
Delovni prostori:
Omogoča prilagodljivo konfiguriranje dostopa do aplikacije, ki se nahaja znotraj več imenskih prostorov, gruč in infrastruktur v oblaku.
Oglejmo si podrobneje načela delovanja Tanzu Mission Control v laboratorijskem delu.
Lab #1
Seveda pa si je do potankosti težko predstavljati delovanje Mission Control in novih rešitev Tanzu brez prakse. Da bi lahko raziskali glavne značilnosti linije, VMware omogoča dostop do več laboratorijskih miz. Te klopi vam omogočajo izvajanje laboratorijskega dela z uporabo navodil po korakih. Poleg samega Tanzu Mission Control so za testiranje in študij na voljo tudi druge rešitve. Celoten seznam laboratorijskih del najdete
Za praktično seznanitev z različnimi rešitvami (vključno z majhno "igro" na vSAN) je dodeljena različna količina časa. Brez skrbi, to so zelo relativne številke. Na primer, laboratorij na Tanzu Mission Control je mogoče "rešiti" do 9 ur in pol, ko greste od doma. Poleg tega se lahko vrnete nazaj in pregledate vse znova, tudi če se časovnik izteče.
Opravljeno laboratorijsko delo #1
Za dostop do laboratorijev boste potrebovali račun VMware. Po avtorizaciji se odpre pojavno okno z glavnim orisom dela. Podrobna navodila bodo prikazana na desni strani zaslona.
Ko boste prebrali kratek uvod v Tanzu, boste povabljeni k vadbi v interaktivni simulaciji Mission Control.
Odprlo se bo pojavno okno novega stroja Windows in morali boste izvesti nekaj osnovnih operacij:
- ustvarite grozd
- konfigurirajte njegove osnovne parametre
- osvežite stran in se prepričajte, da je vse pravilno konfigurirano
- nastavite politike in preverite gručo
- ustvarite delovni prostor
- ustvari imenski prostor
- znova delati s pravilniki, je vsak korak podrobno razložen v priročniku
- demo nadgradnja gruče
Interaktivna simulacija seveda ne zagotavlja dovolj svobode za samostojno študijo: premikate se po tirnicah, ki so jih vnaprej postavili razvijalci.
Lab #2
Tukaj imamo že opravka z nečim resnejšim. To laboratorijsko delo ni tako vezano na "tirnice" kot prejšnje in zahteva natančnejšo študijo. Tukaj ga ne bomo predstavili v celoti: da vam prihranimo čas, bomo analizirali le drugi modul, prvi je posvečen teoretičnemu vidiku dela Tanzu Mission Control. Če želite, lahko greste skozi to popolnoma sami. Ta modul nam ponuja globok potop v upravljanje življenjskega cikla grozdov prek Tanzu Mission Control.
Opomba: laboratorijsko delo Tanzu Mission Control se redno posodablja in izpopolnjuje. Če se med dokončanjem laboratorija kateri koli zaslon ali korak razlikuje od spodnjega, sledite navodilom na desni strani zaslona. Pregledali bomo trenutno različico LR v času pisanja in razmislili o njenih ključnih elementih.
Opravljeno laboratorijsko delo #2
Po postopku avtorizacije v VMware Cloud Services zaženemo Tanzu Mission Control.
Prvi korak, ki ga predlaga laboratorij, je uvedba gruče Kubernetes. Najprej moramo dostopati do Ubuntu VM z uporabo PuTTY. Zaženite pripomoček in izberite sejo z Ubuntujem.
Zaporedoma izvajamo tri ukaze:
- ustvarjanje grozda:
kind create cluster --config 3node.yaml --name=hol
- nalaganje datoteke KUBECONFIG:
export KUBECONFIG="$(kind get kubeconfig-path --name="hol")"
- izhod vozlišča:
kubectl get nodes
Zdaj je treba gručo, ki smo jo ustvarili, dodati v Tanzu Mission Control. Iz PuTTY se vrnemo v Chrome, gremo na Clusters in kliknemo PRITRDI GRUDO.
V spustnem meniju izberite skupino - privzeto, vnesite ime, ki ga predlaga laboratorij, in kliknite REGISTER.
Kopirajte prejeti ukaz in pojdite na PuTTY.
Izvedemo prejeti ukaz.
Za spremljanje napredka zaženite drug ukaz: watch kubectl get pods -n vmware-system-tmc
. Počakamo, da vsi vsebniki dobijo status Tek ali Končana.
Vrnite se na Tanzu Mission Control in kliknite PREVERI POVEZAVO. Če je šlo vse v redu, bi morali biti indikatorji za vsa preverjanja zeleni.
Zdaj pa ustvarimo novo skupino gruč in tam razmestimo novo gručo. Pojdite na Skupine gruče in kliknite NOVA SKUPINA GROZDA. Vnesite ime in kliknite USTVARI.
Nova skupina bi se morala takoj pojaviti na seznamu.
Razmestimo novo gručo: pojdite na Grozdi, pritisnite NOVA GRUZA in izberite možnost, povezano z laboratorijskim delom.
Dodajmo ime gruče, izberimo skupino, ki ji je dodeljena - v našem primeru praktični laboratoriji - in območje uvedbe.
Pri ustvarjanju gruče so na voljo tudi druge možnosti, vendar jih nima smisla spreminjati med laboratorijem. Izberite konfiguracijo, ki jo potrebujete, in kliknite Naslednji.
Nekatere parametre je treba urediti, za to kliknite Uredi.
Povečajmo število delovnih vozlišč na dve, shranimo parametre in kliknemo USTVARI.
Med postopkom boste videli vrstico napredka, kot je ta.
Po uspešni uvedbi boste videli to sliko. Vsi računi morajo biti zeleni.
Zdaj moramo prenesti datoteko KUBECONFIG za upravljanje gruče s standardnimi ukazi kubectl. To je mogoče storiti neposredno prek uporabniškega vmesnika Tanzu Mission Control. Prenesite datoteko in nadaljujte s prenosom Tanzu Mission Control CLI s klikom Klikni tukaj.
Izberite želeno različico in prenesite CLI.
Zdaj moramo pridobiti žeton API. Če želite to narediti, pojdite na Moj račun in ustvarite nov žeton.
Izpolnite polja in kliknite GENERAT.
Kopirajte nastali žeton in kliknite NADALJUJ. Odprite Power Shell in vnesite ukaz tmc-login, nato žeton, ki smo ga prejeli in kopirali v prejšnjem koraku, in nato Login Context Name. Izberite info hlodi iz predlaganih, regija in olympus-privzeto kot ssh ključ.
Dobimo imenske prostore:kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get namespaces
.
Predstavite kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get nodes
da se prepričate, da so vsa vozlišča v statusu Želite.
Zdaj moramo v to gručo namestiti majhno aplikacijo. Naredimo dve razmestitvi – kavo in čaj – v obliki storitev coffee-svc in tea-svc, od katerih vsaka zažene različne slike – nginxdemos/hello in nginxdemos/hello:plain-text. To se naredi na naslednji način.
S PowerShell pojdite na prenose in poiščite datoteko cafe-storitve.yaml.
Zaradi nekaterih sprememb API-ja ga bomo morali posodobiti.
Varnostni pravilniki Pod so privzeto omogočeni. Za zagon aplikacij s privilegiji morate povezati svoj račun.
Ustvarite vezavo: kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
Razmestimo aplikacijo: kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
Preverjamo: kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods
Modul 2 je končan, čudoviti ste in neverjetni! Priporočamo, da preostale module, vključno z upravljanjem politik in preverjanjem skladnosti, dokončate sami.
Če želite dokončati ta laboratorij v celoti, ga najdete tukaj
Мнения и выводы
Seveda je še prezgodaj govoriti o praktičnih vprašanjih dela s Tanzujem. Ni toliko materialov za samostojno učenje in danes ni mogoče razporediti testne mize, da bi z vseh strani "poboli" nov izdelek. Vendar pa je tudi iz razpoložljivih podatkov mogoče potegniti določene zaključke.
Prednosti Tanzu Mission Control
Sistem se je izkazal za res zanimivega. Takoj bi rad izpostavil nekaj priročnih in uporabnih dobrot:
- Gruče lahko ustvarite prek spletne plošče in prek konzole, kar bo razvijalcem zelo všeč.
- Upravljanje RBAC prek delovnih prostorov je implementirano v uporabniškem vmesniku. V laboratoriju še ne deluje, a v teoriji je odlična stvar.
- Centralizirano upravljanje privilegijev na podlagi predloge
- Popoln dostop do imenskih prostorov.
- urejevalnik YAML.
- Ustvarjanje omrežnih pravilnikov.
- Spremljanje zdravja grozdov.
- Možnost varnostnega kopiranja in obnavljanja prek konzole.
- Upravljajte kvote in vire z vizualizacijo dejanske porabe.
- Samodejni zagon pregleda gruče.
Še enkrat, številne komponente so trenutno v razvoju, zato je prezgodaj, da bi v celoti govorili o prednostih in slabostih nekaterih orodij. Mimogrede, Tanzu MC lahko na podlagi demonstracije sproti nadgrajuje gručo in nasploh zagotavlja celoten življenjski cikel gruče za več ponudnikov hkrati.
Tukaj je nekaj primerov na "visoki ravni".
Tujemu grozdu z lastno listino
Recimo, da imate razvojno ekipo z jasno opredeljenimi vlogami in odgovornostmi. Vsak se ukvarja s svojim poslom in naj se niti slučajno ne vmešava v delo svojih sodelavcev. Ali pa ima ekipa enega ali več manj izkušenih strokovnjakov, ki jim ne želite dati nepotrebnih pravic in svoboščin. Predpostavimo tudi, da imate Kubernetes treh ponudnikov hkrati. V skladu s tem, da bi omejili pravice in jih spravili na skupni imenovalec, boste morali iti na vsako nadzorno ploščo eno za drugo in vse registrirati ročno. Strinjam se, ni najbolj produktivna zabava. In več sredstev kot imate, bolj dolgočasen je postopek. Tanzu Mission Control vam bo omogočil upravljanje delitve vlog iz »enega okna«. Po našem mnenju je to zelo priročna funkcija: nihče ne bo ničesar zlomil, če slučajno pozabite nekje določiti potrebne pravice.
Mimogrede, naši kolegi iz MTS v svojem blogu
Kompaktno delo s hlodi
Drug primer iz resničnega življenja je delo s hlodi. Predpostavimo, da ima ekipa tudi testerja. Nekega lepega dne pride k razvijalcem in naznani: "v aplikaciji je bila najdena napaka, nujno jo bomo odpravili." Seveda je prva stvar, s katero se razvijalec želi seznaniti, dnevniki. Pošiljanje kot datoteke po e-pošti ali Telegramu je slaba manira in prejšnje stoletje. Mission Control ponuja alternativo: razvijalcu lahko nastavite posebne pravice, tako da lahko bere samo dnevnike v določenem imenskem prostoru. V tem primeru mora preizkuševalec samo povedati: "obstajajo hrošči v taki in taki aplikaciji, v tem in tem polju, v tem in tem imenskem prostoru," in razvijalec lahko enostavno odpre dnevnike in lahko lokalizira težava. In zaradi omejenih pravic tega ne boste mogli takoj popraviti, če vaša usposobljenost tega ne dopušča.
Zdrava gruča ima zdravo uporabo.
Druga odlična lastnost Tanzu MC je sledenje zdravju grozdov. Sodeč po predhodnih materialih vam sistem omogoča ogled nekaterih statističnih podatkov. Trenutno je težko natančno reči, kako podrobne bodo te informacije: zaenkrat je vse videti precej skromno in preprosto. Obstaja spremljanje obremenitve procesorja in RAM-a, prikazano je stanje vseh komponent. A tudi v tako špartanski obliki je zelo uporaben in učinkovit detajl.
Rezultati
Seveda je v laboratorijski predstavitvi Mission Control v na videz sterilnih pogojih nekaj ostrih robov. Verjetno jih boste opazili tudi sami, če se boste odločili za delo. Nekateri vidiki niso narejeni dovolj intuitivno - celo izkušen skrbnik bo moral prebrati priročnik, da bi razumel vmesnik in njegove zmogljivosti.
Vendar se je glede na kompleksnost produkta, njegov pomen in vlogo, ki jo bo imel na trgu, odlično izkazal. Zdi se, kot da so ustvarjalci poskušali izboljšati potek dela uporabnika. Vsak kontrolni element naj bo čim bolj funkcionalen in razumljiv.
Vse, kar ostane, je poskusiti Tanzu na testni napravi, da bi resnično razumeli vse njegove prednosti, slabosti in novosti. Takoj, ko se ponudi takšna priložnost, bomo z bralci Habra delili podrobno poročilo o delu z izdelkom.
Vir: www.habr.com