Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Развитие DevOps/NoOps инструментов. Что было, что есть, что будет.

906 views

Published on

Доклад для конференции SQADays 20, обзорно рассказывает про DevOps, переход к NoOps и микросервисной архитектуре, а также почему ручное тестирование умрет.

Published in: Software
  • Be the first to comment

Развитие DevOps/NoOps инструментов. Что было, что есть, что будет.

  1. 1. Software quality assurance days 20 Международная конференция по вопросам качества ПО sqadays.com Минск. 24–26 ноября 2016 Иван Евтухович Экспресс 42. Москва, Россия Развитие DevOps/NoOps инструментов. Что было, что есть, что будет
  2. 2. DevOps консультанты
  3. 3. DevOps консультанты Музей валунов
  4. 4. DevOps консультанты Дворец водного спорта
  5. 5. DevOps консультанты Парк Челюскинцев
  6. 6. DevOps консультанты
  7. 7. DevOps консультанты План • Предпосылки для изменений • Что такое DevOps? • DevOps — текущее состояние дел • DevOps завтра и переход к NoOps
  8. 8. DevOps консультанты Оцифровка бизнеса • Количество систем растет • Количество серверов растет • Требования к скорости внедрения растет • Старый подход к разделению на Dev и Ops не удовлетворяет требованиям времени • Что делать?
  9. 9. DevOps консультанты Схема корпорации* * Генри Минцберг Структура Автоматизация ИТ-архитектура Рынок Компания Бизнес-процессы Application Middleware Database
  10. 10. DevOps консультанты Схема технологической компании РынокКомпания Программное обеспечение
  11. 11. DevOps консультанты Пример
  12. 12. DevOps консультанты Наш опытTime-to-market Рынок Программное обеспечение Инженеры Стратегический апекс
  13. 13. DevOps консультанты DevOps • Конфликт Dev и Ops • Совместная работа над созданием ценности • Соответствующие практики и инструменты
  14. 14. DevOps консультанты История • 2008 - Патрик Дебоиз (Patrick Debois) • Agile Infrastructure • 2009 - DevOpsDays в Бельгии • Более 30 DevOpsDays в 2016 году
  15. 15. DevOps консультанты CAMS • Культура • Автоматизация • Измерения • Обучение
  16. 16. DevOps консультанты Конвейер непрерывной поставки ПО • Delivery Pipeline • Представление процесса изготовления ПО, как конвейера • Каждый комит — отдельное “изделие” • Четко выделенные стадии • Полная автоматизация
  17. 17. DevOps консультанты CI/CD • Continuous Integration • Continuous Delivery • Процесс, при котором в бой может попасть любой комит по “нажатию кнопки”
  18. 18. DevOps консультанты
  19. 19. DevOps консультанты Управление конфигурацией • Управлению конфигурацией много лет • Оно существует у вас, даже если вы об этом не знаете • Переход от документов к коду • Infrastructure as a Code • Повторяемость окружение (сред, ландшафтов)
  20. 20. DevOps консультанты Управление тестовыми средами • Создание удаление тестовых сред “по кнопке”: • функциональных • интеграционных • нагрузочных и т.д.
  21. 21. DevOps консультанты DevOps сегодня • Активное использование систем управления конфигурацией • Активное использование CI/CD инструментов • Появления новых систем мониторинга • Появление NoSQL, NewSQL, OpenSource в корпорациях
  22. 22. DevOps консультанты Популярные инструменты • Chef/Ansible/Puppet/SaltStack • Jenkins/Bamboo/TeamCity/Rundeck • Grafana/Prometheus/Graphite • ELK/Graylog • AWS/OpenStack/GCE/VMWare
  23. 23. ruby_install ruby_version do action :install end ruby_set ruby_version do action :set username user end directory "#{application_directory}/" do owner user group user end key = Chef::EncryptedDataBagItem.load('deploy-key', 'key') file "/home/#{user}/.ssh/id_rsa" do content key['private_key'] owner user group user mode '0600' end %w(libmagickwand-dev libmagickcore-dev libpq-dev imagemagick).each do |pack| package pack end
  24. 24. tasks: - name: create ec2 instances ec2: key_name: brun instance_type: t2.micro image: ami-9a380b87 wait: yes region: eu-central-1 group: webservers count: 1
  25. 25. DevOps консультанты
  26. 26. DevOps консультанты Недостатки систем управления конфигурацией • Configuration Drift • Гетерогенная инфраструктура • Тяжело поддерживать на больших проектах • Сложны для изучения
  27. 27. DevOps консультанты Недостатки DevOps • Сложно “нарезать” Ops на несколько команд • Есть специализация у Ops, есть чистые Ops задачи • Общаться с Ops все равно долго
  28. 28. DevOps консультанты Закон Конвея • Мелвин Конвей, 1968 • http://evtuhovich.ru/blog/2016/10/05/conways-law/ • http://www.melconway.com/Home/ Committees_Paper.html
  29. 29. Формулировка Организация, которая создает систему, ограничена дизайном, который копирует структуру коммуникации в этой организации
  30. 30. DevOps консультанты NoOps • Service Discovery • Микросервисная архитектура • DC/OS • Платформенный подход
  31. 31. Избавляем бизнес от ИТ-зависимости Service Discovery • Обнаружение сервисов — уровень интеграции, конфигурация межсервисного взаимодействия • Consul/Etcd/Zookeeper/SkyDNS • Raft/Paxos/Gossip
  32. 32. DevOps консультанты Архитектура three-tier microservices
  33. 33. DevOps консультанты Микросервисы • Один сервис — одна команда (2 пиццы) • Продуктовое мышление • Умные эндпоинты и глупый транспорт • Децентрализованное управление
  34. 34. DevOps консультанты Достоинства • Любые языки/фреймворки • Небольшие компоненты • Слабая связность • Легкость обновления
  35. 35. DevOps консультанты Недостатки • Сложно выкатывать • Сложно тестировать • Распределенная система • Сложно эксплуатировать • Несогласованная БД
  36. 36. DevOps консультанты Docker и контейнеризация Application Libraries Frameworks Services OS Env
  37. 37. DevOps консультанты Достоинства • Неизменяемые • Стандартная поставка • Долго хранятся • Хороший выбор абстракции
  38. 38. DevOps консультанты Недостатки • Еще один уровень абстракции • Переделка приложений • Активное использование Service Discovery • Плохо подходят для stateful сервисов
  39. 39. DevOps консультанты Наш опытDatacenter Operating System DCOS
  40. 40. DevOps консультанты Это не мистика • Mesos/Marathon https://mesosphere.github.io/ marathon/ • DC/OS https://dcos.io/ • http://kubernetes.io/ • Amazon ECS • Rancher
  41. 41. DevOps консультанты Continuous Delivery
  42. 42. DevOps консультанты Про тестирование • Полная автоматизация тестирования: • юнит-тестирование • интеграционное • нагрузочное • безопасности
  43. 43. DevOps консультанты Смерть ручного тестирования • Слишком долго в мире, где время решает все • Релиз-инженер / DevOps-инженер • Автоматизатор всего
  44. 44. DevOps консультанты Про ML и светлое будущее • ML активно проникает в IT-продукты • Распознавание образов поможет заменить тестировщиков
  45. 45. DevOps консультанты Выводы • Научитесь доставлять изменения за минуты даже в гигантских проектах • Научитесь тестировать все автоматически • Заглядывайте в будущее
  46. 46. DevOps консультанты DevOps сообщество • devopsru.com • http://www.meetup.com/DevOps-Moscow-in-Russian • https://groups.google.com/forum/#!forum/devopsru • http://hangops.ru • http://devopsdeflope.ru • http://rootconf.ru/
  47. 47. DevOps консультанты Дефлопе!
  48. 48. DevOps консультанты
  49. 49. Книги • Проект “Феникс”. Роман о том, как DevOps меняет бизнес к лучшему. Джин Ким и др.
  50. 50. DevOps консультанты Контакты http://express42.com @evtuhovich evtuhovich@gmail.com

×