Yfirlit yfir GUI fyrir Kubernetes

Yfirlit yfir GUI fyrir Kubernetes

Fyrir fullgilda vinnu með kerfið er þekking á skipanalínutólum mikilvæg: í tilfelli Kubernetes er þetta kubectl. Á hinn bóginn geta vel hönnuð, ígrunduð grafísk viðmót skilað árangriоflestum venjulegum verkefnum og opnast fleiri tækifæri til reksturs kerfa.

Í fyrra gáfum við út þýðingu lítið yfirlit yfir vefviðmót fyrir Kubernetes, tímasett til að falla saman við tilkynningu um vefviðmótið Kubernetes WebView. Höfundur þessarar greinar og tólið sjálft, Henning Jacobs frá Zalando, setti nýju vöruna sem „kubectl fyrir vefinn“. Hann vildi búa til tól með notendavænum möguleikum til að hafa samskipti á tæknilega stuðningssniði (til dæmis fljótt að sýna vandamálið með veftengli) og til að bregðast við atvikum, leita að vandamálum í mörgum klösum á sama tíma. Afkvæmi hans eru að þroskast um þessar mundir (aðallega af viðleitni höfundarins sjálfs).

Þar sem við þjónum mörgum Kubernetes klasa af ýmsum stærðum höfum við einnig áhuga á að geta veitt viðskiptavinum okkar sjónrænt tól. Við val á viðeigandi viðmóti voru eftirfarandi eiginleikar lykilatriði fyrir okkur:

  • stuðningur við aðgreining notendaréttinda (RBAC);
  • myndgerð nafnrýmis ástands og staðlaðra Kubernetes frumstæðna (Deployment, StatefulSet, Service, Cronjob, Job, Ingress, ConfigMap, Secret, PVC);
  • fá aðgang að skipanalínunni inni í belgnum;
  • skoða annála af belgjum;
  • skoða stöðu belg (describe status);
  • að fjarlægja belg.

Aðrar aðgerðir, eins og að skoða notaðar auðlindir (í samhengi við belg/stýringar/nafnarými), búa til/breyta frumstæðum K8s, skipta ekki máli innan verkflæðisins okkar.

Við byrjum endurskoðunina með hinu klassíska Kubernetes mælaborði, sem er staðall okkar. Þar sem heimurinn stendur ekki kyrr (sem þýðir að Kubernetes hefur fleiri og fleiri ný GUI), munum við einnig tala um núverandi valkosti hans, draga allt saman í samanburðartöflu í lok greinarinnar.

NB: Í endurskoðuninni munum við ekki endurtaka með þeim lausnum sem þegar hafa verið skoðaðar í síðasta greinin, hins vegar, til fullnustu, eru viðeigandi valkostir úr henni (K8Dash, Octant, Kubernetes Web View) með í lokatöflunni.

1. Kubernetes mælaborð

  • Skjalasíða;
  • geymsla (8000+ GitHub stjörnur);
  • Leyfi: Apache 2.0;
  • Í stuttu máli: „Alhliða vefviðmót fyrir Kubernetes klasa. Það gerir notendum kleift að stjórna og leysa úr forritum sem keyra í klasanum, sem og stjórna klasanum sjálfum.

Yfirlit yfir GUI fyrir Kubernetes

Þetta er pallborð fyrir almennan tilgang sem Kubernetes höfundarnir fjalla um í opinberu skjölunum (en ekki hægt að dreifa sjálfgefið). Það er hannað fyrir þarfir daglegs reksturs og villuleit á forritum í klasa. Heima notum við það sem fullgild létt sjónrænt tól sem gerir okkur kleift að veita forriturum nauðsynlegan og nægjanlegan aðgang að þyrpingunni. Geta þess nær yfir allar þarfir þeirra sem koma upp í notkun klasans Þessi grein við sýndum nokkra eiginleika spjaldsins). Eins og þú gætir giskað á þýðir þetta að það uppfyllir allar kröfur okkar hér að ofan.

