Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Catetan. narjamahkeun.: Panulis bahan aslina nyaeta Henning Jacobs ti Zalando. Anjeunna nyiptakeun antarmuka wéb énggal pikeun damel sareng Kubernetes, anu diposisikan salaku "kubectl pikeun wéb." Naha proyék Open Source anyar muncul sareng kriteria naon anu henteu kapendak ku solusi anu aya - baca tulisanna.

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Dina tulisan ieu, kuring marios rupa-rupa antarmuka wéb Kubernetes open source, netepkeun syarat kuring pikeun UI universal, sareng ngajelaskeun naha kuring ngembangkeun. Kubernetes WebView - antarbeungeut anu dirarancang pikeun ngagampangkeun ngadukung sareng ngungkulan sababaraha klaster sakaligus.

Paké kasus

Di Zalando kami ngalayanan sajumlah ageung pangguna Kubernetes (900+) sareng klaster (100+). Aya sababaraha kasus pamakean umum anu bakal nguntungkeun tina alat wéb khusus:

  1. komunikasi jeung kolega pikeun rojongan;
  2. ngaréspon kana kajadian sareng nalungtik panyababna.

sokongan

Dina pangalaman abdi, komunikasi rojongan mindeng kasampak kawas kieu:

— Pitulung, jasa kami XYZ henteu sayogi!
— Naon anu anjeun tingali nalika anjeun ngalaksanakeun kubectl describe ingress ...?

Atanapi anu sami pikeun CRD:

- Abdi gaduh masalah sareng jasa idéntifikasi...
- Naon anu ngahasilkeun paréntah? kubectl describe platformcredentialsset ...?

Komunikasi sapertos kitu biasana dugi ka ngalebetkeun sababaraha variasi paréntah kubectl pikeun ngaidéntifikasi masalah. Hasilna, duanana pihak dina paguneman kapaksa terus-terusan pindah antara terminal jeung web obrolan, ditambah aranjeunna niténan kaayaan béda.

Ku kituna, abdi hoyong Kubernetes web frontend pikeun ngidinan handap:

  • pamaké bisa Tumbu bursa jeung niténan hal anu sarua;
  • bakal nulungan nyingkahan kasalahan manusa di rojongan: contona, logging kana klaster salah dina garis paréntah, typos dina paréntah CLI, jsb;
  • bakal ngidinan ngahasilkeun pintonan anjeun sorangan pikeun ngirim ka kolega, nyaéta, tambahkeun kolom tag, nunjukkeun seueur jinis sumber dina hiji halaman;
  • Ideally, alat web ieu kudu ngidinan Anjeun pikeun nyetél "jero" numbu ka bagian husus tina YAML (Contona, nunjukkeun parameter anu salah anu nyababkeun gagal).

Respon jeung analisis kajadian

Ngarespon kana insiden infrastruktur merlukeun kasadaran situasional, kamampuhan pikeun assess dampak, sarta néangan pola dina klaster. Sababaraha conto kahirupan nyata:

  • A jasa produksi kritis ngabogaan masalah jeung anjeun kudu manggihan sakabeh sumberdaya Kubernetes ku ngaran dina sakabéh klasterpikeun troubleshoot;
  • titik mimiti ragrag nalika skala jeung anjeun peryogi manggihan sakabeh pods kalawan status "Pending" dina sakabéh klasterpikeun meunteun lingkup masalah;
  • pangguna individu ngalaporkeun masalah sareng DaemonSet anu disebarkeun di sadaya klaster sareng kedah terang Naha masalahna total?.

Solusi standar kuring dina kasus sapertos kitu for i in $clusters; do kubectl ...; done. Jelas, kasebut nyaéta dimungkinkeun pikeun ngamekarkeun alat nu nyadiakeun kamampuhan sarupa.

Antarbeungeut wéb Kubernetes anu aya

Dunya open source tina antarmuka wéb pikeun Kubernetes henteu ageung pisan *, janten kuring nyobian ngumpulkeun langkung seueur inpormasi nganggo Twitter:

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

*Penjelasan kuring pikeun jumlah kawates panganteur wéb pikeun Kubernetes: jasa awan sareng padagang Kubernetes biasana nawiskeun payuneunana nyalira, janten pasar pikeun UI Kubernetes gratis "alus" relatif leutik.

Ngaliwatan tweet kuring diajar ngeunaan K8Dash, Kubernator и oktan. Hayu urang tingali aranjeunna sareng solusi Open Source anu sanés, hayu urang cobian ngartos naon éta.

K8Dash

"K8Dash mangrupikeun cara pangbasajanna pikeun ngatur klaster Kubernetes."

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

K8Dash Sigana saé sareng karasa gancang, tapi ngagaduhan sababaraha kalemahan pikeun kasus pamakean anu didaptarkeun di luhur:

  • Gawéna ngan dina wates hiji klaster.
  • Asihan sareng nyaring mungkin, tapi henteu gaduh permalink.
  • Henteu aya dukungan pikeun Definisi Sumber Daya Khusus (CRD).

Kubernator

