Обзор технологии DevOps

Автоматизируйте доставку программного обеспечения, чтобы обеспечить непрерывную поддержку пользователей

Потенциал DevOps

DevOps автоматизирует и ускоряет доставку программного обеспечения, а также повышает надежность ваших процессов и продуктов. Внедрив технологии и методики DevOps, вы сможете быстрее предоставлять преимущества своим клиентам — в виде новых и инновационных продуктов или улучшений к уже существующим.

Определение DevOps

DevOps — это методика, объединяющая специалистов, процессы и технологии, которые имеют отношение к разработке и ИТ, в пяти основных областях: планирование и отслеживание, разработка, сборка и тестирование, доставка, а также мониторинг и эксплуатация. Благодаря DevOps специалисты по разработке, ИТ-операциям, проектированию качества и безопасности могут тесно сотрудничать, объединяя методики, которые раньше были изолированы. Улучшенная координация и совместная работа между представителями этих дисциплин сокращает время от момента внесения изменений в систему до их внедрения в рабочую среду. Кроме того, эта методология обеспечивает соблюдение стандартов безопасности и надежности в процессе работы. Результат — более совершенные продукты, которые доставляются быстрее, повышая уровень удовлетворенности клиентов.

Как модель DevOps применяется на практике?

Команды, состоящие из разнопрофильных специалистов, быстро доставляют свои продукты на рынок, проходя через описанные ниже этапы DevOps.

Планирование и отслеживание

Идентифицируйте и отслеживайте работу, используя такие методики и процессы, как канбан-доски и Agile. Когда работу можно наглядно отследить, заинтересованные лица получают четкое представление о возможностях команды разработки и могут более эффективно планировать задания и определять приоритеты, избегая авральных ситуаций.

Разработка

Пишите код, используя современные системы управления версиями, такие как Git, для безопасной непрерывной интеграции с главной ветвью. Завершив работу над компонентом, разработчик отправляет запрос на вытягивание, и после утверждения происходит слияние изменений с главной ветвью. Старая ветвь при этом удаляется.

Сборка и тестирование

Записывание кода после изменения в Git или другую систему управления версиями запускает процесс автоматической сборки. Код проходит тестирование и проверку — это гарантирует, что ошибки устраняются на раннем этапе разработки, пока разработчик хорошо помнит о них и их исправление менее затратно. Этот процесс автоматической сборки и тестирования называется непрерывной интеграцией (CI). Артефакт, готовый к развертыванию в рабочей среде, — это результат успешной сборки и интеграции, которые создают условия для непрерывной поставки (CD), т. е. возможности развертывания в рабочей среде в любой момент.

Развертывание

После тестирования и проверки каждое изменение развертывается в рабочей среде. Благодаря методике непрерывной поставки финальное развертывание в рабочей среде представляет собой бизнес-решение, которым можно управлять вручную.

Непрерывное развертывание позволяет автоматизировать весь процесс — от фиксации кода до публикации в рабочей среде. При автоматическом развертывании кода ваши клиенты получат доступ к новым компонентам, как только они будут готовы.

Мониторинг и эксплуатация

В рабочей среде мониторинг обеспечивает поступление информации о производительности и шаблонах использования приложения. Оперативное получение подробных данных диагностики позволяет своевременно принимать меры и достичь высокого уровня доступности. Возможность устранять неполадки, возникающие у пользователей, и собирать данные помогает принимать взвешенные бизнес-решения, касающиеся дальнейшей разработки. А благодаря автоматически применяемым политикам соответствия, в которых используется инфраструктура как код и политика как код, вы можете быть уверены, что в ваших приложениях, развернутых в рабочей среде, будут применяться конфигурации требуемого состояния, соответствующие рекомендациям по обеспечению безопасности.

Подробнее…

Начало работы с DevOps в Azure

Azure предоставляет комплексное автоматизированное решение для DevOps, в состав которого входит встроенная система безопасности и средства мониторинга. Выберите простой способ разработки и эксплуатации приложений в облаке. Возможности разработки Azure DevOps интегрируются с любыми средствами на ваш выбор. Вы разработчик Java? Для вас Azure предоставляет интеграцию платформенной функциональности с Eclipse. Если вы разрабатываете приложения с помощью сервера Jenkins, его без проблем можно использовать для развертывания непосредственно в Azure. Объедините специалистов по разработке, ИТ-операциям и проектированию качества, чтобы обеспечить создание, тестирование, развертывание, мониторинг и администрирование приложений в облаке. Для приложений и рабочих нагрузок, в которых предъявляются требования к задержке, нормативные или пользовательские требования, Azure совместно с Azure Stack предоставляет согласованную гибридную среду DevOps. Используйте уже имеющиеся навыки, средства и процессы в среде, в которой должно выполняться ваше приложение.

Непрерывная инновация

Простая и быстрая разработка в облаке

Уделяйте меньше времени построению конвейеров доставки и больше времени — разработке программного обеспечения. Применяйте комплексное решение DevOps для разработки и эксплуатации приложений в облаке независимо от того, совершенствуете вы существующий конвейер доставки или создаете новый с нуля. Используйте Node.js, .NET, Azure DevOps или Jenkins. Azure предоставляет самый простой способ разработки и эксплуатации приложений в облаке.

Повышение уровня надежности и повторяемости

Экономьте время на управлении инфраструктурой и посвящайте его разработке инновационных решений. В Azure предоставляется возможность непрерывного развертывания со встроенной системой безопасности и мониторинга корпоративного уровня. Используйте средства инфраструктуры как кода, например Azure Resource Manager или Terraform, для создания надежных воспроизводимых развертываний, удовлетворяющих стандартам соответствия.