Meðal helstu eiginleika Kubernetes mælaborðsins:

  • Leiðsögn: Skoðaðu helstu hluti K8s í samhengi við nafnrými.
  • Ef þú hefur stjórnandaréttindi sýnir spjaldið hnúta, nafnarými og viðvarandi bindi. Fyrir hnúta er tölfræði tiltæk um notkun minni, örgjörva, úthlutun auðlinda, mælikvarða, stöðu, atburði osfrv.
  • Skoðaðu forrit sem eru notuð í nafnrými eftir gerð þeirra (Deployment, StatefulSet, osfrv.), tengslum þeirra á milli (ReplicaSet, Horizontal Pod Autoscaler), almennri og persónulegri tölfræði og upplýsingum.
  • Skoðaðu þjónustur og inngöngur, svo og tengsl þeirra við belg og endapunkta.
  • Skoða skráarhluti og -geymslur: Viðvarandi bindi og viðvarandi bindikrafa.
  • Skoðaðu og breyttu ConfigMap og Secret.
  • Skoða logs.
  • Skipanalínuaðgangur í gámum.

Verulegur galli (þó ekki fyrir okkur) er að það er enginn stuðningur við fjölklasavinnu. Verkefnið er virkt þróað af samfélaginu og viðheldur viðeigandi eiginleikum með útgáfu nýrra útgáfur og forskriftir Kubernetes API: nýjasta útgáfan af spjaldinu er v2.0.1 22. maí 2020 - Prófað fyrir samhæfni við Kubernetes 1.18.

2. Lens

  • Site;
  • Kynning;
  • geymsla (~4800 GitHub stjörnur);
  • Leyfi: MIT;
  • Í stuttu máli: "Kubernetes IDE".

Yfirlit yfir GUI fyrir Kubernetes

Verkefnið er staðsett sem fullkomið samþætt þróunarumhverfi (IDE) fyrir Kubernetes. Þar að auki er það fínstillt til að vinna með marga klasa og mikinn fjölda fræbelgja sem keyra í þeim (prófað á 25 fræbelgjum).

Helstu eiginleikar / eiginleikar linsu:

  • Sjálfstætt forrit sem krefst ekki uppsetningar á neinu inni í klasanum (nánar tiltekið, Prometheus verður krafist til að fá allar mælingar, en núverandi uppsetningu er einnig hægt að nota fyrir þetta). „Aðal“ uppsetningin er gerð á einkatölvu sem keyrir Linux, macOS eða Windows.
  • Fjölklasastjórnun (hundrað klasa studd).
  • Sýning á ástandi klasans í rauntíma.
  • Gröf og þróun auðlindanotkunar með sögu byggð á innbyggðum Prometheus.
  • Aðgangur að skipanalínu gáma og á klasahnútum.
  • Fullur stuðningur við Kubernetes RBAC.

Núverandi útgáfa - 3.5.0 dagsett 16. júní 2020 Upphaflega stofnað af Kontena, í dag hefur allt hugverk verið flutt til sérstakrar stofnunar Lakeland Labs, sem kallast "samband nörda og tæknifræðinga í skýjum", sem er ábyrgt fyrir "varðveislu og framboði á opnum hugbúnaði og vörum Kontena."

Lens er annað vinsælasta verkefnið á GitHub úr GUI fyrir Kubernetes flokkinn, og „týnir“ aðeins Kubernets mælaborðinu sjálfu. Allar aðrar Open Source lausnir sem ekki eru úr CLI* flokknum eru verulega lakari í vinsældum.

* Sjá um K9s í bónushluta umsögnarinnar.

3. Kubernetic

Yfirlit yfir GUI fyrir Kubernetes

Þetta er sérforrit sem er sett upp á einkatölvu (Linux, macOS, Windows eru studd). Höfundar þess lofa algjörri skiptingu á skipanalínuforritinu og þar með - engin þörf á að muna skipanir og jafnvel tíföldun á hraða.

Einn af áhugaverðum eiginleikum tólsins er innbyggður stuðningur fyrir Helm töflur og einn af göllunum er skortur á frammistöðumælingum forrita.

Helstu eiginleikar Kubernetic:

  • Þægileg sýning á klasastöðu. Einn skjár til að skoða alla tengda klasahluti og ósjálfstæði þeirra; rauð/græn viðbúnaðarstaða fyrir alla hluti; klasastöðuskoðunarhamur með rauntíma stöðuuppfærslum.
  • Flýtiaðgerðarhnappar til að eyða og stækka forritið.
  • Stuðningur við rekstur margra klasa.
  • Einföld vinna með nafnarými.
  • Stuðningur við Helm töflur og Helm geymslur (þar á meðal einkareknar). Uppsetning og umsjón með töflum í vefviðmótinu.

Núverandi kostnaður við vöruna er eingreiðsla upp á 30 evrur fyrir notkun hennar af einum einstaklingi fyrir hvaða fjölda nafnrýmis og klasa sem er.

