Pêşniyara GUI-yên ji bo Kubernetes

Pêşniyara GUI-yên ji bo Kubernetes

Ji bo ku hûn bi pergalê re bi tevahî bixebitin, girîng e ku meriv karûbarên rêzika fermanê zanibe: di doza Kubernetes de, ev kubectl ye. Ji hêla din ve, GUI-yên baş-sêwirandî, baş-fikirkirî dikarin pêk bîninоpiraniya karên asayî û dema pergalên xebitandinê de fersendên zêde vedikin.

Par me wergerek weşand nêrînek kurt a UI ya webê ji bo Kubernetes, ji bo ragihandina navgîniya malperê ve hatî veqetandin Kubernetes WebView. Nivîskarê wê gotarê û kargêr bi xwe, Henning Jacobs ji pargîdaniya Zalando, hilbera nû wekî "kubectl ji bo tevneyê" destnîşan kir. Wî dixwest ku amûrek bi kapasîteyên hêsan ji bo danûstendinê di formatek piştgirîya teknîkî de (mînak, bi lez pirsgirêkek bi girêdanek malperê re nîşan bide) û ji bo bersivdana bûyeran, di heman demê de li pirsgirêkan di gelek koman de bigere, biafirîne. Mejiyê wî îro jî (bi giranî ji aliyê nivîskar bi xwe) ve tê pêşxistin.

Xizmetkirina gelek komên Kubernetes ên bi mezinahiyên cihêreng, em di heman demê de bi şiyana peydakirina xerîdar amûrek xebata dîtbarî jî eleqedar in. Dema ku navberek guncan hilbijêrin, taybetmendiyên jêrîn ji bo me sereke bûn:

  • piştgiriya ji bo cudakirina mafên bikarhêner (RBAC);
  • dîtbarîkirina rewşa cîhê navan û primitivesên standard ên Kubernetes (Bikaranîna, StatefulSet, Xizmet, Cronjob, Job, Ingress, ConfigMap, Secret, PVC);
  • gihîştina rêzika fermanê di hundurê pod de;
  • dîtina têketinên pod;
  • dîtina rewşa potan (describe status);
  • rakirina piyan.

Fonksiyonên din, wek dîtina çavkaniyên xerckirî (ji hêla pods / kontrolker / cîhên navan ve), afirandina / sererastkirina primitives K8s, di nav xebata me de ne têkildar in.

Em ê dest bi vekolînê bikin bi Dashboard-a Kubernetes a klasîk, ku wekî standarda me tête pejirandin. Ji ber ku cîhan raweste (ku tê vê wateyê ku Kubernetes xwedan GUI-yên nû û bêtir in), em ê li ser alternatîfên wê yên heyî jî biaxivin, di dawiya gotarê de her tiştî di tabloyek berawirdî de kurt bikin.

NB: Di vekolînê de em ê wan çareseriyên ku berê hatine berçavgirtin dubare nekin gotara dawî, Lêbelê - ji bo tambûnê - vebijarkên têkildar ji wê (K8Dash, Octant, Kubernetes Web View) di tabloya paşîn de hene.

1. Kubernetes Dashboard

  • Rûpelê belgekirinê;
  • depo (8000+ stêrkên GitHub);
  • Lîsans: Apache 2.0;
  • Bi kurtasî: "Ji bo komên Kubernetes navgînek tevnvîsek gerdûnî. Ew rê dide bikarhêneran ku serîlêdanên ku di komekê de dixebitin rêve bibin û pirsgirêkan çareser bikin, û hem jî komê bixwe jî birêve bibin."

Pêşniyara GUI-yên ji bo Kubernetes

Ev panelek armanca gelemperî ye ku ji hêla nivîskarên Kubernetes ve di belgeya fermî de tê vegirtin (lebê nayê belavkirin destçûnî). Ew ji bo hewcedariyên xebata rojane û debuggkirina sepanan di komekê de tête armanc kirin. Em li vir wê wekî amûrek dîtbarî ya sivik a bêkêmasî bikar tînin ku destûrê dide me ku ji pêşdebiran re gihîştina pêdivî û têr a komê peyda bikin. Kapasîteyên wê hemî hewcedariyên wan ên ku di pêvajoya karanîna komê de çêdibin vedihewîne (v vê gotara me hin taybetmendiyên panelê destnîşan kir). Wekî ku hûn dikarin bi hêsanî texmîn bikin, ev tê vê wateyê ku ew hemî daxwazên me yên ku li jor hatine destnîşan kirin têr dike.

