Знаёмства з Tanzu Mission Control

Сёння мы жадаем пагаварыць аб VMware Tanzu, новай лінейцы прадуктаў і паслуг, якая была анансаваная падчас леташняй канферэнцыі VMWorld. На парадку дня - адзін з самых цікавых інструментаў: Tanzu Mission Control.

Асцярожна: пад катом надзвычай шмат малюнкаў.

Знаёмства з Tanzu Mission Control

Што такое Mission Control

Як заяўляе ў сваім блогу сама кампанія, асноўная задача VMware Tanzu Mission Control – "прыўнесці парадак у кластарны хаос". Mission Control уяўляе з сябе кіраваную праз API платформу, якая дазволіць адміністратарам ужываць палітыкі да кластараў або групам кластараў і ўсталёўваць правілы бяспекі. Заснаваныя на мадэлі SaaS прылады бяспечна інтэгруюцца ў кластары Kubernetes праз агента і падтрымліваюць масу стандартных аперацый з кластарам, уключаючы аперацыі кіравання жыццёвым цыклам (разгортванне, маштабаванне, выдаленне і інш.).

У аснове ідэалогіі лінейкі Tanzu ляжыць максімальнае выкарыстанне open-source тэхналогій. Для кіравання жыццёвым цыклам кластараў Tanzu Kubernetes Grid выкарыстоўваецца Cluster API, Velero – для бэкапаў і аднаўленні, Sonobuoy – для кантролю адпаведнасці канфігурацыі кластараў Kubernetes і Contour у якасці інгрэс-кантролера.

Агульны спіс функцый Tanzu Mission Control выглядае так:

  • цэнтралізаванае кіраванне ўсімі вашымі кластарамі Kubernetes;
  • кіраванне ідэнтыфікацыяй і доступам (IAM);
  • дыягностыка і маніторынг стану кластараў;
  • кіраванне канфігурацыяй і наладамі бяспекі;
  • планаванне рэгулярных праверак стану кластара;
  • стварэнне рэзервовых копій і аднаўленне;
  • кіраванне квотамі;
  • візуалізаванае прадстаўленне ўтылізацыі рэсурсаў.

Знаёмства з Tanzu Mission Control

Чаму гэта важна

Tanzu Mission Control дапаможа бізнэсу вырашыць задачу кіравання вялікім паркам кластараў Kubernetes, размешчаных лакальна, у воблаку і ў некалькіх іншых правайдэраў. Рана ці позна любая кампанія, чыя дзейнасць завязана на IT, аказваецца вымушана падтрымліваць мноства разнастайных кластараў, размешчаных у розных правайдэраў. Кожны кластар ператвараецца ў снежны ком, якому патрэбна пісьменная арганізацыя, якая адпавядае інфраструктура, палітыкі, абарона, сістэмы маніторынгу і шматлікае іншае.

У нашы дні любы бізнэс імкнецца скараціць выдаткі і аўтаматызаваць руцінныя працэсы. А складаны IT-ландшафт відавочна не спрыяе эканоміі і канцэнтрацыі на прыярытэтных задачах. Tanzu Mission Control дае арганізацыям магчымасць працаваць з мноствам кластараў Kubernetes, разгорнутых у мноства правайдэраў, гарманізаваўшы пры гэтым аперацыйную мадэль.

Архітэктура рашэння

Знаёмства з Tanzu Mission Control

Tanzu Mission Control - гэта мультытэнантны платформа, якая прадстаўляе карыстальнікам доступ да набору гнутка наладжвальных палітык, якія можна ўжываць да кластараў і групам кластараў Kubernetes. Кожны карыстальнік прывязаны да Арганізацыі, менавіта яна з'яўляецца "коранем" рэсурсаў - груп кластараў і працоўных прастор (Workspaces).

Знаёмства з Tanzu Mission Control

Што ўмее Tanzu Mission Control

Вышэй мы ўжо коратка пералічылі спіс функцый рашэння. Давайце паглядзім, як гэта рэалізавана ў інтэрфейсе.

Адзінае прадстаўленне ўсіх кластараў Kubernetes прадпрыемствы:

Знаёмства з Tanzu Mission Control

Стварэнне новага кластара:

Знаёмства з Tanzu Mission Control

