Барои кори мукаммал бо система, донистани утилитаҳои сатри фармон муҳим аст: дар мавриди Kubernetes, ин kubectl аст. Аз тарафи дигар, интерфейсҳои графикии хуб тарҳрезишуда ва оқилона метавонанд иҷро кунандоаксар вазифахои мукаррарй ва барои кори системахо имкониятхои иловагй мекушоянд.
Соли гузашта тарчумаи онро нашр кардем
Вақте ки мо ба бисёр кластерҳои Kubernetes андозаҳои гуногун хизмат мерасонем, мо инчунин манфиатдорем, ки ба мизоҷони худ асбоби визуалӣ пешниҳод кунем. Ҳангоми интихоби интерфейси мувофиқ, хусусиятҳои зерин барои мо калид буданд:
- дастгирии тафриқаи ҳуқуқҳои истифодабарандагон (RBAC);
- визуализатсияи фазои ном ва ибтидоии стандартии Kubernetes (Deployment, StatefulSet, Service, Cronjob, Job, Ingress, ConfigMap, Secret, PVC);
- дастрасӣ ба сатри фармон дар дохили pod;
- дидани гузоришҳо;
- дидани ҳолати pods (
describe status
); - бартараф кардани қубурҳо.
Функсияҳои дигар, ба монанди дидани захираҳои истеъмолшуда (дар контексти pods / контроллерҳо / фазои номҳо), эҷод / таҳрири ибтидоии K8s, дар ҷараёни кори мо мувофиқ нестанд.
Мо баррасиро бо панели классикии Kubernetes оғоз мекунем, ки стандарти мост. Азбаски ҷаҳон дар як ҷо намеистад (яъне ин маънои онро дорад, ки Кубернетес GUI-ҳои нав дорад), мо инчунин дар бораи алтернативаҳои кунунии он сӯҳбат хоҳем кард ва ҳама чизро дар ҷадвали муқоисавӣ дар охири мақола ҷамъбаст мекунем.
NB: Дар барраси, мо бо он қарорҳое, ки қаблан баррасӣ шуда буданд, такрор намекунем
1. Панели дастгоҳи Kubernetes
-
Саҳифаи ҳуҷҷатгузорӣ ; -
анбор (8000+ ситораҳои GitHub); - Иҷозатнома: Apache 2.0;
- Хулоса: "Интерфейси универсалӣ барои кластерҳои Kubernetes. Он ба корбарон имкон медиҳад, ки барномаҳоеро, ки дар кластер кор мекунанд, идора ва бартараф кунанд ва инчунин худи кластерро идора кунанд.”
Ин як панели умумист, ки аз ҷониби муаллифони Кубернетес дар ҳуҷҷатҳои расмӣ фаро гирифта шудаанд (аммо
Дар байни хусусиятҳои асосии панели Kubernetes:
- Навигатсия: дидани объектҳои асосии K8s дар заминаи номҳо.
- Агар шумо ҳуқуқҳои администратор дошта бошед, панел гиреҳҳо, фазои номҳо ва Ҳаҷмҳои доимиро нишон медиҳад. Барои гиреҳҳо омор дар бораи истифодаи хотира, протсессор, тақсимоти захираҳо, ченакҳо, ҳолат, рӯйдодҳо ва ғайра дастрас аст.
- Барномаҳои дар фазои ном ҷойгиршударо аз рӯи намуди онҳо (Deployment, StatefulSet ва ғайра), муносибатҳои байни онҳо (ReplicaSet, Horizontal Pod Autoscaler), омор ва иттилооти умумӣ ва фардӣ бубинед.
- Хидматҳо ва воридшавӣ, инчунин муносибатҳои онҳоро бо подкӯҳҳо ва нуқтаҳои ниҳоӣ бубинед.
- Дидани объектҳо ва анборҳои файл: Ҳаҷми доимӣ ва даъвои ҳаҷми доимӣ.
- ConfigMap ва Secretро бинед ва таҳрир кунед.
- Дидани гузоришҳо.
- Дастрасии сатри фармон дар контейнерҳо.
Камбудии назаррас (аммо, на барои мо) дар он аст, ки дастгирии кори бисёр кластер вуҷуд надорад. Лоиҳа аз ҷониби ҷомеа фаъолона таҳия карда мешавад ва хусусиятҳои мувофиқро бо нашри версияҳои нав ва мушаххасоти API Kubernetes нигоҳ медорад: версияи охирини панел
2. Линза
Лоиҳа ҳамчун муҳити мукаммали рушд (IDE) барои Kubernetes ҷойгир шудааст. Ғайр аз он, он барои кор бо кластерҳои зиёд ва шумораи зиёди подкҳо, ки дар онҳо кор мекунанд, оптимизатсия карда шудааст (дар 25 pod санҷида шудааст).
Хусусиятҳо/қобилиятҳои асосии Линза:
- Замимаи мустақил, ки насби чизе дар дохили кластерро талаб намекунад (аниқтараш, Prometheus барои гирифтани ҳама ченакҳо талаб карда мешавад, аммо насби мавҷуда низ метавонад барои ин истифода шавад). Насби "асосӣ" дар компютери шахсии Linux, macOS ё Windows анҷом дода мешавад.
- Идоракунии бисёр кластер (садҳо кластер дастгирӣ карда мешавад).
- Визуалии ҳолати кластер дар вақти воқеӣ.
- Графикҳои истифодаи захираҳо ва тамоюлҳо бо таърих дар асоси Prometheus дарунсохт.
- Дастрасӣ ба сатри фармони контейнерҳо ва гиреҳҳои кластер.
- Дастгирии пурра барои Kubernetes RBAC.
Нашри ҷорӣ -
Линза дуюмин лоиҳаи маъмултарин дар GitHub аз категорияи GUI барои Kubernetes аст, ки танҳо худи Kubernets Dashboard -ро "гум мекунад". Ҳама ҳалли дигари кушодаасос, ки аз категорияи CLI* нестанд, аз маъруфияти хеле пасттаранд.
* Дар бораи K9s дар қисми бонуси барраси нигаред.
3. Кубернетик
-
сомона ; -
Намоиш ; Репозиторий (танҳо ҳуҷҷатҳо) (200+ ситораҳои GitHub);- Иҷозатнома: моликият;
- Хулоса: "Идоракунии кластер осон шуд."
Ин як барномаи хусусиест, ки дар компютери шахсӣ насб шудааст (Linux, macOS, Windows дастгирӣ карда мешавад). Муаллифони он ваъда медиҳанд, ки пурра иваз кардани утилитаи сатри фармонро ваъда медиҳанд ва бо он - ба ёд овардани фармонҳо ва ҳатто даҳ маротиба афзоиш додани суръат лозим нест.
Яке аз хусусиятҳои ҷолиби асбоб дастгирии дарунсохт барои диаграммаҳои Helm мебошад ва яке аз нуқсонҳо ин набудани ченакҳои иҷрои барномаҳо мебошад.
Хусусиятҳои асосии Kubernetic:
- Намоиши қулайи ҳолати кластер. Як экран барои дидани ҳама объектҳои кластери алоқаманд ва вобастагии онҳо; ҳолати омодагии сурх/сабз барои ҳама объектҳо; режими дидани ҳолати кластер бо навсозиҳои ҳолати воқеӣ.
- Тугмаҳои амали зуд барои нест кардан ва миқёси барнома.
- Дастгирии амалиёти бисёр кластер.
- Кори оддӣ бо фазои номҳо.
- Дастгирии диаграммаҳои Helm ва анборҳои Helm (аз ҷумла хусусӣ). Насб ва идоракунии диаграммаҳо дар интерфейси веб.
Арзиши кунунии маҳсулот пардохти яквақта ба маблағи 30 евро барои истифодаи он аз ҷониби як шахс барои шумораи дилхоҳи номҳо ва кластерҳо мебошад.
4. Хуб
-
сомона ; -
Муаррифӣ ; -
анбор (~ 500 ситораҳои GitHub); - Литсензия: Apache 2.0
- Хулоса: "Kubevious кластерҳои Kubernetes, конфигуратсияи барномаҳо ва дидани вазъро бехатар ва осон мегардонад."
Идеяи лоиҳа эҷоди асбобест, ки барои таҳлил ва ислоҳи конфигуратсияҳои замимаҳои дар кластер ҷойгиршуда пешбинӣ шудааст. Муаллифон пеш аз ҳама ба татбиқи ин хусусиятҳо таваҷҷӯҳ карда, чизҳои умумиро барои дертар гузоштанд.
Хусусиятҳо ва вазифаҳои асосии Kubevious:
- Визуализатсияи кластер бо роҳи барномасозӣ: объектҳои алоқаманд дар интерфейс гурӯҳбандӣ карда мешаванд, ки дар иерархия ҷойгир шудаанд.
- Намоиши визуалии вобастагӣ дар конфигуратсияҳо ва оқибатҳои каскади тағйироти онҳо.
- Намоиши хатогиҳои конфигуратсияи кластер: истифодаи нодурусти тамғакоғазҳо, бандарҳои беҷавоб ва ғ. (Дар омади гап, агар шумо ба ин хусусият таваҷҷӯҳ дошта бошед, диққат диҳед
Polaris ки дар бораи он моаллакай навиштааст .) - Илова ба нуқтаи қаблӣ, ошкор кардани контейнерҳои эҳтимолан хатарнок мавҷуд аст, яъне. дорои имтиёзҳои аз ҳад зиёд (атрибутҳо
hostPID
,hostNetwork
,hostIPC
, кӯҳdocker.sock
ғайра). - Системаи пешрафтаи ҷустуҷӯ барои кластер (на танҳо аз рӯи номи объектҳо, балки аз рӯи хосиятҳои онҳо).
- Воситаҳо барои банақшагирии иқтидор ва оптимизатсияи захираҳо.
- Дарунсохти "мошини вақт" (қобилияти дидани тағйироти қаблӣ дар конфигуратсияи объектҳо).
- Идоракунии RBAC бо ҷадвали бо ҳам алоқаманди Нақшҳо, RoleBindings, ServiceAccounts.
- Танҳо бо як кластер кор мекунад.
Лоиҳа таърихи хеле кӯтоҳ дорад (нашри аввал 11 феврали соли 2020 сурат гирифт) ва ба назар чунин мерасад, ки як давраи мӯътадилшавӣ ё сустшавии рушд вуҷуд дорад. Агар версияҳои қаблӣ зуд-зуд бароварда мешуданд, пас версияи охирин (
5. Ба таври хуб
-
Саҳифаи лоиҳа ; - Иҷозатнома: хусусӣ (манбаи кушода мешавад);
- Хулоса: "Муштарии оддии бисёрплатформа барои Kubernetes."
Маҳсулоти нав аз VMware, ки дар ибтидо ҳамчун як қисми хакатони дохилӣ сохта шудааст (дар моҳи июни соли 2019). Дар компютери фардӣ насб шудааст, дар асоси он кор мекунад
Хусусиятҳои асосии Kubewise:
- Муносибати интерфейси бо объектҳои маъмултарини Kubernetes: гиреҳҳо, фазои номҳо ва ғайра.
- Дастгирии файлҳои сершумори kubeconfig барои кластерҳои гуногун.
- Терминал бо қобилияти муқаррар кардани тағирёбандаи муҳити зист
KUBECONFIG
. - Барои фазои номҳои додашуда файлҳои kubeconfig фармоишӣ эҷод кунед.
- Хусусиятҳои пешрафтаи амният (RBAC, паролҳо, ҳисобҳои хидматӣ).
То ба ҳол, лоиҳа танҳо як версия дорад
6. Консол OpenShift
-
Бахши ҳуҷҷатҳои OpenShift ; -
анбор (~ 150 ситораҳои GitHub); - Иҷозатнома: Apache 2.0;
- Дар кӯтоҳ: "UI барои кластерҳои OpenShift".
Сарфи назар аз он, ки ин веб-интерфейс як қисми тақсимоти OpenShift мебошад (он дар он ҷо бо истифода аз
OpenShift Console муддати тӯлонӣ дар таҳия қарор дошт, аз ин рӯ он дорои хусусиятҳои зиёде мебошад. Мо аз онҳо асосиро зикр мекунем:
- Муносибати муштараки интерфейс - ду "дурнамои" имкониятҳои дар Консол мавҷудбуда: барои маъмурон ва таҳиягарон. Режим дурнамои таҳиякунанда объектҳоро дар шакли фаҳмотар барои таҳиягарон (аз рӯи барномаҳо) гурӯҳбандӣ мекунад ва интерфейсро ба ҳалли чунин вазифаҳои маъмулӣ, ба монанди ҷойгиркунии барномаҳо, пайгирии ҳолати сохтан / ҷойгиркунӣ ва ҳатто таҳрир кардани код тавассути Eclipse Che равона мекунад.
- Идоракунии сарбории корӣ, шабака, нигоҳдорӣ, ҳуқуқҳои дастрасӣ.
- Ҷудокунии мантиқии сарбории корӣ ба лоиҳаҳо ва барномаҳо. Дар яке аз версияҳои охирин - v4.3 -
зоҳир шуд махсус панели лоиҳа, ки маълумоти муқаррариро (шумора ва ҳолати ҷойгиркунӣ, қадҳо ва ғ.; истеъмоли захираҳо ва дигар ченакҳо) дар як буридаи лоиҳа нишон медиҳад. - Намоиши ҳолати кластер, тағирот (ҳодисаҳое), ки дар он ба амал омадаанд, дар вақти воқеӣ нав карда мешавад; дидани гузоришҳо.
- Дидани маълумоти мониторинг дар асоси Prometheus, Alertmanager ва Grafana.
- Идоракунии оператороне, ки дар
operatorhub . - Идоракунии сохтмонҳое, ки тавассути Docker кор мекунанд (аз анбори муайяншуда бо Dockerfile),
S2I ё утилитҳои берунии худсарона.
NB: Мо дигаронро ба мукоиса зам накардаем Тақсимоти Kubernetes (масалан, хеле камтар маълум
Бонус
1. Портинер дар Кубернетес дар Бета
Лоиҳаи дастаи Porttainer, ки интерфейси машҳури ҳамон номро барои кор бо Docker таҳия кардааст. Азбаски лоиҳа дар марҳилаи аввали рушд қарор дорад (версияи аввалин ва ягонаи бета
2. IcePanel
-
сомона ; - Иҷозатнома: моликият;
- Хулоса: "Визӣ Муҳаррири Kubernetes".
Ин барномаи ҷавони мизи корӣ ҳадафи визуалӣ ва идоракунии захираҳои Kubernetes дар вақти воқеӣ бо интерфейси оддии кашолакунӣ мебошад. Объектҳои дар айни замон дастгирӣшаванда Pod, Service, Deployment, StatefulSet, PersistentVolume, PersistentVolumeClaim, ConfigMap ва Secret мебошанд. Ба қарибӣ онҳо ваъда медиҳанд, ки ба Ҳелм дастгирӣ илова мекунанд. Камбудиҳои асосӣ наздикии код мебошанд (интизор меравад
3.k9s
-
сомона ; -
Намоиш ; -
анбор (~ 7700 ситораҳои GitHub); - Иҷозатнома: Apache 2.0;
- Хулоса: "Интерфейси консол барои Kubernetes, ки ба шумо имкон медиҳад кластери худро бо услуб идора кунед."
Утилита танҳо дар қисми бонуси барраси буд, зеро он GUI консолро пешниҳод мекунад. Бо вуҷуди ин, муаллифон айнан ҳадди аксарро аз терминал фишурда, на танҳо интерфейси ба истифодабаранда, балки 6 мавзӯи пешакӣ муайяншуда ва системаи пешрафтаи миёнабурҳои клавиатура ва тахаллуси фармонро пешниҳод карданд. Муносибати ҳамаҷонибаи онҳо танҳо бо намуди зоҳирӣ маҳдуд набуд: хусусиятҳои k9s ҷолиби диққатанд: идоракунии захираҳо, нишон додани ҳолати кластер, намоиш додани захираҳо дар муаррифии иерархӣ бо вобастагӣ, дидани гузоришҳо, дастгирии RBAC, васеъ кардани қобилиятҳо тавассути плагинҳо ... Ҳамаи ин ҷолиб буд. ба ҷомеаи васеи K8s: шумораи ситораҳои GitHub лоиҳа тақрибан ба мисли панели расмии Kubernetes хубанд!
4. Панелҳои идоракунии барномаҳо
Ва дар охири барраси - як мини-категорияи алоҳида. Он ду интерфейси вебро дар бар мегирад, ки на барои идоракунии ҳамаҷонибаи кластерҳои Kubernetes, балки барои идоракунии он чизе, ки дар онҳо ҷойгир шудаанд, тарҳрезӣ шудаанд.
Тавре ки шумо медонед, яке аз воситаҳои баркамол ва паҳншуда барои ҷойгиркунии замимаҳои мураккаб дар Kubernetes Helm мебошад. Дар тӯли мавҷудияти худ, бисёр бастаҳо (диаграммаҳои Ҳелм) барои ҷойгиркунии осон ҷамъ шудаанд.
4.1. Монокула
-
анбор (1300+ ситораҳои GitHub); - Иҷозатнома: Apache 2.0;
- Хулоса: "Барномаи веб барои ҷустуҷӯ ва кашф кардани диаграммаҳои Helm дар як репозиторийҳои сершумор. Барои лоиҳаи маркази Helm ҳамчун асос хизмат мекунад."
Ин таҳияи муаллифони Helm дар Kubernetes насб шудааст ва дар як кластер кор карда, вазифаро иҷро мекунад. Аммо дар айни замон лоиха кариб тартиб дода нашудааст. Мақсади асосии он дастгирии мавҷудияти Helm Hub мебошад. Барои эҳтиёҷоти дигар, муаллифон тавсия медиҳанд, ки Kubeapps (ба поён нигаред) ё Red Hat Automation Broker (қисми OpenShift, аммо дигар таҳия карда намешаванд).
4.2. Kubeapps
сомона ;-
Муаррифӣ ; -
анбор (~ 2100 ситораҳои GitHub); - Литсензия: Apache 2.0
- Хулоса: "Панбори идоракунии барномаи шумо барои Kubernetes."
Маҳсулоти Bitnami, ки он низ дар кластери Kubernetes насб шудааст, аммо аз Monocular бо тамаркузи ибтидоии худ ба кор бо анборҳои хусусӣ фарқ мекунад.
Вазифаҳо ва хусусиятҳои асосии Kubeapps:
- Диаграммаҳои Helm-ро аз анборҳо дидан ва насб кунед.
- Барномаҳои дар кластер дар асоси Helm насбшударо тафтиш, навсозӣ ва нест кунед.
- Дастгирии анборҳои графикии фармоишӣ ва хусусӣ (Дастгирии ChartMuseum ва JFrog Artifactory).
- Намоиш ва кор бо хидматҳои беруна - аз Каталоги хидматҳо ва Брокерҳои хидматрасонӣ.
- Нашри барномаҳои насбшуда бо истифода аз механизми Bindings Catalog Service.
- Дастгирии аутентификатсия ва тақсимоти ҳуқуқҳо бо истифода аз RBAC.
Ҷадвали ҷадид
Дар зер ҷадвали ҷамъбастӣ оварда шудааст, ки дар он мо кӯшиш кардем, ки хусусиятҳои асосии интерфейсҳои визуалии мавҷударо барои осон кардани муқоиса ҷамъбаст ва ҷамъоварӣ кунем:
(Нусхаи онлайни ҷадвал
хулоса
GUI барои Kubernetes як чароғдони нисбатан мушаххас ва ҷавон мебошанд. Бо вуҷуди ин, он хеле фаъолона инкишоф меёбад: аллакай имконпазир аст, ки ҳам ҳалли хеле баркамол ва ҳам навъҳои хеле ҷавонро пайдо кунед, ки онҳо ҳанӯз ҷой доранд. Онҳо ба барномаҳои гуногун қонеъ карда, хусусиятҳо ва намуди зоҳириро пешниҳод мекунанд, ки тақрибан ба ҳар завқ мувофиқанд. Мо умедворем, ки ин барраси ба шумо дар интихоби асбобе, ки ба эҳтиёҷоти ҷории шумо мувофиқтар аст, кӯмак мекунад.
PS
сипос
Инчунин дар блоги мо хонед:
- «
Эълони Web View Kubernetes (ва шарҳи мухтасари дигар интерфейсҳои веб барои Kubernetes) »; - «
Интегратсияи панели панели Kubernetes ва корбарони GitLab »; - «
Polaris барои солим нигоҳ доштани кластерҳои Kubernetes ҷорӣ карда шудааст »; - «
kubebox ва дигар снарядҳо барои Kubernetes ".
Манбаъ: will.com