"Kubernator mangrupikeun UI alternatif pikeun Kubernetes. Beda sareng Dasbor Kubernetes tingkat luhur, éta nyayogikeun kontrol tingkat rendah sareng visibilitas anu saé kana sadaya objék dina kluster kalayan kamampuan nyiptakeun anu énggal, ngédit, sareng ngabéréskeun konflik. Janten aplikasi sisi klien sadayana (sapertos kubectl), éta henteu meryogikeun backend salian ti server API Kubernetes sorangan, sareng ogé ngahormatan aturan aksés klaster.

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Ieu pedaran geulis akurat Kubernator. Hanjakal, éta lacks sababaraha fitur:

  • Ngalayanan ngan hiji klaster.
  • Henteu aya mode tampilan daptar (nyaéta, anjeun moal tiasa ningalikeun sadaya pods kalayan status "Pending").

Dasbor Kubernetes

"Dasbor Kubernetes mangrupikeun antarmuka wéb universal pikeun klaster Kubernetes. Hal ieu ngamungkinkeun pamaké pikeun ngatur jeung troubleshoot aplikasi ngajalankeun dina klaster, kitu ogé ngatur klaster sorangan.

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Hanjakal, Dasbor Kubernetes henteu leres-leres ngabantosan dukungan kuring sareng kagiatan réspon kajadian sabab éta:

  • euweuh Tumbu permanén, contona nalika kuring nyaring sumberdaya atawa ngarobah urutan sortir;
  • Teu aya cara anu gampang pikeun nyaring ku status - contona, tingali sadaya pods kalayan status "Pending";
  • ngan hiji klaster dirojong;
  • CRDs teu dirojong (fitur ieu dina ngembangkeun);
  • teu aya kolom khusus (sapertos kolom anu dilabélan ku jinis kubectl -L).

Témbongkeun Operasional Kubernetes (kube-ops-view)

"System Dashboard panitén pikeun K8s Kluster Spasi."

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

У Témbongkeun Operasional Kubernetes Pendekatan anu béda-béda: alat ieu ngan ukur nunjukkeun titik kluster sareng pods nganggo WebGL, tanpa detil objék tékstual. Ieu gede pikeun Tinjauan rusuh ngeunaan kaséhatan klaster urang (nu pods ragrag?) *, Tapi teu cocog pikeun rojongan tur kasus pamakéan respon kajadian ditétélakeun di luhur.

* Catetan. narjamahkeun.: Dina rasa ieu, Anjeun ogé bisa jadi kabetot dina plugin urang grafana-statusmap, nu urang ngobrol ngeunaan leuwih jéntré dina artikel ieu.

Laporan Sumberdaya Kubernetes (kube-resource-report)

"Kumpulkeun pamundut sumberdaya kluster pod sareng Kubernetes, bandingkeun sareng konsumsi sumberdaya, sareng ngahasilkeun HTML statik."

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Laporan Sumberdaya Kubernetes dibangkitkeun laporan HTML statik dina pamakéan sumberdaya sarta distribusi ongkos sakuliah tim / aplikasi dina klaster. Laporan éta rada kapaké pikeun ngadukung sareng réspon kajadian sabab ngamungkinkeun anjeun gancang mendakan kluster dimana aplikasina disebarkeun.

Catetan. narjamahkeun.: Ladenan sareng alat ogé tiasa mangpaat dina ningali inpormasi ngeunaan alokasi sumber daya sareng biayana diantara panyadia awan Kubecost, nu urang marios nembe diterbitkeun.

oktan

"Platform wéb éksténsif pikeun pamekar anu dirancang pikeun masihan pamahaman anu langkung ageung ngeunaan pajeulitna klaster Kubernetes."

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

oktan, dijieun ku VMware, mangrupakeun produk anyar nu kuring diajar ngeunaan rélatif anyar. Kalayan pitulung na, éta merenah pikeun ngajajah klaster dina mesin lokal (malah aya visualizations), tapi alamat isu rojongan tur respon kajadian ngan ka extent kawates. Kelemahan Octant:

  • Taya pilarian klaster.
  • Gawéna ukur dina mesin lokal (teu nyebarkeun ka klaster a).
  • Teu tiasa nyortir/nyaring objék (ngan pamilih labél anu dirojong).
  • Anjeun teu bisa nangtukeun kolom custom.
  • Anjeun teu bisa daptar objék dumasar namespace.

Kuring ogé ngagaduhan masalah sareng stabilitas Octant sareng klaster Zalando: dina sababaraha CRD anjeunna ragrag.

Ngawanohkeun Kubernetes Web View

"kubectl pikeun wéb".

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)