Di nav taybetmendiyên sereke yên Kubernetes Dashboard:

  • Navîgasyon: Tiştên sereke yên K8-ê li gorî cîhê navan bibînin.
  • Ger mafên we yên rêvebir hebin, panel girêk, cîhên navan û cildên domdar nîşan dide. Ji bo girêkan statîstîkên li ser karanîna bîr û pêvajoyê, veqetandina çavkaniyê, metris, rewş, bûyer û hwd hene.
  • Serlêdanên ku di nav qada navan de hatine bicîh kirin li gorî celebê wan (Deployment, StatefulSet, hwd.), Girêdanên di navbera wan de (ReplicaSet, Horizontal Pod Autoscaler), statîstîk û agahdariya gelemperî û kesane bibînin.
  • Karûbar û Ingress, û her weha têkiliyên wan bi pods û xalên dawîn re bibînin.
  • Tişt û depoyên pelê bibînin: Volume Persistent and Persistent Volume Claim.
  • ConfigMap û Secret bibînin û biguherînin.
  • Têketinê bibînin.
  • Gihîştina rêza fermanê di konteyneran de.

Kêmasiyek girîng (ne ji bo me, lêbelê) ev e ku ji bo operasyona pir-kluster piştgirî tune. Proje bi aktîvî ji hêla civakê ve hatî pêşve xistin û fonksiyonên heyî bi berdana guhertoyên nû û taybetmendiyên Kubernetes API-yê piştgirî dike: guhertoya herî dawî ya panelê ye. v2.0.1 22 Gulan, 2020 - Ji bo lihevhatina bi Kubernetes 1.18 ve hatî ceribandin.

2.Lens

Pêşniyara GUI-yên ji bo Kubernetes

Proje ji bo Kubernetes wekî hawîrdorek pêşkeftina yekbûyî ya bêkêmasî (IDE) cih digire. Digel vê yekê, ew ji bo xebitandina bi gelek koman û hejmareke mezin a podên ku di wan de dixebitin re xweşbîn e (li ser 25 hezar pods hatine ceribandin).

Taybetmendî / kapasîteyên sereke yên Lens:

  • Serlêdanek serbixwe ya ku hewcedariya sazkirina tiştek li hundurê komê nake (bi rastî, Prometheus pêdivî ye ku hemî metrîkan bistîne, lê hûn dikarin ji bo vê yekê saziyek heyî jî bikar bînin). Sazkirina "sereke" li ser komputerek kesane ya ku Linux, macOS an Windows-ê dixebitîne tê kirin.
  • Rêvebiriya pir-kluster (bi sedan kom têne piştgirî kirin).
  • Dîmenîkirina rewşa komê di wextê rast de.
  • Grafikên karanîna çavkaniyê û meylên bi dîrokê re li ser bingeha Prometheus-a çêkirî ye.
  • Gihîştina rêzika fermanê ya konteyneran û girêkên komê.
  • Piştgiriya tevahî ji bo Kubernetes RBAC.

Weşana heyî - 3.5.0 16 Hezîran, 2020. Guhertoya destpêkê li Kontena hate afirandin, û îro hemî milkê rewşenbîrî ji rêxistinek taybetî re hate veguheztin Lakend Labs, bi navê "komela geek û teknolojiyên xwecî yên ewr," yên ku ji "parastin û berdestkirina nermalava Çavkaniya Vekirî û hilberên Kontena" berpirsiyar in.

Lens duyemîn projeya herî populer a li ser GitHub-ê ye di kategoriya GUI-yê de ji bo Kubernetes, li pişt tenê Dashboard-a Kubernets bixwe ye. Hemî çareseriyên din ên Çavkaniya Vekirî ku ne di kategoriya CLI * de ne di populerbûnê de pir kêm in.