4. Kubevious

  • Site;
  • Kynning;
  • geymsla (~500 GitHub stjörnur);
  • Leyfi: Apache 2.0
  • Í stuttu máli: "Kubevious gerir Kubernetes klasa, uppsetningu forrita og stöðuskoðun örugga og auðskiljanlega."

Yfirlit yfir GUI fyrir Kubernetes

Hugmyndin að verkefninu er að búa til tól sem er hannað til að greina og kemba stillingar forrita sem eru notaðar í klasa. Höfundar einblíndu fyrst og fremst á útfærslu þessara eiginleika og skildu almennari hluti eftir til síðari tíma.

Helstu eiginleikar og aðgerðir Kubevious:

  • Sýning klasa á forritsmiðaðan hátt: tengdir hlutir í viðmótinu eru flokkaðir, raðað í stigveldi.
  • Sjónræn birting á ósjálfstæði í stillingum og steypandi afleiðingum breytinga þeirra.
  • Sýning á þyrpingarvillum: misnotkun á merkimiðum, týnd höfn osfrv. (Við the vegur, ef þú hefur áhuga á þessum eiginleika, gaum að Polarisum það sem við þegar skrifað.)
  • Til viðbótar við fyrri lið er hægt að finna hugsanlega hættulega ílát, þ.e. hafa of mikil forréttindi (eiginleikar hostPID, hostNetwork, hostIPC, fjall docker.sock osfrv).
  • Ítarlegt leitarkerfi fyrir þyrpinguna (ekki aðeins eftir nöfnum hluta, heldur einnig eftir eiginleikum þeirra).
  • Verkfæri til að skipuleggja afkastagetu og hagræðingu auðlinda.
  • Innbyggð „tímavél“ (getan til að sjá fyrri breytingar á uppsetningu hluta).
  • RBAC stjórnun með snúningstengdri töflu yfir hlutverk, hlutverkabindingar, þjónustureikninga.
  • Virkar með aðeins einum klasa.

Verkefnið á sér mjög stutta sögu (fyrsta útgáfan fór fram 11. febrúar 2020) og svo virðist sem það hafi verið tímabil annaðhvort stöðugleika eða hægja á þróun. Ef fyrri útgáfur voru gefnar út oft, þá er nýjasta útgáfan (v0.5 15. apríl 2020) hefur dregist aftur úr upphafshraða þróunarinnar. Þetta stafar líklega af fáum þátttakendum: þeir eru aðeins 4 í sögu geymslunnar og öll raunveruleg vinna er unnin af einum aðila.

5. Kubewise

  • Verkefnasíða;
  • Leyfi: einkaleyfi (verður opinn uppspretta);
  • Í stuttu máli: "Einfaldur fjölvettvangsbiðlari fyrir Kubernetes."

Yfirlit yfir GUI fyrir Kubernetes

Ný vara frá VMware, upphaflega búin til sem hluti af innri hackathon (í júní 2019). Uppsett á einkatölvu, virkar á grundvelli rafeinda (Linux, macOS og Windows studd) og krefst kubectl v1.14.0 eða nýrri.

Helstu eiginleikar Kubewise:

  • Viðmótssamskipti við algengustu Kubernetes einingar: hnúta, nafnarými o.s.frv.
  • Stuðningur við margar kubeconfig skrár fyrir mismunandi klasa.
  • Terminal með getu til að stilla umhverfisbreytu KUBECONFIG.
  • Búðu til sérsniðnar kubeconfig skrár fyrir tiltekið nafnrými.
  • Ítarlegir öryggiseiginleikar (RBAC, lykilorð, þjónustureikningar).

Enn sem komið er hefur verkefnið aðeins eina útgáfu - útgáfu 1.1.0 dagsett 26. nóvember 2019. Þar að auki ætluðu höfundar að gefa það út strax sem opinn uppspretta, en vegna innri vandamála (ekki tengd tæknilegum vandamálum) gátu þeir ekki gert þetta. Frá og með maí 2020 eru höfundar að vinna að næstu útgáfu og ættu að hefja opna kóðann á sama tíma.

6. OpenShift Console

Yfirlit yfir GUI fyrir Kubernetes

Þrátt fyrir þá staðreynd að þetta vefviðmót sé hluti af OpenShift dreifingunni (það er sett upp þar með því að nota sérstakur rekstraraðili), höfunda gert ráð fyrir getu til að setja upp / nota það í venjulegum (vanillu) Kubernetes uppsetningum.

