Slurm DevOps - алыс болашақта әдемі кранға қарағанда 3 күнде жақсы жұмыс істейтін сит.

Мен бір аптаға созылатын жобаны жақсы көремін және бір жылға созылатын жобалар мені қорқытады. Agile-де маған MVP және ұлғайту тұжырымдамасы қатты ұнады, бұл менің ісім: жұмысқа жарамды бөлік жасаңыз, оны жүзеге асырыңыз және әрі қарай жүріңіз.

Сонымен қатар, кітаптарда және конференцияларда талқыланатын пішіндегі DevOps трансформациясы бір жылға созылатын жоба. Немесе жылдар ішінде.

Біз DevOps курсын «бір спринттегі MVP DevOps» және «арттыруға дайын болу» парадигмасында құрдық. Егер адами тұрғыдан алғанда, онда «қатысушы қайтып оралған соң, бірден үйде бірдеңені жүзеге асырып, одан пайда көре алады».

MVP DevOps: Курста негізгі DevOps процестеріне арналған құралдар бар. Біз өз алдымызға барлық CI/CD жүйелерін қарап шығу және салыстыру немесе код тәсілі ретінде инфрақұрылымның тереңдігін ашу міндетін қойған жоқпыз. Біз бір анық стек береміз: Gitlab CI/CD, Ansible, Terraform және Packer, Molecule, Prometheus, EFK. Сіз курстардан келіп, оқу материалдарынан пилоттық жобаның инфрақұрылымын жинап, онда жұмыс жасай аласыз.

Slurm DevOps - алыс болашақта әдемі кранға қарағанда 3 күнде жақсы жұмыс істейтін сит.

Үстемелерге дайындық: біз әр элементті көптеген тәжірибелер мен мысалдармен қамтамасыз етеміз. Сіз бір құралды алып, оны жаттығу сызбалары арқылы жүзеге асыруға кірісе аласыз. Мысалы, әзірлеуші ​​орталарды шығару үшін Ansible ойын кітабын жазыңыз немесе ботты қосып, серверді телефоныңыздан басқарыңыз. Яғни, бір аптада нақты практикалық нәтижеге қол жеткізіңіз. Бұл бүкіл компанияның DevOps трансформациясынан шексіз алыс болуы мүмкін, бірақ ол бар, ол осында, ол жұмыс істейді және пайда әкеледі.

Slurm DevOps тақырыптары

№1 тақырып: Git үздік тәжірибелері - өзі үшін сөйлейді.
Тақырып №2: Даму тұрғысынан қосымшамен жұмыс — инженерге әкімші және әзірлеуші ​​құзыреттері қажет, сондықтан біз әкімшілерге әзірлеу туралы айтамыз.

№3 тақырып: CI/CD негіздері

  • CI/CD автоматтандыруына кіріспе
  • Gitlab CI негіздері
  • gitlab-runner көмегімен ең жақсы тәжірибелер
  • CI/CD бөлігі ретінде Bash, make, gradle құралдары және т.б
  • Докер CI мәселелерін шешу тәсілі ретінде

№4 тақырып: Gitlab CI/CD өндірісінде

  • Жұмысты бастаған кездегі бәсекелестік
  • Орындауды бақылау және шектеулер: тек, қашан
  • Артефактілермен жұмыс
  • Үлгілер, қамтиды және микросервистер: орналастыруды жеңілдету

Біз студенттерді CI/CD және CI/CD іске асыруға арналған құралдардың негізгі түсініктері мен тұжырымдамаларымен таныстырамыз. Нәтижесінде студент CI/CD дизайн үлгісін және сәйкес іске асыру құралын өз бетінше таңдай алады.

Содан кейін біз Gitlab жүйесінде CI/CD іске асырылуын көрсетеміз және Gitlab CI пайдаланудың кеңейтілген жолдарын қарастыра отырып, орнатуды аралаймыз. Нәтижесінде студент Gitlab CI бағдарламасын өз жобалары үшін өз бетінше конфигурациялай алады.

Бірінші DevOps Slurm-пен салыстырғанда, біз теорияны 2 есе қысқарттық (әр тақырыпқа бір сағат), барлық жүйелерді қараудан бас тарттық және тек Gitlab CI қалдырдық. Біз тәжірибеге назар аудардық және көптеген озық тәжірибелерді қостық.

№5 тақырып: Инфрақұрылым код ретінде

  • IaC: Инфрақұрылымға код ретінде жақындау
  • Бұлттық провайдерлер инфрақұрылымдық провайдерлер ретінде
  • Жүйені инициализациялау құралдары, кескін құру (пакер)
  • Мысал ретінде Terraform көмегімен IaC
  • Конфигурацияны сақтау, бірлесіп жұмыс істеу, қолданбаларды автоматтандыру
  • Ansible ойын кітаптарын жасау тәжірибесі
  • Импотенттілік, декларативтілік
  • Мысал ретінде Ansible қолданатын IaC

