0
Практика DevOps в крупных
организациях
Ребров Андрей
Инженерный тренер, Scrumtrek
Зарисовки из жизни
Боязнь изменений в продукте
Боязнь поставок
Админы vs Разработчики
Конечно, можно найти
виноватых…
…но где то там есть
пользователи
Люди и их
взаимодействие
Работающий продукт

Тесные отношения с
заказчиком
Готовность к изменениям
Люди и их
взаимодействие

Как разработчики видят администраторов
Люди и их
взаимодействие

Как администраторы видят разработчиков
Люди и их
взаимодействие

Отрицание
Обвинение
Извинение
Стыд
Принятие
Ответственность
Работающий продукт

Постоянный поток задач
Непрозрачный
процесс

Тесные отношения с
заказчиком
Тесные отношения с
заказчиком

Обратная связь
Готовность к изменениям
Еще не все потеряно
Agile Infrastructure
•
•
•
•

Operating at Cloud Scale
Ephemeral Infrastructure
Frictionless Infrastructure
Self Service O...
Agile Operations
•
•
•
•
•

Products not Projects
Walk on Walk off Projects
Velocity of Innovation
Continuos Delivery
Ente...
Что такое DevOps?
• постоянный поток поставки ценности
• быстрый цикл обратной связи
• постоянное улучшение процесса
Culture

Automation

Measureme
nt

Sharing
DevOps Manifesto
•
•
•
•
•

Набор ценностей
Реакция на недостаток коммуникаций
Создание отношений между dev и ops
Работа н...
DevOps - это не…
•
•
•
•

Сертификация
Роль
Инструменты
Прописанный процесс
Каковы принципы DevOps?

Три пути
Понять систему

Выстроить поток

Организовать обратную связь

Искать пути постоянного улучшения
Антипаттерны Devops
• Длинные релизные циклы
• Разногласия между Ops, Dev,Dba, Test,
...
• Работает на Stage но не на prod...
4 модели внедрения DevOps
• Углубление процессов разработки в
поставку
• Создание обратной связи от боевых
серверов до раз...
Визуализируйте поток задач
Привлекайте админов к работе над продуктом
как можно раньше
Automation over Documentation
То, что не может быть измерено, не может
быть улучшено
Визуализируйте метрики
Улучшайте процесс
Учитесь новому
Delivery Pipeline как основной
подход в автоматизации
Automation
•
•
•
•

CI Server
Code Analysis
Auto Tests
Configuration Management
CI Server
• Рассмотрим на примере Jenkins
Что нужно
1.
2.
3.
4.
5.

Ставим pipeline plugin
Делаем dependency между задачами
Создаем новый pipeline view
….
Profit!
Альтернативы
Configuration Management
•
•
•
•

VM control
OS control
Installation control
…
Как неправильно
Например
Vagrant
Vagrant::Config.run do |config|
config.vm.box = "precise32"
config.vm.box_url =
http://files.vagrantup.com/precise...
Docker
from ubuntu:12.10
run apt-get update
run DEBIAN_FRONTEND=noninteractive apt-get install q -y python
run DEBIAN_FRON...
Нужно больше инструментов!
Еще больше!
Что важно
• Useful reports
• Useful logging
• Vizualisation
– Dashboards
– Graphs
–…
Работаем с логами
Как можно все это собрать
Node

Logstash

ElasticSearch

Node

Kibana
Визуализация
Что есть на рынке
Что почитать
Twitter:
@andrebrov
E-mail:
arebrov@scrumtrek.ru
Skype:
rebrov.andrey
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Практика DevOps в крупных организациях
Upcoming SlideShare
Loading in...5
×

Практика DevOps в крупных организациях

187

Published on

