Слёрм DevOps - лепш якая працуе сініца за 3 дні, чым выдатны журавель у далёкай будучыні

Я люблю праект даўжынёй у тыдзень, і мяне палохаюць праекты даўжынёй у год. У аджайле мне вельмі спадабалася канцэпцыя MVP і інкрэмента, гэта прамое маё: зрабіць працаздольны кавалак, укараніць яго і рушыць далей.

Пры гэтым DevOps-трансфармацыя ў тым выглядзе, у якім яе абмяркоўваюць у кнігах і на канферэнцыях, гэта якраз праект даўжынёй у год. Або ў гады.

Мы будавалі свой курс па DevOps у парадыгме "MVP DevOps за адзін спрынт" і "гатоўнасць да інкрыментаў". А калі па-чалавечы, то "каб удзельнік па вяртанні мог неадкладна нешта ўкараніць у сябе і атрымаць карысць".

MVP DevOps: у курсе ёсць прылады для асноўных DevOps-працэсаў. Мы не ставілі сабе задачу разгледзець і параўнаць усе сістэмы CI/CD ці расчыніць глыбіні падыходу Infrastructure as Code. Мы даем адзін зразумелы стэк: Gitlab CI/CD, Ansible, Terraform і Packer, Molecule, Prometheus, EFK. Можна прыйсці з курсаў, сабраць з навучальных матэрыялаў інфраструктуру для пілотнага праекту і папрацаваць у ёй.

Слёрм DevOps - лепш якая працуе сініца за 3 дні, чым выдатны журавель у далёкай будучыні

Гатоўнасць да інкрыментаў: кожны элемент мы даем з вялікай колькасцю практыкі і прыкладамі. Можна ўзяць адзін інструмент і па вучэбных чарцяжах заняцца яго ўкараненнем. Напрыклад, напісаць Ansible-плэйбук для раскочвання dev-акружэнняў або падлучыць бота і адмініць сервер з тэлефона. Гэта значыць, за тыдзень атрымаць канкрэтны практычны вынік. Хай ён бясконца далёкі ад DevOps-трансфармацыі ўсёй кампаніі, але ен ёсць, ён тут, ён працуе і прыносіць карысць.

Тэмы Слёрма DevOps

Тэма №1: Git best practices - кажа сама за сябе.
Тэма №2: Праца з дадаткам з пункту гледжання распрацоўкі — інжынеру патрэбныя кампетэнцыі адміністратара і распрацоўшчыка, таму мы расказваем адмінам пра распрацоўку.

Тэма №3: ​​Асновы CI/CD

  • Уводзіны ў аўтаматызацыю CI/CD
  • Асновы працы з Gitlab CI
  • Лепшыя практыкі з gitlab-runner
  • Інструменты bash, make, gradle як частка CI/CD і не толькі
  • Docker як спосаб вырашэння праблем CI

Тэма №4: Gitlab CI/CD у прадакшэн

  • Канкурэнтнасць пры запуску job
  • Кантроль і абмежаванні выканання: only, when
  • Праца з артэфактамі
  • Тэмплэйты, інклюды і мікрасэрвісы: спрашчаем разгортванне

Мы знаёмім студэнтаў з асноўнымі паняццямі і канцэпцыямі CI/CD і з тулінгам для рэалізацыі CI/CD. У выніку студэнт зможа самастойна абраць шаблон праектавання CI/CD і прыдатную прыладу рэалізацыі.

Затым мы паказваем рэалізацыю CI/CD у Gitlab і разбіраны наладу, разглядаем спосабы прасунутага выкарыстання Gitlab CI. У выніку студэнт зможа самастойна наладзіць Gitlab CI для ўласных праектаў.

У параўнанні з першым Слёрмам DevOps мы ўціснулі тэорыю ў 2 разы (па гадзіне на тэму), сышлі ад агляду ўсіх сістэм і пакінулі толькі Gitlab CI. Засяродзіліся на практыцы, дадалі шмат best practices.

Тэма №5: Infrastructure as Code

  • IaC: падыход да інфраструктуры як да кода
  • Воблачнае правайдэры як пастаўшчыкі інфраструктуры
  • Інструменты ініцыялізацыі сістэм, зборка вобразаў (packer)
  • IaC на прыкладзе Terraform
  • Захоўванне канфігурацый, сумесная праца, аўтаматызацыя ужыванняў
  • Практыка стварэння Ansible плэйбукаў
  • Ідэмпатэнтнасць, дэкларатыўнасць
  • IaC на прыкладзе Ansible

