Täna tahame rääkida VMware Tanzust, uuest toote- ja teenusesarjast, mis kuulutati välja eelmise aasta VMWorldi konverentsil. Päevakorras on üks huvitavamaid tööriistu: Tanzu Mission Control.
Olge ettevaatlik: lõike all on palju pilte.
Mis on missiooni juhtimine
Nagu ettevõte ise oma ajaveebis märgib, on VMware Tanzu Mission Controli peamine eesmärk "viia klastrite kaosesse kord". Mission Control on API-põhine platvorm, mis võimaldab administraatoritel rakendada klastritele või klastrite rühmadele eeskirju ja määrata turvareegleid. SaaS-põhised tööriistad integreeruvad agenti kaudu turvaliselt Kubernetese klastritesse ja toetavad mitmesuguseid standardseid klastri toiminguid, sealhulgas elutsükli haldustoiminguid (juurutamine, skaleerimine, kustutamine jne).
Tanzu liini ideoloogia põhineb avatud lähtekoodiga tehnoloogiate maksimaalsel kasutamisel. Tanzu Kubernetes Gridi klastrite elutsükli haldamiseks kasutatakse Cluster API-t, Velero't kasutatakse varundamiseks ja taastamiseks, Sonobuoy'd kasutatakse Kubernetese klastrite konfiguratsiooni järgimise jälgimiseks ja Contour'i sissepääsukontrollerina.
Tanzu Mission Control funktsioonide üldine loend näeb välja selline:
- kõigi teie Kubernetese klastrite tsentraliseeritud haldamine;
- identiteedi- ja juurdepääsuhaldus (IAM);
- klastri staatuse diagnostika ja monitooring;
- konfiguratsiooni- ja turvaseadete haldamine;
- korrapäraste klastri tervisekontrollide ajakava koostamine;
- varukoopiate loomine ja taastamine;
- kvootide haldamine;
- ressursside kasutamise visuaalne esitus.
Miks on see oluline
Tanzu Mission Control aitab ettevõtetel lahendada probleemi, mis on seotud suure Kubernetese klastrite pargi haldamisega, mis asuvad ruumides, pilves ja mitme kolmanda osapoole teenusepakkuja vahel. Varem või hiljem on iga IT-ga seotud ettevõte sunnitud toetama paljusid heterogeenseid klastreid, mis asuvad erinevate pakkujate juures. Iga klaster muutub lumepalliks, mis vajab pädevat organisatsiooni, sobivat infrastruktuuri, poliitikat, kaitset, seiresüsteeme ja palju muud.
Tänapäeval püüab iga ettevõte kulusid vähendada ja rutiinseid protsesse automatiseerida. Ja keeruline IT-maastik ei soodusta selgelt säästmist ja keskendumist prioriteetsetele ülesannetele. Tanzu Mission Control annab organisatsioonidele võimaluse kasutada mitut Kubernetese klastrit, mis on juurutatud mitme teenusepakkuja vahel, ühtlustades samal ajal töömudelit.
Lahenduse arhitektuur
Tanzu Mission Control on mitme rentniku platvorm, mis annab kasutajatele juurdepääsu väga konfigureeritavatele poliitikatele, mida saab rakendada Kubernetese klastritele ja klastrirühmadele. Iga kasutaja on seotud organisatsiooniga, mis on ressursside – klastrirühmade ja tööruumide – „juur”.
Mida Tanzu Mission Control teha saab
Eespool oleme juba lühidalt loetlenud lahenduse funktsioonide loendi. Vaatame, kuidas seda liideses rakendatakse.
Üks vaade ettevõtte kõigist Kubernetese klastritest:
Uue klastri loomine:
Saate kohe määrata rühma klastrile ja see pärib sellele määratud poliitikad.
Klastri ühendus:
Juba olemasolevaid klastreid saab lihtsalt ühendada spetsiaalse agendi abil.
Klastrite rühmitamine:
Klastrite rühmades saate rühmitada klastreid, et pärida määratud poliitikad kohe rühma tasemel, ilma käsitsi sekkumiseta.
Tööruumid:
Annab võimaluse paindlikult konfigureerida juurdepääsu rakendusele, mis asub mitmes nimeruumis, klastris ja pilveinfrastruktuuris.
Vaatame lähemalt Tanzu Mission Controli tööpõhimõtteid laboritöös.
Labor nr 1
Mission Controli ja uute Tanzu lahenduste toimimist ilma praktikata on muidugi üsna raske detailselt ette kujutada. Sarja põhifunktsioonide avastamiseks pakub VMware juurdepääsu mitmele laboripingile. Need pingid võimaldavad teil samm-sammult juhiseid kasutades teha laboritöid. Lisaks Tanzu Mission Controlile on testimiseks ja uurimiseks saadaval ka muid lahendusi. Laboritööde täieliku loetelu leiate
Erinevate lahendustega praktiliseks tutvumiseks (sealhulgas väike "mäng" vSAN-is) on eraldatud erinev aeg. Ärge muretsege, need on väga suhtelised arvud. Näiteks Tanzu Mission Controli laborit saab kodust möödudes "lahendada" kuni 9 ja pool tundi. Lisaks, isegi kui taimer saab otsa, saate tagasi minna ja kõik uuesti läbi vaadata.
Laboritöö nr 1 läbimine
Laboritele juurdepääsuks vajate VMware kontot. Pärast autoriseerimist avaneb hüpikaken töö põhikonspektiga. Üksikasjalikud juhised paigutatakse ekraani paremasse serva.
Pärast Tanzu lühikese sissejuhatuse lugemist kutsutakse teid harjutama Mission Controli interaktiivses simulatsioonis.
Avaneb uus Windowsi masina hüpikaken ja teil palutakse teha mõned põhitoimingud.
- luua klastri
- konfigureerida selle põhiparameetrid
- värskendage lehte ja veenduge, et kõik on õigesti seadistatud
- määrake poliitikad ja kontrollige klastrit
- luua tööruum
- luua nimeruum
- Töötage uuesti poliitikatega, iga sammu on juhendis üksikasjalikult kirjeldatud
- demo klastri uuendamine
Loomulikult ei anna interaktiivne simulatsioon piisavalt vabadust iseseisvaks õppimiseks: liigute mööda arendajate poolt eelnevalt paika pandud rööpaid.
Labor nr 2
Siin tegeleme juba millegi tõsisemaga. See laboritöö ei ole nii "rööbastega" seotud kui eelmine ja nõuab hoolikamat uurimist. Me ei esita seda siin tervikuna: teie aja säästmiseks analüüsime ainult teist moodulit, esimene on pühendatud Tanzu Mission Controli töö teoreetilisele aspektile. Soovi korral saate selle täiesti iseseisvalt läbi teha. See moodul pakub meile Tanzu Mission Controli kaudu sügavat sukeldumist klastri elutsükli haldamisse.
Märkus. Tanzu Mission Controli laboritööd ajakohastatakse ja täiustatakse regulaarselt. Kui mõni ekraan või toiming erineb labori läbimisel allolevatest, järgige ekraani paremal küljel olevaid juhiseid. Vaatame läbi LR-i praeguse versiooni selle kirjutamise ajal ja kaalume selle põhielemente.
Laboritöö nr 2 läbimine
Pärast VMware Cloud Services autoriseerimisprotsessi käivitame Tanzu Mission Controli.
Esimene samm, mida labor soovitab, on Kubernetese klastri juurutamine. Kõigepealt peame PuTTY abil pääsema juurde Ubuntu VM-ile. Käivitage utiliit ja valige Ubuntu seanss.
Täidame kordamööda kolm käsku:
- klastri loomine:
kind create cluster --config 3node.yaml --name=hol
- KUBECONFIG-faili laadimine:
export KUBECONFIG="$(kind get kubeconfig-path --name="hol")"
- sõlme väljund:
kubectl get nodes
Nüüd tuleb meie loodud klaster lisada Tanzu Mission Controli. PuTTY-st naaseme Chrome'i, minge jaotisse Clusters ja klõpsake nuppu KINNITA KLUSTER.
Valige rippmenüüst rühm - vaikimisi, sisestage labori soovitatud nimi ja klõpsake REGISTREERU.
Kopeerige saadud käsk ja minge PuTTY-sse.
Täidame saadud käsu.
Edenemise jälgimiseks käivitage teine käsk: watch kubectl get pods -n vmware-system-tmc
. Ootame, kuni kõik konteinerid saavad oleku Running või Lõpetatud.
Minge tagasi Tanzu Mission Controli ja klõpsake nuppu KINNITA ÜHENDUS. Kui kõik läks hästi, peaksid kõigi kontrollide indikaatorid olema rohelised.
Nüüd loome uue klastrite rühma ja juurutame seal uue klastri. Avage klastrirühmad ja klõpsake nuppu UUS KLASTERÜHM. Sisestage nimi ja klõpsake LUUA.
Uus rühm peaks kohe loendisse ilmuma.
Juurutame uue klastri: minge aadressile Klastridklõps UUS KLASTER ja valige laboritööga seotud valik.
Lisame klastri nime, valime sellele määratud grupi – meie puhul praktilised laborid – ja juurutuspiirkonna.
Klastri loomisel on ka muid võimalusi, kuid neid pole mõtet labori käigus muuta. Valige vajalik konfiguratsioon ja klõpsake nuppu järgmine.
Mõningaid parameetreid tuleb muuta, selleks klõpsake nuppu Edit.
Suurendame töötavate sõlmede arvu kaheni, salvestame parameetrid ja klõpsake LUUA.
Protsessi ajal näete sellist edenemisriba.
Pärast edukat juurutamist näete seda pilti. Kõik tšekid peavad olema rohelised.
Nüüd peame klastri haldamiseks standardsete kubectli käskude abil alla laadima faili KUBECONFIG. Seda saab teha otse Tanzu Mission Controli kasutajaliidese kaudu. Laadige fail alla ja jätkake Tanzu Mission Control CLI allalaadimist, klõpsates nuppu kliki siia.
Valige soovitud versioon ja laadige alla CLI.
Nüüd peame hankima API märgi. Selleks minge aadressile Minu konto ja luua uus märk.
Täitke väljad ja klõpsake nuppu KOGU.
Kopeerige saadud žetoon ja klõpsake EDASI. Avage Power Shell ja sisestage käsk tmc-login, seejärel eelmises etapis saadud ja kopeeritud luba ning seejärel sisselogimise konteksti nimi. Vali info logid pakutavatest, piirkonna ja olympus-vaikimisi ssh-võtmena.
Saame nimeruumid:kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get namespaces
.
Tutvustage kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get nodes
veendumaks, et kõik sõlmed on olekus Valmis.
Nüüd peame selles klastris juurutama väikese rakenduse. Teeme kaks juurutust – kohv ja tee – teenustena coffee-svc ja tea-svc, millest igaüks käivitab erinevad pildid – nginxdemos/hello ja nginxdemos/hello:plain-text. Seda tehakse järgmiselt.
Läbi PowerShell minge allalaadimiste alla ja leidke fail üles kohvik-teenused.yaml.
Mõnede API muudatuste tõttu peame seda värskendama.
Podi turvapoliitikad on vaikimisi lubatud. Privileegidega rakenduste käitamiseks peate oma konto linkima.
Looge sidumine: kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
Juurutame rakenduse: kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
Kontrollime: kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods
Moodul 2 on lõppenud, sa oled ilus ja hämmastav! Soovitame ülejäänud moodulid (sh poliitikahaldus ja vastavuskontrollid) ise läbida.
Kui soovite selle labori täielikult lõpetada, leiate selle siit
Arvamused ja järeldused
Muidugi on Tanzuga töötamise praktilistest küsimustest veel vara rääkida. Iseõppimiseks pole nii palju materjale ja täna ei ole võimalik katsestendit kasutusele võtta, et uut toodet igast küljest “torkida”. Kuid isegi olemasolevate andmete põhjal saab teha teatud järeldusi.
Tanzu missioonijuhtimise eelised
Süsteem osutus tõeliselt huvitavaks. Tahaksin kohe esile tõsta mõned mugavad ja kasulikud maiuspalad:
- Veebipaneeli ja konsooli kaudu saate luua klastreid, mis arendajatele väga meeldivad.
- RBAC-i haldamine tööruumide kaudu on realiseeritud kasutajaliideses. Laboris see veel ei tööta, kuid teoreetiliselt on see suurepärane asi.
- Mallipõhine tsentraliseeritud privileegide haldamine
- Täielik juurdepääs nimeruumidele.
- YAML-i redaktor.
- Võrgupoliitikate loomine.
- Klastri tervise jälgimine.
- Võimalus konsooli kaudu varundada ja taastada.
- Hallake kvoote ja ressursse tegeliku kasutuse visualiseerimisega.
- Klastrite kontrolli automaatne käivitamine.
Jällegi, paljud komponendid on praegu väljatöötamisel, seega on veel vara rääkida täielikult mõne tööriista plussidest ja miinustest. Muide, Tanzu MC saab demonstratsiooni põhjal klastri käigu pealt uuendada ja üldiselt pakkuda kogu klastri elutsüklit mitmele pakkujale korraga.
Siin on mõned "kõrgetasemelised" näited.
Kellegi teise klastrisse, kellel on oma harta
Oletame, et teil on arendusmeeskond, millel on selgelt määratletud rollid ja kohustused. Igaüks on hõivatud oma asjadega ega tohiks isegi kogemata oma kolleegide tööd segada. Või on meeskonnas üks või mitu vähem kogenud spetsialisti, kellele ei taheta anda asjatuid õigusi ja vabadusi. Oletame ka, et teil on Kubernetes korraga kolmelt pakkujalt. Sellest tulenevalt peate õiguste piiramiseks ja ühise nimetajani viimiseks minema igale juhtpaneelile ükshaaval ja registreerima kõik käsitsi. Nõus, mitte kõige produktiivsem ajaviide. Ja mida rohkem ressursse teil on, seda tüütum on protsess. Tanzu Mission Control võimaldab teil hallata rollide piiritlemist "ühest aknast". Meie arvates on see väga mugav funktsioon: keegi ei riku midagi, kui unustate kogemata kuhugi vajalikud õigused täpsustada.
Muide, meie kolleegid MTS-ist oma ajaveebis
Kompaktne töö palkidega
Teine näide päriselust on palkidega töötamine. Oletame, et meeskonnal on ka testija. Ühel ilusal päeval tuleb ta arendajate juurde ja teatab: "Rakenduses leiti viga, parandame selle kiiresti." On loomulik, et esimene asi, millega arendaja tutvuda soovib, on palgid. Nende saatmine failidena meili või telegrammi teel on halvad kombed ja eelmisel sajandil. Mission Control pakub alternatiivi: saate määrata arendajale eriõigused, et nad saaksid lugeda ainult konkreetses nimeruumis olevaid logisid. Sel juhul peab testija lihtsalt ütlema: "sellises ja sellises rakenduses, sellises ja sellises väljas, sellises ja sellises nimeruumis on vead" ning arendaja saab logid hõlpsalt avada ja lokaliseerida. probleem. Ja piiratud õiguste tõttu ei saa te seda kohe parandada, kui teie pädevus seda ei võimalda.
Tervel klastril on tervislik rakendus.
Tanzu MC teine suurepärane omadus on klastri tervise jälgimine. Esialgsete materjalide põhjal otsustades võimaldab süsteem vaadata mõningast statistikat. Praegu on raske täpselt öelda, kui üksikasjalik see teave olema saab: seni tundub kõik üsna tagasihoidlik ja lihtne. Seal jälgitakse protsessori ja RAM-i koormust, näidatakse kõigi komponentide olekut. Kuid isegi sellisel spartalikul kujul on see väga kasulik ja tõhus detail.
Tulemused
Muidugi on Mission Controli laboratoorses esitluses pealtnäha steriilsetes tingimustes omajagu konarusi. Tõenäoliselt märkate neid ka ise, kui otsustate töö läbi teha. Mõned aspektid pole tehtud piisavalt intuitiivselt – isegi kogenud administraator peab liidese ja selle võimaluste mõistmiseks juhendit lugema.
Arvestades aga toote keerukust, tähtsust ja rolli turul, osutus see suurepäraseks. Tundub, et loojad püüdsid kasutaja töövoogu parandada. Muutke iga juhtelement võimalikult funktsionaalseks ja arusaadavaks.
Jääb üle vaid proovida Tanzut katsestendil, et tõesti mõista selle kõiki plusse, miinuseid ja uuendusi. Niipea kui selline võimalus avaneb, jagame Habri lugejatega üksikasjalikku aruannet tootega töötamise kohta.
Allikas: www.habr.com