* Di beşa bonus ya nirxandinê de li ser K9s bibînin.

3. Kubernetic

Pêşniyara GUI-yên ji bo Kubernetes

Ev serîlêdanek xwedan e ku li ser komputerek kesane hatî saz kirin (Linux, macOS, Windows têne piştgirî kirin). Nivîskarên wê soz didin ku veguheztinek bêkêmasî ya kargêriya rêza fermanê, û bi wê re, ne hewce ye ku emran bi bîr bînin û tewra deh caran di leza xebitandinê de jî zêde bibin.

Yek ji taybetmendiyên balkêş ên amûrê piştgirîya çêkirî ya nexşeyên Helm e, lê yek ji kêmasiyan nebûna metrîkên performansa serîlêdanê ye.

Taybetmendiyên sereke yên Kubernetic:

  • Nîşandana rehet a rewşa komê. Yek ekran ji bo dîtina hemî tiştên komê yên têkildar û girêdanên wan; Rewşa amade sor/kesk ji bo hemî tiştan; moda dîtina statûya komê bi nûvekirinên statûya rast-ê re.
  • Bişkojkên çalakiya bilez ji bo jêbirin û pîvandina serîlêdanê.
  • Piştgiriya ji bo operasyona pir-kluster.
  • Karê hêsan bi navên navan re.
  • Piştgiriya ji bo nexşeyên Helm û depoyên Helm (tevî yên taybet). Sazkirin û birêvebirina nexşeyan di navgîniya malperê de.

Mesrefa heyî ya hilberê ji bo karanîna wê ji hêla kesek ve ji bo her hejmarek nav û koman yek carî dravdanek 30 euro ye.

4. Kubevious

  • malpera;
  • Pêşkêşkirin;
  • depo (~ 500 stêrkên GitHub);
  • Lîsans: Apache 2.0
  • Bi kurtasî: "Kubevious komên Kubernetes, veavakirina serîlêdanê, û xuyangiyê di statûya serîlêdanê de ewledar û hêsan dike."

Pêşniyara GUI-yên ji bo Kubernetes

Fikra projeyê ev e ku amûrek were çêkirin ku ji bo analîzkirin û verastkirina mîhengên serîlêdanê yên ku di komekê de hatine bicîh kirin hatine çêkirin. Nivîskar di serî de li ser pêkanîna van taybetmendiyan sekinîn, tiştên gelemperî ji bo paşê hiştin.

Taybetmendî û fonksiyonên sereke yên Kubevious:

  • Komê bi rengek serîlêdanê-navendî temaşe bikin: Tiştên bi hev ve girêdayî di navberê de di nav hiyerarşiyekê de têne kom kirin.
  • Bi dîtbarî ve girêdayîbûna di mîhengan de û encamên cascade yên guhertinên wan nîşan bidin.
  • Çewtiyên veavakirina komê nîşan dide: bikaranîna çewt a etîketan, portên wendabûyî, hwd. (Bi awayê, heke hûn bi vê taybetmendiyê re eleqedar in, bala xwe bidinê Polarisli ser ku em berê nivîsandiye.)
  • Ji bilî xala berê, tespîtkirina konteynerên potansiyel xeternak heye, ango. xwedî gelek îmtiyaz (taybet hostPID, hostNetwork, hostIPC, lêkirin docker.sock hwd).
  • Pergalek lêgerîna komê ya pêşkeftî (ne tenê bi navên tiştan, lê di heman demê de ji hêla taybetmendiyên wan ve jî).
  • Amûrên ji bo plansazkirina kapasîteyê û xweşbînkirina çavkaniyê.
  • "Makîneya demê" ya çêkirî (qabiliyeta dîtina guhertinên berê yên di veavakirina tiştan de).
  • Birêvebirina RBAC bi karanîna kurteya tabloyek bi hev ve girêdayî ji Roles, RoleBindings, ServiceAccounts.
  • Tenê bi yek komê re dixebite.