Знаёмства з Tanzu Mission Control

Кластару адразу можна прызначыць групу, і ён успадкуе зададзеныя ёй палітыкі.

Падключэнне кластара:

Знаёмства з Tanzu Mission Control

Ужо існуючыя кластары можна проста падключыць з дапамогай спецыяльнага агента.

Групоўка кластараў:

Знаёмства з Tanzu Mission Control

У Cluster groups можна групаваць кластары для ўспадкоўвання прызначаных палітык адразу на ўзроўні груп, без ручнога ўмяшання.

Працоўныя вобласці:

Знаёмства з Tanzu Mission Control

Дае магчымасць гнутка наладжваць доступы да дадатку, якое знаходзіцца ў рамках некалькіх прастор імёнаў, кластараў і хмарных інфраструктур.

Разгледзім падрабязней прынцыпы працы Tanzu Mission Control у лабараторных працах.

Лабараторная праца #1

Зразумела, дэталёва ўявіць сабе працу Mission Control і новых рашэнняў Tanzu без практыкі дастаткова складана. Для таго, каб вы маглі вывучыць асноўныя магчымасці лінейкі, VMware падаюць доступ да некалькіх лабараторным стэндам. На гэтых стэндах можна выканаць лабараторныя працы, выкарыстоўваючы пакрокавыя інструкцыі. Акрамя ўласна Tanzu Mission Control для тэсціравання і вывучэння даступныя і іншыя рашэнні. З поўным спісам лабараторных работ можна азнаёміцца на гэтай старонцы.

Для практычнага азнаямлення з рознымі рашэннямі (уключаючы невялікую "гульню" па vSAN) адводзіцца розны час. Не хвалюйцеся, гэта вельмі ўмоўныя лічбы. Напрыклад, лабу па Tanzu Mission Control пры праходжанні з дому можна "вырашаць" да 9 з паловай гадзін. Акрамя таго, нават калі таймер выйдзе, можна будзе вярнуцца і прайсці ўсё нанова.

Праходжанне лабараторнай працы #1
Для доступу да лабараторных прац спатрэбіцца акаўнт VMware. Пасля аўтарызацыі адкрыецца ўсплывальнае акно з асноўнай канвой працы. У правай частцы экрана будзе змешчана падрабязная інструкцыя.

Пасля прачытання невялікай уступнай часткі аб Tanzu вам будзе прапанавана прайсці практыку ў інтэрактыўнай сімуляцыі Mission Control.

Адкрыецца новае ўсплывальнае акно windows-машыны, і вам будзе прапанавана выканаць некалькі базавых аперацый:

  • стварыць кластар
  • наладзіць яго базавыя параметры
  • абнавіць старонку і пераканацца ў тым, што ўсё настроена карэктна
  • задаць палітыкі і зрабіць праверку кластара
  • стварыць працоўную прастору
  • стварыць прастору імёнаў
  • зноў папрацаваць з палітыкамі, кожны крок падрабязна тлумачыцца ў кіраўніцтве
  • дэма-апгрэйд кластара


Зразумела, інтэрактыўная сімуляцыя не дае дастатковай свабоды для самастойнага вывучэння: вы рухаецеся па загадзя пракладзеных распрацоўшчыкамі рэйках.

Лабараторная праца #2

Тут мы ўжо маем справу з чымсьці больш сур'ёзны. Гэтая лабараторная праца не настолькі прывязана да "рэйак", як папярэдняя і патрабуе больш уважлівага вывучэння. Прыводзіць яе тут цалкам мы не станем: дзеля эканоміі вашага часу разбяром толькі другі модуль, першы прысвечаны тэарэтычнаму аспекту працы Tanzu Mission Control. Пры жаданні вы можаце прайсці яе самастойна поўнасцю. Гэты модуль прапануе нам акунуцца ў кіраванне жыццёвым цыклам кластараў праз Tanzu Mission Control.

Нататка: лабараторныя працы Tanzu Mission Control рэгулярна актуалізуюцца і ўдакладняюцца. Калі пры праходжанні вамі лабараторнай працы нейкія экраны ці крокі будуць адрознівацца ад прыведзеных ніжэй, прытрымлівайцеся ўказанням у правай частцы экрана. Мы ж пройдземся па актуальнай на момант напісання артыкула версіі ЛР і разгледзім яе ключавыя элементы.