Удобная разработка и развертывание

Используйте средства на свой выбор. В открытый комплексный процесс DevOps можно включить любую цепочку инструментов, включая средства с открытым кодом, на любом этапе рабочего процесса. Используйте в Azure любимые средства — Ansible, Docker, Kubernetes или любые другие.

Клиенты добиваются отличных результатов с помощью DevOps и Azure

Упрощение разработки и доставки

Успешный игрок на рынке электронной коммерции работает на платформе Microsoft Cloud

"Being able to leverage so many off-the-shelf services and tools from Azure enabled us to go from zero to a full- fledged e-commerce marketplace in just about 12 months."

Майк Ханрахан (Mike Hanrahan), технический директор

Узнать больше

Jet.com

Устранение простоя и повышение надежности

Компания GEICO ускоряет внедрение инноваций страхования в облаке

"With DevOps and Azure, we’re able to reduce our new-feature release cycle down to one week, and we think we can even speed that up."

Фикри Ларгет (Fikri Larguet), директор по работе с облачными службами

Узнать больше

Geico

Автоматизация с помощью средств с открытым исходным кодом

Быстрое внедрение инноваций и расширение инфраструктуры

"Azure support for Docker, Kubernetes, Puppet, Terraform, Cassandra, and other open source tools has become very important to us and has really accelerated our move into Azure.”

Роберт Раддак (Robert Rudduck), директор отдела архитектуры и DevOps

Узнать больше

Ambit Energy

Обзор DevOps в Azure

Продолжайте использовать в своем конвейере привычные средства с открытым кодом и сторонние средства. Или воспользуйтесь Azure DevOps, чтобы упорядочить и дополнить комплексную цепочку инструментов DevOps.

Разработка

Интеграция платформенной функциональности Azure с Visual Studio и Visual Studio Code упрощает процесс разработки. Если вы — разработчик Java, воспользуйтесь обширными возможностями Azure в сторонних интегрированных средах разработки, таких как Eclipse и IntelliJ, с помощью набора средств Azure .

Совместно работайте с кодом, компилируйте и предоставляйте программное обеспечение с помощью неограниченных репозиториев Git, а также гибко управляйте рабочим процессом, используя Azure DevOps. Подготавливайте среды для разработчиков за считаные минуты, используя DevTest Labs.

Сборка и тестирование

Настраивайте конвейеры CI/CD и управляйте пакетами с помощью Azure DevOps. Переносите в Azure существующие сборки и конвейеры Jenkins и используйте динамические подключаемые модули агентов, сокращая объем требований к инфраструктуре и затраты на нее.

Обеспечьте своевременную высококачественную поставку, используя службу DevTest Labs, с помощью которой можно настроить тестовые среды и управлять ими. Компилируйте, тестируйте и доставляйте приложения iOS, macOS, Android и Windows быстрее и увереннее благодаря автоматизации их жизненного цикла с помощью Центра приложений Visual Studio. Выполняйте тестирование на тысячах реальных устройств, предоставляйте приложения тест-инженерам бета-версий и магазинам приложений, отслеживайте использование по данным сбоев и аналитическим данным.

Развертывание

Инфраструктура как код фиксирует определения среды в виде декларативного кода в формате JSON или YAML для автоматической подготовки и настройки. Для надежной подготовки повторяющихся сред можно использовать Azure Resource Manager или Terraform. Служба автоматизации Azure и такие средства, как Ansible, Chef и Puppet, обеспечивают управление автоматизацией и настройкой.

А благодаря Azure DevOps Release Management можно автоматизировать тестирование и доставку программного обеспечения в несколько сред вплоть до реализации в рабочей среде после утверждения. Также можно выполнять развертывание непосредственно из конвейеров Jenkins на виртуальных машинах, в веб-приложениях и Службе контейнеров Azure.

Мониторинг и эксплуатация

Отслеживайте работоспособность инфраструктуры и выполняйте интеграцию с существующими панелями мониторинга, например Grafana или Kibana, или порталом Azure с помощью платформы Azure Monitor. Быстро подключайте, собирайте и преобразуйте данные журналов из различных расположений, получая аналитические сведения для принятия необходимых мер благодаря Log Analytics. Диагностируйте проблемы и оптимизируйте приложения с помощью Application Insights.

Обеспечьте соответствие подготовленной инфраструктуры требованиям благодаря службе Политика Azure или Chef Automate. Используя их в сочетании с центром безопасности Azure, вы снизите уровень риска и сможете оперативно выявлять и устранять уязвимости.

Согласованная практика DevOps в гибридном облаке

Azure Stack — это расширение Azure, позволяющее добавить облачные возможности в локальную среду. Доставляйте службы Azure из своего центра обработки данных, соблюдая баланс между гибкостью и контролем, чтобы обеспечить по-настоящему согласованные гибридные облачные развертывания.

Azure DevOps Server предоставляет тот же полный набор служб и возможностей DevOps, что и Team Services, но при этом их можно использовать в локальной среде.

Видео

Agile в Майкрософт

Просмотреть видео

Видео

Знакомство с Центром приложений Visual Studio

Просмотреть видео

Документация

Azure DevOps Projects для GitHub

Обзор документации

Приступите к работе с DevOps на своих условиях

Начать реализацию своего решения DevOps в Azure очень просто. Автоматически интегрируйте используемый конвейер, выполняйте развертывание на любой платформе и используйте мониторинг с помощью Azure DevOps Projects.

Если вы используете средства с открытым кодом и сторонние средства, попробуйте решения Azure DevOps. Ознакомьтесь с проверенными методиками работы и архитектурой решений для реализации собственных решений DevOps в Azure.