Proje xwedan dîrokek pir kurt e (berdana yekem di 11ê Sibata 2020-an de pêk hat) û wusa dixuye ku di pêşkeftinê de serdemek aramî an hêdîbûnek heye. Ger guhertoyên berê pir caran hatin berdan, wê hingê serbestberdana herî dawî (v0.5 15ê Avrêl, 2020) li paş leza destpêkê ya pêşveçûnê ma. Dibe ku ev ji ber hejmarek piçûk a beşdaran be: di dîroka depoyê de tenê 4 ji wan hene, û hemî xebata rastîn ji hêla yek kesan ve tê meşandin.

5. Kubewise

  • Rûpelê projeyê;
  • Lîsans: xwedan (dê bibe Çavkaniya Vekirî);
  • Bi kurtasî: "Ji bo Kubernetes xerîdarek hêsan, pir-platform."

Pêşniyara GUI-yên ji bo Kubernetes

Hilberek nû ji VMware, bi eslê xwe wekî beşek ji hackathonek navxweyî (di Hezîrana 2019-an de) hatî afirandin. Li ser komputerek kesane hatî saz kirin, li ser bingehê dixebite Electron (ji hêla Linux, macOS û Windows ve tê piştgirî kirin) û kubectl v1.14.0 an nûtir hewce dike.

Taybetmendiyên sereke yên Kubewise:

  • Têkiliya navberê bi hebûnên Kubernetes ên ku herî gelemperî têne bikar anîn: nod, navan, hwd.
  • Piştgiriya gelek pelên kubeconfig ji bo komên cûda.
  • Termînala bi şiyana danîna guhêrbarek jîngehê KUBECONFIG.
  • Hilberîna pelên kubeconfigê yên xwerû ji bo cîhek navekî diyarkirî.
  • Taybetmendiyên ewlehiyê yên pêşkeftî (RBAC, şîfre, hesabên karûbar).

Heya nuha proje tenê yek serbestberdan heye - guhertoya 1.1.0 di 26ê çiriya paşîna (November) 2019ê de. Wekî din, nivîskaran plan kirin ku tavilê wê wekî Çavkaniya Vekirî derxînin, lê ji ber pirsgirêkên navxweyî (ne bi pirsgirêkên teknîkî ve girêdayî ne) wan nekarî vê yekê bikin. Ji Gulana 2020-an pê ve, nivîskar li ser berdana din dixebitin û divê di heman demê de pêvajoya çavkaniya vekirî bidin destpêkirin.

6. OpenShift Konsolê

Pêşniyara GUI-yên ji bo Kubernetes

Tevî vê rastiyê ku ev navbeynkariya webê beşek ji belavkirina OpenShift e (li wir ew bi kar tê saz kirin operator taybet), nivîskar pêşkêş kirine şiyana sazkirin/bikaranîna wê di sazkirinên birêkûpêk (vanilla) Kubernetes de.

OpenShift Console ji bo demek dirêj ve pêşve çûye, ji ber vê yekê gelek fonksiyonên xwe vekiriye. Ka em behsa yên sereke bikin:

  • Nêzîkatiyek hevpar a navrûyê - du "perspektîf" ji kapasîteyên ku di Konsolê de hene: ji bo rêvebiran û ji bo pêşdebiran. Awa Perspektîfa Developer hêmanan bi rengek ku ji pêşdebiran re (ji hêla serîlêdanê) ve tê fam kirin kom dike û navbeynkariyê li ser çareserkirina peywirên tîpîk ên wekî bicîhkirina serîlêdanan, şopandina statûya çêkirinê / danînê, û tewra guheztina kodê bi Eclipse Che re disekine.
  • Karûbarên kar, torê, hilanîn, mafên gihîştinê birêve bibin.
  • Veqetandina mentiqî ya ji bo barkêşên proje û serîlêdanê. Di yek ji weşanên herî dawî de - v4.3 - xuya bûn taybetî Tabloya projeyê, Daneyên asayî (hejmar û statûya bicihkirinê, pod, hwd.; xerckirina çavkaniyê û pîvanên din) di çarçoveyek projeyan de nîşan dide.
  • Nîşandana nûvekirî ya di wextê rast a rewşa komê û guhertinên (bûyerên) ku tê de qewimîne; dîtina têketin.
  • Daneyên çavdêriyê li ser bingeha Prometheus, Alertmanager û Grafana bibînin.
  • Birêvebirên operatorên ku tê de têne temsîl kirin OperatorHub.
  • Avahiyên ku bi riya Docker-ê ve têne rêve kirin (ji depoyek diyarkirî ya bi Dockerfile re) S2I an karûbarên derveyî yên keyfî.