OpenShift Console hefur verið í þróun í langan tíma, svo það hefur tekið upp marga eiginleika. Við munum nefna þær helstu:

  • Samnýtt viðmótsaðferð - tvö „sjónarhorn“ á möguleikunum sem eru í boði í stjórnborðinu: fyrir stjórnendur og fyrir þróunaraðila. Mode sjónarhorn þróunaraðila flokkar hluti á formi sem er skiljanlegra fyrir þróunaraðila (eftir forritum) og einbeitir viðmótinu að því að leysa dæmigerð verkefni eins og að dreifa forritum, rekja byggingu/dreifa stöðu og jafnvel breyta kóða í gegnum Eclipse Che.
  • Stjórnun vinnuálags, netkerfis, geymslu, aðgangsréttar.
  • Rökrétt aðskilnaður fyrir vinnuálag í verkefni og forrit. Í einni af nýjustu útgáfunum - v4.3 - birtist sérstakt mælaborð verkefnisins, sem sýnir venjuleg gögn (fjöldi og stöður dreifingar, belg osfrv.; auðlindanotkun og aðrar mælikvarðar) í verksneið.
  • Uppfært í rauntíma birtingu á stöðu klasans, breytingar (atburðir) sem hafa átt sér stað á honum; skoða logs.
  • Skoða vöktunargögn byggð á Prometheus, Alertmanager og Grafana.
  • Stjórn rekstraraðila sem eiga fulltrúa í rekstrarmiðstöð.
  • Stjórna byggingum sem keyra í gegnum Docker (frá tiltekinni geymslu með Dockerfile), S2I eða handahófskenndar ytri veitur.

NB: Við bættum ekki öðrum við samanburðinn Kubernetes dreifingar (td hið miklu minna þekkta Kubesphere): þrátt fyrir að GUI geti verið mjög háþróað í þeim, kemur það venjulega sem hluti af samþættum stafla stórs kerfis. Hins vegar, ef þú heldur að það séu ekki nógu margar lausnir sem virka að fullu í vanillu K8s uppsetningunni, láttu okkur vita í athugasemdunum.

Bónus

1. Portainer á Kubernetes í Beta

  • Site;
  • geymsla (~100 GitHub stjörnur);
  • Leyfi: Zlib(?) (sama fyrir foreldraverkefnið).

Verkefni frá Portainer teyminu, sem þróaði hið vinsæla viðmót með sama nafni til að vinna með Docker. Þar sem verkefnið er á frumstigi þróunar (fyrsta og eina beta útgáfan kom út 16. apríl 2020), höfum við ekki metið eiginleika þess. Hins vegar gæti það verið áhugavert fyrir marga: ef þetta er um þig skaltu fylgjast með þróuninni.

2. IcePanel

  • Site;
  • Leyfi: einkaleyfi;
  • Í stuttu máli: "Visual Kubernetes Editor".

Yfirlit yfir GUI fyrir Kubernetes

Þetta unga skrifborðsforrit miðar að því að sjá og stjórna Kubernetes auðlindum í rauntíma með einföldu drag & drop viðmóti. Hlutir sem nú eru studdir eru Pod, Service, Deployment, StatefulSet, PersistentVolume, PersistentVolumeClaim, ConfigMap og Secret. Brátt lofa þeir að bæta við stuðningi við Helm. Helstu ókostirnir eru nálægð kóðans (búist er við opnun "á einhvern hátt") og skortur á Linux stuðningi (enn sem komið er eru aðeins útgáfur fyrir Windows og macOS í boði, þó að þetta sé líka líklegast bara tímaspursmál).

3.k9s

  • Site;
  • Sýning;
  • geymsla (~7700 GitHub stjörnur);
  • Leyfi: Apache 2.0;
  • Í stuttu máli: "Tilborðsviðmót fyrir Kubernetes sem gerir þér kleift að stjórna klasanum þínum með stæl."

Yfirlit yfir GUI fyrir Kubernetes