Праходжанне лабараторнай працы #2
Пасля працэсу аўтарызацыі ў VMware Cloud Services, запускаем Tanzu Mission Control.

Знаёмства з Tanzu Mission Control

Першы крок, прапанаваны лабараторыяй, - разгортванне кластара Kubernetes. Спачатку нам неабходна атрымаць доступ да ВМ з Ubuntu з дапамогай PuTTY. Запускаем утыліту і выбіраемы сеанс з Ubuntu.

Знаёмства з Tanzu Mission Control

Па чарзе выконваем тры каманды:

  • стварэнне кластара: kind create cluster --config 3node.yaml --name=hol
  • загрузка KUBECONFIG-файла: export KUBECONFIG="$(kind get kubeconfig-path --name="hol")"
  • выснова нод: kubectl get nodes

Знаёмства з Tanzu Mission Control

Цяпер створаны намі кластар трэба дадаць у Tanzu Mission Control. З PuTTY вяртаемся ў Chrome, пераходзім у Clusters і націскаем ATTACH CLUSTER.
З выпадальнага меню выбіраемы групу дэфолт, упісваем прапанаванае лабай імя і націскаем РЭГІСТРАЦЫЯ.

Знаёмства з Tanzu Mission Control

Капіяваны атрыманую каманду і ідзем у PuTTY.

Знаёмства з Tanzu Mission Control

Выконваем атрыманую каманду.

Знаёмства з Tanzu Mission Control

Для адсочвання прагрэсу выконваем яшчэ адну каманду: watch kubectl get pods -n vmware-system-tmc. Чакаем, пакуль ва ўсіх кантэйнераў будзе статус Праца або Завершаны.

Знаёмства з Tanzu Mission Control

Вяртаемся ў Tanzu Mission Control і націскаем VERIFY CONNECTION. Калі ўсё прайшло паспяхова, індыкатары ўсіх праверак мусяць быць зялёнымі.

Знаёмства з Tanzu Mission Control

Зараз створым новую групу кластараў і разгарнем тамака новы кластар. Ідзем у Cluster groups і націскаем NEW CLUSTER GROUP. Упісваем імя і націскаем СТВАРЫЦЬ.

Знаёмства з Tanzu Mission Control

Новы гурт адразу павінен з'явіцца ў спісе.

Знаёмства з Tanzu Mission Control

Разгарнем новы кластар: ідзем у Кластары, націскаем NEW CLUSTER і выбіраемы асацыяваную з лабараторнай працай опцыю.

Знаёмства з Tanzu Mission Control

Дадамо імя кластара, выберам прызначаную яму групу - у нашым выпадку hands-on-labs - і рэгіён дэплою.

Знаёмства з Tanzu Mission Control

Пры стварэнні кластара даступныя і іншыя опцыі, але пры праходжанні лабараторнага сэнсу іх мяняць няма. Выбіраемы патрэбную вам канфігурацыю, націскаем наступны.

Знаёмства з Tanzu Mission Control

Некаторыя параметры трэба адрэдагаваць, для гэтага націскаем Рэдагаваць.

Знаёмства з Tanzu Mission Control

Павялічым колькасць працоўных нод да двух, захаваем параметры і націснем СТВАРЫЦЬ.
У працэсе вы ўбачыце такі прагрэсбар.

Знаёмства з Tanzu Mission Control

Пасля паспяховага дэплою перад вамі будзе такая карціна. Усе чэкі павінны быць зялёнымі.

Знаёмства з Tanzu Mission Control

Цяпер нам трэба спампаваць файл KUBECONFIG, каб кіраваць кластарам з дапамогай стандартных каманд kubectl. Гэта можна зрабіць прама праз карыстацкі інтэрфейс Tanzu Mission Control. Спампоўваем файл і пераходзім да спампоўкі Tanzu Mission Control CLI націскам Клікніце тут.

Знаёмства з Tanzu Mission Control

Выбіраемы патрэбную версію і спампоўваем CLI.

Знаёмства з Tanzu Mission Control