Мы скарацілі тэарэтычную частку па UI і openstack cli і засяродзіліся на практыцы.
Разгледзім два падыходы IaC, выкарыстоўваючы адно і тое ж дадатак, паказваючы плюсы і мінусы кожнага падыходу. У выніку студэнт зразумее, які падыход дзе прымяняць, і зможа працаваць як з Terraform, так і з Ansible.

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

Тэма №6: Тэставанне інфраструктуры

  • Разбіраемся, чаму не пішуць тэсты?
  • Якія існуюць тэсты ў IaC?
  • Статычныя аналізатары, ці так яны бескарысныя?
  • Юніт тэсціраванне IaC на прыкладзе ansible + molecule
  • Тэставанне, як частка ci
  • Тэсты на пазіцыі, метадалагічнай ці як не чакаць па 5 гадзін, заканчэння тэстаў для IaC

Мы скарацілі тэарэтычную частку, менш апавяданняў пра Vagrant/Molecule, больш практыкі і непасрэдна тэсціравання, з фокусам на лінтэры і працу з імі. Глядзім з пункту гледжання CI
як зрабіць тэсціраванне хутчэй. У практыцы будзе:

  • самапісны лінтэр, які правярае наяўнасць абавязковых зменных для хаста ў залежнасці ад ролі;
  • дадаем у CI тэставанне толькі тых роляў, якія змяніліся, што дазваляе істотна скараціць час выканання тэстаў;
  • дадаем тэсціраванне сцэнарыяў. Разгортваем дадатак цалкам, як інтэграцыйны тэст.

Тэма №7: Маніторынг інфраструктуры з Prometheus

  • Як пабудаваць здаровую сістэму маніторынгу
  • Маніторынг, як інструмент для аналізу, эфектыўнасці распрацоўкі і стабільнасці кода, яшчэ да продажу
  • Настройка prometheus + alertmanager + grafana
  • Пераходзім ад маніторынгу рэсурсаў, да маніторынгу прыкладанняў

Будзем шмат казаць пра маніторынг мікрасэрвісаў: id запытаў, api маніторынг tool. Будзе шмат лепшых практык і шмат самастойнай працы.

Напішам свой экспарцёр. Наладзім маніторынг не толькі прадакшэны інфраструктуры і прыкладанні, але і зборак у Gitlab. Паглядзім статыстыку па праваленых тэстах. Паглядзім на практыку, як будзе выглядаць маніторынг без healthCheck і з ім.

Тэма №8. Лагіраванне прыкладання з ELK

  • Elastic і яго інструментаў
  • ELK / Elastic Stack / x-pack – што ёсць што і ў чым розніца?
  • Якія задачы можна вырашаць з дапамогай ElasticSearch (пошук, сховішча, асаблівасці маштабавання, гнуткасць налады)
  • Маніторынг інфраструктуры (x-pack)
  • Логі кантэйнераў і дадаткаў (x-pack)
  • Лагіраванне на прыкладзе нашага прыкладання
  • Практыкі працы з Kibana
  • Open Distro for Elasticsearch ад Amazon

Тэма цалкам перапрацаваная, яе вядзе Эдуард Мядзведзеў, шмат хто бачыў яго на вэбінары па DevOps і SRE. Ён раскажа і пакажа лепшыя практыкі працы з EFK на прыкладзе навучальнага прыкладання. Будзе практыка з Kibana.

Тэма №9: Аўтаматызацыя інфраструктуры з ChatOps

  • DevOps і ChatOps
  • ChatOps: моцныя бакі
  • Slack і альтэрнатывы
  • Боты для ChatOps
  • Hubot і альтэрнатывы
  • бяспеку
  • Тэставанне
  • Лепшыя і горшыя практыкі

У ChatOps дадалі практыку аўтэнтыфікацыі з падзелам правоў, пацвярджэнне дзеянняў іншым карыстальнікам, тэорыю і практыку альтэрнатывы Slack ў выглядзе Mattermost, тэорыю юніт і інтэграцыйных тэстаў для робата.

Слёрм DevOps стартуе 30 студзеня. Кошт - 30 000.
Для тых, хто дачытаў, зніжка 15% на курс па DevOps па промакодзе habrapost.

Рэгістрацыя тут

Буду рады бачыць вас на Слёрмах!

Крыніца: habr.com

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