Біз UI және openstack cli бойынша теориялық бөлікті қысқарттық және тәжірибеге назар аудардық.
Әр тәсілдің оң және теріс жақтарын көрсете отырып, бір қолданбаны қолданатын екі IaC әдісін қарастырайық. Нәтижесінде студент қай тәсілді қайда қолдану керектігін түсінеді және Terraform және Ansible екеуімен де жұмыс істей алады.

Terraform туралы тақырыпта біз тәжірибеде топтық жұмысты және деректер базасындағы күйді сақтауды қарастырамыз. Модульдермен жұмыс істеу кезінде студент модульді өзі жазады және конфигурациялайды, онымен жұмыс істеуді үйренеді: оны қайта пайдалану, нұсқалау. Консулмен жұмысты қосайық, қандай жағдайларда қажет екенін және оны қалай дұрыс пайдалану керектігін көрсетейік.

Тақырып №6: Инфрақұрылымды тестілеу

  • Неліктен олар тест жазбайтынын анықтайық?
  • IaC-те қандай сынақтар бар?
  • Статикалық анализаторлар, олар шынымен де пайдасыз ба?
  • Мысал ретінде ansible + молекуласын пайдаланып IaC бірлік сынағы
  • CI бөлігі ретінде тестілеу
  • Стероидтерге арналған сынақтар немесе IaC сынақтарының аяқталуын 5 сағат күтпеу

Біз теориялық бөлімді қысқарттық, Вагрант/Молекула туралы аз әңгімелерді, көбірек тәжірибе мен тікелей тестілеуді, линтерлерге және олармен жұмыс істеуге назар аудардық. Оған CI тұрғысынан қарау
тестілеуді қалай тездетуге болады. Іс жүзінде мыналар болады:

  • рөлге байланысты хост үшін міндетті айнымалы мәндердің болуын тексеретін өздігінен жазылған линтер;
  • Біз CI тестілеуіне сынақты орындау уақытын едәуір қысқартатын өзгерген рөлдерді ғана қосамыз;
  • сценарийді тестілеуді қосу. Біз бүкіл қолданбаны интеграция сынағы ретінде орналастырамыз.

Тақырып №7: Прометей көмегімен инфрақұрылымды бақылау

  • Салауатты бақылау жүйесін қалай құруға болады
  • Мониторинг тіпті сатуға дейін талдау, әзірлеу тиімділігі мен код тұрақтылығының құралы ретінде
  • Prometheus + alertmanager + grafana орнату
  • Ресурстарды бақылаудан қолданбаларды бақылауға көшу

Біз микросервистерді бақылау туралы көп айтатын боламыз: сұрау идентификаторлары, api бақылау құралы. Көптеген озық тәжірибелер мен өзіндік жұмыстар көп болады.

Өз экспорттаушымызды жазайық. Біз тек өндірістік инфрақұрылым мен қолданбаларды ғана емес, сонымен қатар Gitlab жүйесіндегі жинақтарды да бақылауды орнатамыз. Сәтсіз өткен сынақтар туралы статистиканы қарастырайық. HealthCheck және онымен бірге мониторингтің қандай болатынын іс жүзінде көрейік.

Тақырып № 8. ELK көмегімен қолданбаны тіркеу

  • Elastic және оның құралдарына шолу
  • ELK/Elastic Stack/x-pack - бұл не және айырмашылығы неде?
  • ElasticSearch көмегімен қандай мәселелерді шешуге болады (іздеу, сақтау, масштабтау мүмкіндіктері, конфигурацияның икемділігі)
  • Инфрақұрылымдық мониторинг (x-pack)
  • Контейнер және қолданба журналдары (x-pack)
  • Мысал ретінде біздің қолданбаны пайдаланып журналға жазылу
  • Кибанамен жұмыс істеу тәжірибесі
  • Amazon-дан Elasticsearch үшін Distro ашыңыз

Тақырып толығымен қайта жасалды, оны Эдуард Медведев жүргізеді, оны көпшілік DevOps және SRE вебинарларында көрді. Ол білім беру қолданбасының мысалында EFK-мен жұмыс істеудің озық тәжірибелерін айтып, көрсетеді. Кибанамен жаттығу болады.

№9 тақырып: ChatOps көмегімен инфрақұрылымды автоматтандыру

  • DevOps және ChatOps
  • ChatOps: күшті жақтары
  • Бос және балама
  • ChatOps үшін боттар
  • Hubot және балама нұсқалар
  • Қауіпсіздік
  • Тестілеу
  • Ең жақсы және ең нашар тәжірибелер

ChatOps құқықтарды бөлу арқылы аутентификация тәжірибесін, басқа пайдаланушының әрекеттерін растауды, Mattermost түріндегі Slack-ке балама теориясы мен тәжірибесін, бірлік теориясын және ботқа арналған интеграциялық сынақтарды қосты.

DevOps slurm 30 қаңтарда басталады. Бағасы - 30 000 тг.
Оқуды аяқтағандар үшін Habrapost жарнамалық кодын пайдаланып DevOps курсына 15% жеңілдік бар.

Тіркелу осында

Мен сізді Slurms-те көргеніме қуаныштымын!

Ақпарат көзі: www.habr.com

пікір қалдыру