NB: Me yên din li berhevdanê zêde nekir Dabeşkirina Kubernetes (mînak, pir kêmtir navdar Kubesphere): Tevî vê rastiyê ku pêwendiya grafîkî ya di wan de dikare pir pêşkeftî be, ew bi gelemperî wekî parçeyek yekbûyî ya pergalek mezin tê. Lêbelê, heke hûn difikirin ku hin çareseriyên ku di sazkirina vanilla K8s de bi tevahî fonksiyonel in winda ne, di şîroveyan de ji me re agahdar bikin.

Xelat

1. Portainer li ser Kubernetes di beta de

  • malpera;
  • depo (~ 100 stêrkên GitHub);
  • Lîsans: Zlib(?) (eynî projeya dêûbav).

Projeyek ji tîmê Portainer, ku ji bo xebata bi Docker re navbeynkariya populer a bi heman navî pêş xist. Ji ber ku proje di qonaxek destpêkê ya pêşveçûnê de ye (guhertoya beta ya yekem û yekane derket 16 Avrêl, 2020), me taybetmendiyên wê nenirxand. Lêbelê, dibe ku ew ji gelek kesan re eleqedar be: heke ev wekî we xuya dike, pêşveçûnê bişopînin.

2. IcePanel

  • malpera;
  • Lîsans: xwedan;
  • Bi kurtasî: "Edîtorê Visual Kubernetes."

Pêşniyara GUI-yên ji bo Kubernetes

Vê serîlêdana sermaseya ciwan armanc dike ku çavkaniyên Kubernetes di wextê rast de bi navgînek drag & drop sade xuya bike û birêve bibe. Tiştên ku niha têne piştgirî kirin Pod, Karûbar, Deployment, StatefulSet, PersistentVolume, PersistentVolumeClaim, ConfigMap û Secret in. Ew soz didin ku di demek nêzîk de piştgiriya Helm zêde bikin. Dezawantajên sereke ev e ku kod girtî ye (ew tê payîn vekirina "bi rengekî") û nebûna piştgirîya Linux (heta nuha tenê guhertoyên ji bo Windows û macOS-ê hene, her çend ev jî bi îhtîmalek tenê meseleyek dem e).

3.k9s

  • malpera;
  • Xwepişanî;
  • depo (~ 7700 stêrkên GitHub);
  • Lîsans: Apache 2.0;
  • Bi kurtasî: "Navberek konsolê ya Kubernetes ku dihêle hûn komika xwe bi şêwazê rêvebirinê bikin."

Pêşniyara GUI-yên ji bo Kubernetes

Vebijêrk tenê di beşa bonus ya vekolînê de bû ji ber vê yekê ku ew GUI-ya konsolê pêşkêşî dike. Lêbelê, nivîskaran bi rastî herî zêde ji termînalê kişandin, ne tenê navgînek hêsan, lê di heman demê de 6 mijarên pêşwext, û pergalek pêşkeftî ya kurtebirên klavyeyê û navên fermanan pêşkêşî dikin. Nêzîkatiya wan a berbiçav tenê bi xuyangê re sînordar nebû: kapasîteyên k9-an bi dilşewatî bandorker in: birêvebirina çavkaniyan, nîşandana rewşa komê, nîşandana çavkaniyan bi nêrînek hiyerarşîk bi girêdayîbûnê, dîtina têketin, piştgirîkirina RBAC, berfirehkirina kapasîteyên bi pêvekan... Hemî ev bi dilê civata berfireh a K8s bû: hejmar Projeya stêrka GitHub hema hema bi qasî Dashboarda fermî ya Kubernetes baş e!

4. Panelên kontrola serîlêdanê

Û di dawiya lêkolînê de - mini-kategoriyek cuda. Ew du navgînên malperê ne ji bo rêveberiya tevlihev a komên Kubernetes, lê ji bo birêvebirina tiştê ku di wan de hatî bicîh kirin hatine çêkirin.