Tækið var aðeins í bónushluta endurskoðunarinnar af þeirri ástæðu að það býður upp á stjórnborðs GUI. Hins vegar kreistu höfundarnir bókstaflega hámarkið út úr flugstöðinni og buðu ekki aðeins upp á notendavænt viðmót, heldur einnig 6 fyrirfram skilgreind þemu, og háþróað kerfi flýtilykla og skipanasamnefni. Ítarleg nálgun þeirra var ekki takmörkuð við útlit: eiginleikar k9s eru skemmtilega áhrifamiklir: auðlindastjórnun, sýna stöðu þyrpingarinnar, sýna auðlindir í stigveldi framsetningu með ósjálfstæði, skoða annála, RBAC stuðning, auka möguleika í gegnum viðbætur ... Allt þetta áfrýjaði til hins víðtæka K8s samfélagsins: fjöldi GitHub stjörnur verkefnisins eru næstum jafn góðar og opinbera Kubernetes mælaborðið!

4. Umsókn stjórnborð

Og í lok endurskoðunarinnar - sérstakur lítill flokkur. Það innihélt tvö vefviðmót sem eru ekki hönnuð fyrir alhliða stjórnun Kubernetes klasa, heldur til að stjórna því sem er notað í þeim.

Eins og þú veist er eitt af þroskuðustu og útbreiddustu verkfærunum til að dreifa flóknum forritum í Kubernetes Helm. Á tímabilinu sem það hefur verið til hafa margir pakkar (Helm töflur) safnast fyrir til að auðvelda uppsetningu mörg vinsæl forrit. Þess vegna er útlit viðeigandi sjónræna verkfæra sem gerir þér kleift að stjórna lífsferli korta nokkuð rökrétt.

4.1. Einkavél

  • geymsla (1300+ GitHub stjörnur);
  • Leyfi: Apache 2.0;
  • Í stuttu máli: „Vefforrit til að leita og uppgötva Helm töflur yfir margar geymslur. Virkar sem grunnur að Helm hub verkefninu.“

Yfirlit yfir GUI fyrir Kubernetes

Þessi þróun frá höfundum Helm er sett upp í Kubernetes og vinnur innan sama klasa og sinnir verkefninu. Hins vegar, eins og er, er verkefnið nánast ekki þróað. Megintilgangur þess er að styðja við tilvist Helm Hub. Fyrir aðrar þarfir mæla höfundar með Kubeapps (sjá hér að neðan) eða Red Hat Automation Broker (hluti af OpenShift, en heldur ekki lengur í þróun).

4.2. Kubeapps

  • Site;
  • Kynning;
  • geymsla (~2100 GitHub stjörnur);
  • Leyfi: Apache 2.0
  • Í stuttu máli: "Forritastjórnborðið þitt fyrir Kubernetes."

Yfirlit yfir GUI fyrir Kubernetes

Vara frá Bitnami, sem einnig er sett upp í Kubernetes klasa, en er frábrugðin Monocular í fyrstu áherslu sinni á að vinna með einkageymslum.

Lykilaðgerðir og eiginleikar Kubeapps:

  • Skoðaðu og settu upp Helm töflur úr geymslum.
  • Athugaðu, uppfærðu og fjarlægðu Helm-undirstaða forrit sem eru uppsett á þyrpingunni.
  • Stuðningur við sérsniðnar og einkakortageymslur (styður ChartMuseum og JFrog Artifactory).
  • Skoða og vinna með ytri þjónustu - úr þjónustuskrá og þjónustumiðlara.
  • Birta uppsett forrit með því að nota þjónustuskrárbindingarkerfið.
  • Stuðningur við auðkenningu og aðskilnað réttinda með RBAC.

Yfirlit tafla

Hér að neðan er yfirlitstafla þar sem við höfum reynt að draga saman og safna saman helstu eiginleikum núverandi sjónviðmóta til að auðvelda samanburð:

Yfirlit yfir GUI fyrir Kubernetes
(Netútgáfa af töflunni fáanlegt á Google Docs.)

Ályktun

GUI fyrir Kubernetes eru frekar sérstakur og ungur sess. Hins vegar er það að þróast mjög virkan: það er nú þegar hægt að finna bæði nokkuð þroskaðar lausnir og mjög ungar, sem hafa enn pláss til að vaxa. Þeir koma til móts við margs konar forrit, bjóða upp á eiginleika og útlit sem hentar nánast öllum smekk. Við vonum að þessi endurskoðun hjálpi þér að velja það tól sem hentar best núverandi þörfum þínum.

PS

Þakka þér fyrir kvaps fyrir gögnin á OpenShift stjórnborðinu fyrir samanburðartöfluna!

Lestu líka á blogginu okkar:

Heimild: www.habr.com

Bæta við athugasemd