Saatos analisa pilihan antarmuka anu sayogi pikeun Kubernetes, kuring mutuskeun pikeun nyiptakeun anu énggal: Kubernetes WebView. Barina ogé, kanyataanna, kuring ngan butuh sakabeh kakuatan kubectl dina web, nyaéta:

  • kasadiaan sadaya operasi (baca wungkul) nu pamaké resep ngagunakeun kubectl;
  • sadaya URL kedah permanén sareng ngagambarkeun halaman dina bentuk aslina supados kolega tiasa ngabagikeunana sareng dianggo dina alat anu sanés;
  • rojongan pikeun sakabéh objék Kubernetes, nu bakal ngidinan Anjeun pikeun ngajawab sagala jenis masalah;
  • béréndélan sumberdaya kedah tiasa diunduh kanggo padamelan salajengna (dina hamparan, alat CLI sapertos grep) jeung neundeun (contona, pikeun postmortems);
  • rojongan pikeun milih sumberdaya ku labél (sarupa jeung kubectl get .. -l);
  • kamampuhan pikeun nyieun daptar gabungan rupa-rupa sumberdaya (sarupa jeung kubectl get all) pikeun meunangkeun gambaran operasional umum diantara kolega (contona, salila respon kajadian);
  • kamampuhan pikeun nambahkeun tumbu jero pinter custom kana parabot lianna kayaning dashboards, loggers, pendaptaran aplikasi, jsb. pikeun ngagampangkeun ngungkulan / ngarengsekeun kasalahan sareng ngaréspon kana kajadian;
  • Frontend kedah sasederhana mungkin (HTML murni) pikeun ngahindarkeun masalah acak, sapertos JavaScript beku;
  • dukungan pikeun sababaraha klaster pikeun nyederhanakeun interaksi nalika konsultasi jarak jauh (contona, pikeun nginget ngan hiji URL);
  • Upami mungkin, analisis situasional kedah disederhanakeun (contona, kalayan tautan pikeun ngaunduh sumber pikeun sadaya klaster/spasi ngaran);
  • kasempetan tambahan pikeun nyieun Tumbu fléksibel tur panyorot informasi téks, contona, ku kituna anjeun bisa nunjuk kolega ka bagian husus dina pedaran sumberdaya (garis dina YAML);
  • kamampuhan pikeun ngaropea kana sarat hiji klien husus, contona, ngidinan Anjeun pikeun nyieun témplat tampilan husus pikeun CRDs, pintonan tabel sorangan, sarta ngarobah gaya CSS;
  • alat pikeun éksplorasi salajengna dina garis paréntah (contona, nunjukkeun paréntah lengkep kubectl, siap disalin);

Saluareun tugas direngsekeun dina Kubernetes Web View (non-gol) tetep:

  • abstraksi objék Kubernetes;
  • manajemén aplikasi (contona, manajemén deployment, Helm grafik, jsb);
  • operasi nulis (kudu dilakukeun ngaliwatan aman CI / CD jeung / atawa parabot GitOps);
  • panganteur geulis (JavaScript, téma, jsb);
  • visualisasi (tingali kube-ops-view);
  • analisis biaya (tingali kube-sumberdaya-laporan).

Kumaha Kubernetes Web View ngabantosan dukungan sareng réspon kajadian?

sokongan

  • Sadaya tautan permanén, anu matak ngagampangkeun pikeun tukeur inpormasi sareng kolega.
  • Anjeun tiasa nyiptakeun gagasan anjeun, Contona, mintonkeun sadaya Deployments na pods kalawan labél husus dina dua klaster husus (sababaraha ngaran klaster jeung tipe sumberdaya bisa dieusian dina link, dipisahkeun ku koma).
  • Anjeun tiasa ngarujuk kana garis husus dina file YAML objék, nunjukkeun masalah poténsial dina spésifikasi objék.

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)
Pilarian dumasar klaster dina Kubernetes Web View

Tanggapan Kajadian

  • Pilarian global (search global) ngidinan Anjeun pikeun néangan objék dina sakabéh klaster.
  • Daptar Views bisa mintonkeun sadaya objék jeung kaayaan nu tangtu / kolom dina sakabéh klaster (Contona, urang kudu manggihan sakabeh pods kalawan status "Pending").
  • Daptar objék tiasa diunduh dina format nilai dipisahkeun tab (TSV) pikeun analisis engké.
  • Tumbu éksternal customizable Ngidinan anjeun ngalih ka dasbor sareng alat anu sanés.

Pengumuman Kubernetes Web View (sareng tinjauan ringkes ngeunaan UI wéb sanés pikeun Kubernetes)
Kubernetes Web View: daptar pods kalayan status "Pending" dina sadaya klaster

Upami anjeun hoyong nyobian Kubernetes Web View, kuring nyarankeun parios dokuméntasi atanapi tingali demo hirup.

Tangtosna, antarbeungeutna tiasa langkung saé, tapi pikeun ayeuna Kubernetes Web View mangrupikeun alat pikeun "pamaké canggih" anu henteu isin tina ngamanipulasi jalur URL sacara manual upami diperyogikeun. Upami anjeun gaduh koméntar / tambihan / saran, mangga ngahubungi sareng abdi dina Twitter!

Tulisan ieu mangrupikeun sajarah ringkes latar tukang anu nyababkeun nyiptakeun Kubernetes Web View. Langkung seueur bakal nuturkeun! (Catetan. narjamahkeun.: Éta kudu diperkirakeun dina blog pangarang.)

PS ti penerjemah

Baca ogé dina blog urang:

sumber: www.habr.com

Tambahkeun komentar