Wekî ku hûn dizanin, yek ji amûrên herî gihîştî û berbelav ji bo bicîhkirina sepanên tevlihev li Kubernetes Helm e. Di heyama hebûna wê de, gelek pakêt (grafikên Helm) ji bo bicîhkirina hêsan kom bûne gelek sepanên populer. Ji ber vê yekê, pir mentiqî ye ku dê amûrên dîtbar ên guncan xuya bibin ku ji bo birêvebirina çerxa jiyanê ya nexşeyan bibin alîkar.

4.1. Monocular

  • depo (1300+ stêrkên GitHub);
  • Lîsans: Apache 2.0;
  • Bi kurtasî: "Serlêdana malperê ji bo lêgerîn û vedîtina nexşeyên Helm li ser gelek depoyan. Ji bo projeya Helm hub wekî bingehek xizmet dike."

Pêşniyara GUI-yên ji bo Kubernetes

Ev pêşkeftina ji nivîskarên Helm-ê li Kubernetes hatî saz kirin û di nav yek komê de dimeşe, peywira hatî peywirdarkirin pêk tîne. Lêbelê, niha proje bi tevahî pêş nakeve. Armanca wê ya sereke piştgirîkirina hebûna Helm Hub e. Ji bo hewcedariyên din, nivîskar Kubeapps (li jêr binêre) an Red Hat Automation Broker (beşek ji OpenShift, lê di heman demê de êdî nayê pêşve xistin) pêşniyar dikin.

4.2. Kubeapps

  • malpera;
  • Pêşkêşkirin;
  • depo (~ 2100 stêrkên GitHub);
  • Lîsans: Apache 2.0
  • Bi kurtî: "Pîsala serîlêdana we ji bo Kubernetes."

Pêşniyara GUI-yên ji bo Kubernetes

Hilberek ji Bitnami, ku di heman demê de di komek Kubernetes de hatî saz kirin, lê di baldariya xweya destpêkê ya li ser xebata bi depoyên taybet de ji Monocular cûda dibe.

Taybetmendî û fonksiyonên sereke yên Kubeapps:

  • Nexşeyên Helm ji depoyan bibînin û saz bikin.
  • Serîlêdanên Helm-bingeha ku li ser komê hatine saz kirin kontrol bikin, nûve bikin û jêbirin.
  • Piştgiriya xebata bi depoyên nexşeya xwerû û taybet re (Piştgiriya ChartMuseum û JFrog Artifactory).
  • Karûbarên derveyî bibînin û bixebitin - ji Kataloga Karûbar û Brokerên Karûbar.
  • Weşandina serîlêdanên sazkirî bi karanîna mekanîzmaya Girêdanên Kataloga Karûbarê.
  • Piştgiriya ji bo verastkirin û veqetandina mafan bi karanîna RBAC.

Tabloya dawî

Li jêr tabloyek kurtahî heye ku tê de me hewl da ku em kapasîteyên sereke yên navbeynkariya dîtbarî ya heyî kurt bikin û berhev bikin da ku berhevokê hêsan bikin:

Pêşniyara GUI-yên ji bo Kubernetes
(Guhertoya serhêl a tabloyê di Google Docs de peyda dibe.)

encamê

Têkiliyên grafîkî yên ji bo Kubernetes cîhek taybetî û ciwan in. Lêbelê, ew pir çalak pêş dikeve: hûn dikarin jixwe hem çareseriyên pir gihîştî û hem jî yên pir ciwan ên ku hîn jî cîhê mezinbûnê heye bibînin. Ew ji cûrbecûr serîlêdanan re mijûl dibin, taybetmendî û xuyangan pêşkêşî hema hema her tama xwe dikin. Em hêvî dikin ku ev vekolîn dê ji we re bibe alîkar ku hûn amûra ku çêtirîn li gorî hewcedariyên weya heyî ye hilbijêrin.

PS

Sipas ji were kvaps ji bo daneyên OpenShift Konsola ji bo tabloya berhevdanê!

Li ser bloga me jî bixwînin:

Source: www.habr.com

Add a comment