Цяпер нам неабходна атрымаць API Token. Для гэтага пераходзім у Мой рахунак і які генеруецца новы токен.

Знаёмства з Tanzu Mission Control

Запаўняем палі і націскаем СТВАРЫЦЬ.

Знаёмства з Tanzu Mission Control

Атрыманы токен які капіюецца і націскаем Працягваючы. Адкрываем Power Shell і ўводзім каманду tmc-login, затым – токен, які мы атрымалі і скапіявалі на папярэднім кроку, а потым – Login Context Name. Выбіраемы інфармацыя логі з прапанаваных, рэгіён і olympus-default у якасці ssh-ключа.

Знаёмства з Tanzu Mission Control

Атрымліваем namespaces:kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get namespaces.

Уводзім kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get nodes, каб пераканацца, што ўсе ноды ў статусе Гатовы.

Знаёмства з Tanzu Mission Control

Цяпер у гэтым кластары нам трэба будзе разгарнуць невялікае дадатак. Зробім два разгортвання - coffee and tea - у выглядзе сэрвісаў coffee-svc і tea-svc, кожны з якіх запускае розныя вобразы - nginxdemos/hello and nginxdemos/hello:plain-text. Робіцца гэта наступным чынам.

Праз PowerShell зойдзем у загрузкі і знойдзем файл cafe-services.yaml.

Знаёмства з Tanzu Mission Control

З-за некаторых змен у API нам давядзецца яго абнавіць.

Pod Security Policies ўключаны па змаўчанні. Для запуску прыкладанняў з прывілеямі неабходна прывязаць уліковы запіс.

Ствараем прывязку: kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
Дэплоім дадатак: kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
правяраем: kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods

Знаёмства з Tanzu Mission Control

Модуль 2 скончаны, вы прыгожыя і цудоўныя! Прайсці астатнія модулі, якія ўключаюць кіраванне палітыкамі і праверкі на адпаведнасць раім самастойна.

Калі вы жадаеце прайсці гэтую лабараторную працу цалкам, знайсці яе можна у каталогу. А мы пяройдзем да заключнай часткі артыкула. Пагаворым аб тым, на што атрымалася паглядзець, зробім першыя акуратныя высновы і разгорнута скажам, што такое Tanzu Mission Control у дачыненні да рэальных бізнэс-працэсаў.

Меркаванні і высновы

Безумоўна, казаць аб практычных пытаннях працы з Tanzu пакуль ранавата. Матэрыялаў для самастойнага вывучэння не так ужо і шмат, а разгарнуць тэставы стэнд, каб патыкаць новы прадукт са ўсіх бакоў на сённяшні дзень не ўяўляецца магчымым. Тым не менш, нават па наяўных дадзеных можна зрабіць пэўныя высновы.

Карысць Tanzu Mission Control

Сістэма атрымалася сапраўды цікавая. Адразу ж хочацца вылучыць некалькі зручных і карысных плюшак:

  • Можна ствараць кластары праз вэб-панэль і праз кансоль, што вельмі спадабаецца распрацоўшчыкам.
  • Кіраванне RBAC праз воркспейсы рэалізавана ў інтэрфейсе карыстальніка. У лабе пакуль не працуе, але ў тэорыі - выдатная рэч.
  • Цэнтралізаванае кіраванне прывілеямі на аснове шаблонаў
  • Поўны доступ да namespace'ам.
  • Рэдактар ​​YAML.
  • Стварэнне сеткавых палітык.
  • Маніторынг здароўя кластара.
  • Магчымасць рабіць рэзервовае капіраванне і аднаўленне праз кансоль.
  • Кіраванне квотамі і рэсурсамі з візуалізацыяй фактычнай утылізацыі.
  • Аўтаматычны запуск інспекцыі кластараў.

Ізноў жа, шматлікія кампаненты на бягучы момант знаходзяцца ў стадыі дапрацоўкі, таму паўнавартасна казаць аб плюсах і мінусах некаторых прылад пакуль рана. Дарэчы, Tanzu MC, зыходзячы з дэманстрацыі, можа на лёце рабіць апгрэйд кластара і ў цэлым забяспечваць увесь жыццёвы цыкл кластара адразу ў мноства правайдэраў.

Прывядзем некалькі «высокаўзроўневых» прыкладаў.