Четвертый доклад Конференции
Докладчик Ребров Андрей, инженерный тренер ScrumTrek.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
187
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Практика DevOps в крупных организациях"

  1. 1. Практика DevOps в крупных организациях Ребров Андрей Инженерный тренер, Scrumtrek
  2. 2. Зарисовки из жизни
  3. 3. Боязнь изменений в продукте
  4. 4. Боязнь поставок
  5. 5. Админы vs Разработчики
  6. 6. Конечно, можно найти виноватых…
  7. 7. …но где то там есть пользователи
  8. 8. Люди и их взаимодействие Работающий продукт Тесные отношения с заказчиком Готовность к изменениям
  9. 9. Люди и их взаимодействие Как разработчики видят администраторов
  10. 10. Люди и их взаимодействие Как администраторы видят разработчиков
  11. 11. Люди и их взаимодействие Отрицание Обвинение Извинение Стыд Принятие Ответственность
  12. 12. Работающий продукт Постоянный поток задач
  13. 13. Непрозрачный процесс Тесные отношения с заказчиком
  14. 14. Тесные отношения с заказчиком Обратная связь
  15. 15. Готовность к изменениям
  16. 16. Еще не все потеряно
  17. 17. Agile Infrastructure • • • • Operating at Cloud Scale Ephemeral Infrastructure Frictionless Infrastructure Self Service Operations
  18. 18. Agile Operations • • • • • Products not Projects Walk on Walk off Projects Velocity of Innovation Continuos Delivery Enterprise Lean Startup
  19. 19. Что такое DevOps? • постоянный поток поставки ценности • быстрый цикл обратной связи • постоянное улучшение процесса
  20. 20. Culture Automation Measureme nt Sharing
  21. 21. DevOps Manifesto • • • • • Набор ценностей Реакция на недостаток коммуникаций Создание отношений между dev и ops Работа над продуктом, а не проектом … http://bit.ly/devopsmanifesto
  22. 22. DevOps - это не… • • • • Сертификация Роль Инструменты Прописанный процесс
  23. 23. Каковы принципы DevOps? Три пути
  24. 24. Понять систему Выстроить поток Организовать обратную связь Искать пути постоянного улучшения
  25. 25. Антипаттерны Devops • Длинные релизные циклы • Разногласия между Ops, Dev,Dba, Test, ... • Работает на Stage но не на production. • Долгая подготовка сред для поставки • Ручное обновление конфигов • Разнообразые OS, Middleware, … • Отсутствия понимания где и что работает • Ручное документирование
  26. 26. 4 модели внедрения DevOps • Углубление процессов разработки в поставку • Создание обратной связи от боевых серверов до разработки • Объединение разработки и администрирования • Включение ИТ команды в разработку
  27. 27. Визуализируйте поток задач
  28. 28. Привлекайте админов к работе над продуктом как можно раньше
  29. 29. Automation over Documentation
  30. 30. То, что не может быть измерено, не может быть улучшено
  31. 31. Визуализируйте метрики
  32. 32. Улучшайте процесс
  33. 33. Учитесь новому
  34. 34. Delivery Pipeline как основной подход в автоматизации
  35. 35. Automation • • • • CI Server Code Analysis Auto Tests Configuration Management
  36. 36. CI Server • Рассмотрим на примере Jenkins
  37. 37. Что нужно 1. 2. 3. 4. 5. Ставим pipeline plugin Делаем dependency между задачами Создаем новый pipeline view …. Profit!
  38. 38. Альтернативы
  39. 39. Configuration Management • • • • VM control OS control Installation control …
  40. 40. Как неправильно
  41. 41. Например
  42. 42. Vagrant Vagrant::Config.run do |config| config.vm.box = "precise32" config.vm.box_url = http://files.vagrantup.com/precise32.box config.vm.network :hostonly, "192.168.33.10” config.vm.share_folder("v-web", "/vagrant/www", "./www", :nfs => true) config.vm.share_folder("v-db", "/vagrant/db", "./db", :nfs => true) config.vm.forward_port 80, 8080 config.vm.provision :shell, :inline => "apt-get update -fix-missing” end
  43. 43. Docker from ubuntu:12.10 run apt-get update run DEBIAN_FRONTEND=noninteractive apt-get install q -y python run DEBIAN_FRONTEND=noninteractive apt-get install q -y python-pip run pip install django run DEBIAN_FRONTEND=noninteractive apt-get install q -y curl run curl -L https://github.com/shykes/helloflask/archive/master.tar.gz | tar -xzv run cd helloflask-master && pip install -r requirements.txt
  44. 44. Нужно больше инструментов!
  45. 45. Еще больше!
  46. 46. Что важно • Useful reports • Useful logging • Vizualisation – Dashboards – Graphs –…
  47. 47. Работаем с логами
  48. 48. Как можно все это собрать Node Logstash ElasticSearch Node Kibana
  49. 49. Визуализация
  50. 50. Что есть на рынке
  51. 51. Что почитать
  52. 52. Twitter: @andrebrov E-mail: arebrov@scrumtrek.ru Skype: rebrov.andrey
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×