TL, д-р
Зноў будзем разбіраць на практыцы прылады DevOps.
Падрабязнасці і праграма пад катом.
SRE прыбралі з праграмы, таму што мы разам з Іванам Кругловым рыхтуем асобны Слёрм SRE. Анонс будзе пазней.
Дзякуй Selectel, нашым спонсарам з першага Слёрма!
Пра філасофію, скептыцызм і нечаканы поспех
Я пабываў на DevOpsConf у Маскве ў канцы верасня.
Рэзюмэ таго, што я пачуў:
- DevOps патрэбен большасці колькі-небудзь буйных праектаў;
- DevOps - гэта культура, як любая культура, ён павінен ісці знутры кампаніі. Нельга наняць DevOps-інжынера і марыць, што ён задэвапсуе працэсы.
- У самым канцы спісу таго, што трэба для DevOps-трансфармацыі, ідуць тэхналогіі, гэта значыць тыя самыя DevOps-інструменты, якім мы навучаем.
Я зразумеў, што мы правільна не сталі ўключаць у курс філасофію і культуру DevOps, бо гэтаму нельга сістэмна вучыць. Каму трэба, прачытае ў кнігах. Або знойдзе супер-крутога коуча, які ўсіх пераканае сваёй харызмай і аўтарытэтам.
Асабіста я заўсёды быў прыхільнікам "руху знізу", партызанскага ўкаранення культуры праз інструменты. Нешта накшталт апісанага ў «Праекце Фенікс». Калі ў нас правільна настроена камандная праца з Git, можна паціху дапаўняць яе рэгламентамі, а тамака і да каштоўнасцяў справа дойдзе.
І ўсё роўна, калі мы рыхтавалі Слёрм DevOps, дзе гаворка ішла выключна пра інструменты, я баяўся рэакцыі ўдзельнікаў: «Вы распавялі цудоўныя рэчы. Шкада, я ніколі не змагу іх укараніць». Скепсісу было столькі, што мы адразу паставілі крыж на паўторы праграмы.
Аднак большасць удзельнікаў адказала ў апытанні, што атрыманыя веды дастасавальныя на практыцы, і што яны ў найбліжэйшай будучыні што-небудзь у сябе ўкарэняць. Пры гэтым у спіс карыснага патрапіла ўсё, што мы тлумачылі: і Git, і Ansible, і CI/CD, і SRE.
Варта памятаць, што пра Слёрм Kubernetes спачатку таксама казалі, што за 3 дні растлумачыць k8s немагчыма.
З Іванам Кругловым, які вёў тэму SRE, мы дамовіліся аб асобнай праграме. Цяпер абмяркоўваем падрабязнасці, хутка зраблю анонс.
Што ж будзе на Слёрме DevOps?
Праграма
Тэма №1: Камандная праца з Git
- Базавыя каманды git init, commit, add, diff, log, status, pull, push
- Git flow, галінкі і тэгі, стратэгіі merge
- Праца з некалькімі remote rep
- GitHub flow
- Fork, remote, pull request
- Канфлікты, рэлізы, яшчэ раз пра Gitflow і іншыя flow у дачыненні да каманд
Тэма №2: Праца з дадаткам з пункту гледжання распрацоўкі
- Пішам мікрасэрвіс на Python
- Пераменныя асяроддзі
- Інтэграцыйныя і юніт тэсты
- Ужыванне docker-compose у распрацоўцы
Тэма №3: CI/CD: уводзіны ў аўтаматызацыю
- Увядзенне ў аўтаматызацыю
- Інструменты (bash, make, gradle)
- Выкарыстанне git-hooks для аўтаматызацыі працэсаў
- Фабрычныя канвеерныя лініі зборкі і іх ужыванне ў IT
- Прыклад пабудовы "агульнага" пайплайну
- Сучаснае ПЗ для CI/CD: Drone CI, BitBucket Pipelines, Travis і да т.п.
Тэма №4: CI/CD: Праца з Gitlab
- Gitlab CI
- Gitlab Runner, іх тыпы і прымяненне
- Gitlab CI, асаблівасці наладкі, лепшыя практыкі
- Этапы Gitlab CI
- Зменныя Gitlab CI
- Зборка, тэсціраванне, дэплой
- Кантроль і абмежаванні выканання: only, when
- Праца з артэфактамі
- Шаблоны ўнутры .gitlab-ci.yml, перавыкарыстанне дзеянняў на розных участках пайплайну
- Include - секцыі
- Цэнтралізаванае кіраванне gitlab-ci.yml (адзін файл і аўтаматычныя push у астатнія рэпазітары)
Тэма №5: Infrastructure as Code
- IaC: падыход да інфраструктуры як да кода
- Воблачнае правайдэры як пастаўшчыкі інфраструктуры
- Інструменты ініцыялізацыі сістэм, зборка вобразаў (packer)
- IaC на прыкладзе Terraform
- Захоўванне канфігурацый, сумесная праца, аўтаматызацыя ужыванняў
- Практыка стварэння Ansible плэйбукаў
- Ідэмпатэнтнасць, дэкларатыўнасць
- IaC на прыкладзе Ansible
Тэма №6: Тэставанне інфраструктуры
- Тэставанне і бесперапынная інтэграцыя з Molecule і Gitlab CI
- Ужыванне Vagrant
Тэма №7: Маніторынг інфраструктуры з Prometheus
- Навошта патрэбен маніторынг
- Тыпы маніторынгу
- Апавяшчэнні ў сістэме маніторынгу
- Як пабудаваць здаровую сістэму маніторынгу
- Чалавекачытальныя апавяшчэння, для ўсіх
- Health Check: на што варта звярнуць увагу
- Аўтаматызацыя на падставе дадзеных ад маніторынгу
Тэма №8: Лагіраванне прыкладання з ELK
- Лепшыя практыкі лагіравання
- ELK стэк
Тэма №9: Аўтаматызацыя інфраструктуры з ChatOps
- DevOps і ChatOps
- ChatOps: моцныя бакі
- Slack і альтэрнатывы
- Боты для ChatOps
- Hubot і альтэрнатывы
- бяспеку
- Лепшыя і горшыя практыкі
Месца: Масква, канферэнц-зала гатэля Севастопаль.
даты: з 30 студзеня па 1 лютага, 3 дні напружанай працы.
Крыніца: habr.com