У чужы кластар са сваім статутам

Дапусцім, у вас ёсць каманда распрацоўшчыкаў, у якой дакладна размеркаваны ролі і абавязкі. Кожны заняты сваёй справай і не павінен нават выпадкова перашкодзіць рабоце калег. Ці ж у камандзе ёсць адзін ці некалькі менш вопытных спецыялістаў, якім вы не хочаце даваць лішнія правы і свабоды. Дапусцім таксама, што ў вас ёсць Kubernetes адразу ад трох правайдэраў. Адпаведна, каб абмежаваць правы і прывесці іх да агульнага назоўніка, прыйдзецца па чарзе заходзіць у кожную панэль кіравання і ўсё прапісваць уручную. Пагадзіцеся, не самае прадуктыўнае баўленне часу. І чым больш у вас рэсурсаў, тым моташней працэс. Tanzu Mission Control дазволіць кіраваць размежаваннем роляў з "аднаго акна". На наш погляд, вельмі зручная функцыя: ніхто нічога не зламае, калі вы выпадкова забудзецеся недзе ўказаць патрэбныя правы.

Дарэчы, нашы калегі з МТС у сваім блогу параўноўвалі Kubernetes ад вендара і open source. Калі вы даўно хацелі даведацца, у чым адрозненні і на што глядзець пры выбары - welcome.

Кампактная праца з логамі

Яшчэ адзін прыклад з рэальнага жыцця - праца з логамі. Выкажам здагадку, у камандзе таксама маецца тэстыравальнік. У адзін цудоўны дзень ён прыходзіць да распрацоўшчыкаў і абвяшчае: «у дадатку знойдзены баг, тэрмінова фіксаваны». Заканамерна, што першае, з чым захоча азнаёміцца ​​распрацоўшчык - гэта логі. Пасылаць іх файламі праз электронную пошту ці Telegram – маветон і мінулае стагоддзе. Mission Control прапануе альтэрнатыву: можна задаць распрацоўніку спецыяльныя правы, каб яны маглі чытаць логі толькі ў канкрэтнай прасторы імёнаў. У такім выпадку тэсціроўшчыку дастаткова сказаць: "у такім-то дадатку, у такім-то поле, у такім-то namespace ёсць багі", і распрацоўшчык без працы адкрые логі і зможа лакалізаваць праблему. А за кошт абмежаваных правоў не палезе адразу яе правіць, калі кампетэнцыя не дазваляе.

У здаровым кластары здаровы дадатак

Яшчэ адна выдатная магчымасць Tanzu MC - адсочванне здароўя кластара. Мяркуючы па папярэдніх матэрыялах, сістэма дазваляе праглядаць некаторую статыстыку. На дадзены момант складана сказаць, наколькі менавіта дэталізаванай будзе гэтая інфармацыя: пакуль што ўсё выглядае дастаткова сціпла і проста. Ёсць маніторынг загружанасці CPU і RAM, паказаны статуты ўсіх кампанентаў. Але нават у такім спартанскім выглядзе гэта вельмі карысная і эфектыўная дэталь.

Вынікі

Зразумела, у лабараторным уяўленні Mission Control, у, здавалася б, стэрыльных умовах, назіраюцца некаторыя шурпатасці. Вы і самі напэўна іх заўважыце, калі вырашыцеся прайсці працу. Нейкія моманты зроблены недастаткова інтуітыўна – нават адміністратару са стажам давядзецца ўчытацца ў мануал, каб разабрацца ў інтэрфейсе і яго магчымасцях.

Тым не менш, з улікам складанасці прадукта, яго важнасці і ролі, якую яму трэба будзе згуляць на рынку - атрымалася крута. Адчуваецца, што стваральнікі імкнуліся наладзіць працоўны працэс карыстача. Зрабіць кожны элемент кіравання максімальна функцыянальным і зразумелым.

Застаецца толькі апрабаваць Tanzu на тэставым стэндзе, каб рэальна зразумець усе яго плюсы, мінусы і новаўвядзенні. Як толькі такая магчымасць нам прадставіцца, мы падзелімся з чытачамі Хабра падрабязнай справаздачай аб працы з прадуктам.

Крыніца: habr.com

Дадаць каментар