Перейти к главному контенту

DevOps и AWS

Инструментальные средства и инфраструктурные ресурсы для практиков DevOps

Обзор

DevOps и AWS

AWS предлагает набор гибких сервисов, с помощью которых компании могут быстрее и надежнее создавать и доставлять продукты, используя AWS и практики DevOps. Эти сервисы упрощают выделение инфраструктуры и управление ею, развертывание прикладного кода, автоматизацию процесса выпуска ПО и мониторинг функционирования приложений и инфраструктуры.

DevOps – это сочетание культурных принципов, подходов и средств, которое улучшает способность компаний создавать приложения и сервисы на высокой скорости. С DevOps разработка и оптимизация продуктов происходит быстрее, чем при использовании традиционных процессов работы над программным обеспечением и управления инфраструктурой. Благодаря такой скорости компании могут повысить уровень обслуживания клиентов и более эффективно конкурировать на рынке.

Дополнительные ресурсы: 

Что такое DevOps?

Блог DevOps

Решения партнеров

Ресурсы

Библиотека разработчиков Amazon

Подробнее о DevOps

Почему именно AWS для DevOps?

Быстрое начало работы

Любой сервис AWS готов к использованию, если у вас есть аккаунт AWS. Настройка или установка ПО не требуется.

Полностью управляемые сервисы

Эти сервисы помогут вам быстрее воспользоваться преимуществами ресурсов AWS. Вам меньше придется беспокоиться о настройке, установке ПО и работе инфраструктуры. Это позволит сосредоточиться на вашем основном продукте.  

Созданы для масштабирования

Используя сервисы AWS, вы можете управлять одним инстансом или выполнить масштабирование до тысяч инстансов. Эти сервисы помогут вам извлечь максимальную пользу из гибких вычислительных ресурсов за счет простоты их выделения, конфигурирования и масштабирования.

Возможность программного управления

Вы можете использовать каждый сервис с помощью интерфейса командной строки или с помощью API и SDK. Вы можете также моделировать и выделять ресурсы AWS и всю инфраструктуру на AWS с помощью декларативных шаблонов сервиса AWS CloudFormation.

Почему именно AWS для DevOps?

Автоматизация

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

Безопасность

Используйте сервис AWS Identity and Access Management (IAM) для настройки разрешений и политик пользователей. Это обеспечит вам детальное управление тем, какие пользователи могут получить доступ к вашим ресурсам и как именно.

Огромное сообщество партнеров

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

Оплата по факту использования

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

Инструментарий для DevOps на AWS.

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

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

Инструменты AWS для разработчиков помогают безопасно хранить и обновлять исходный код приложения, а также автоматически создавать, тестировать и развертывать приложение в AWS или локальной среде. Начните работу с AWS CodePipeline, чтобы создать рабочий процесс непрерывной интеграции или непрерывной доставки с использованием сервисов AWS CodeBuild, AWS CodeDeploy и других инструментов либо применяйте каждый сервис отдельно.

Инструменты AWS для разработчиков

Рабочие процессы выпуска ПО

AWS CodePipeline

AWS CodePipeline – это сервис непрерывной интеграции и непрерывной доставки для быстрого и надежного обновления приложений и инфраструктуры. CodePipeline выполняет компоновку, тестирование и развертывание вашего кода каждый раз при внесении в него изменений, используя определяемые вами модели процесса выпуска. Это позволяет осуществлять быстрое и надежное выполнение различных возможностей и обновлений.

Подробнее

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

AWS CodeBuild

AWS CodeBuild – это полностью управляемый сервис создания сборок, выполняющий компиляцию исходного кода, проводящий тестирование и формирующий готовые к развертыванию пакеты программного обеспечения. Благодаря CodeBuild больше не нужно распределять и масштабировать собственные серверы сборок, а также обеспечивать управление ими. CodeBuild непрерывно масштабируется и способен одновременно обрабатывать несколько сборок, поэтому сборки не будут ждать в очереди.

Подробнее

Автоматизация развертывания

AWS CodeDeploy

AWS CodeDeploy автоматизирует развертывание программного кода в любом инстансе, включая инстансы Amazon EC2 и локальные серверы. AWS CodeDeploy упрощает быстрый выпуск новых возможностей, помогает избежать простоев во время развертывания и берет на себя все сложности при обновлении приложений.  

Подробнее

Instacart

Компания Instacart использует AWS CodeDeploy для автоматизации развертывания всех своих фронтенд- и бэкенд-сервисов. Использование AWS CodeDeploy позволяет разработчикам компании Instacart сосредоточиться на своих продуктах и меньше беспокоиться о процессах развертывания.

Missing alt text value

lululemon athletica

Компания lululemon athletica использует различные сервисы AWS для создания полностью автоматизированной системы непрерывной интеграции и доставки. lululemon развертывает артефакты, распределяемые через Amazon S3, с помощью AWS CodePipeline. Начиная с этого этапа артефакты развертываются в AWS Elastic Beanstalk.

Missing alt text value

Микросервисы

Создавайте и развертывайте архитектуру микросервисов с использованием контейнеров или бессерверных вычислений.

Производственная платформа Docker

Amazon Elastic Container Service

Amazon Elastic Container Service (ECS) – это высокопроизводительный сервис управления контейнерами с широкими возможностями масштабирования. Он поддерживает контейнеры Docker и позволяет с легкостью запускать приложения в управляемом кластере инстансов Amazon EC2.

Подробнее

Бессерверные вычисления

AWS Lambda

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

Подробнее

Coursera

Компания Coursera использует Amazon Elastic Container Service для управления архитектурой своих приложений на основе микросервисов. Coursera теперь может развертывать изменения ПО за минуты, а не за часы, как в средах с изолированными ресурсами.

Missing alt text value

Localytics

Localytics использует сервис AWS Lambda, чтобы создавать микросервисы для импорта файлов Amazon Simple Storage Service и потоков данных Kinesis, в сумме образующих около 100 миллиардов точек данных ежемесячно.

Missing alt text value

Инфраструктура как код

Выделяйте и конфигурируйте ресурсы инфраструктуры AWS и управляйте ими с помощью кода и шаблонов. Проводите мониторинг инфраструктуры и обеспечивайте ее соответствие требованиям.

Выделение инфраструктуры с помощью шаблонов

AWS CloudFormation

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

Подробнее

Управление конфигурациями с помощью Chef

AWS OpsWorks

AWS OpsWorks – это сервис управления конфигурацией на базе Chef, платформы автоматизации, которая рассматривает конфигурацию серверов в виде кода. OpsWorks использует Chef для автоматизации конфигурации, развертывания и управления серверами в инстансах Amazon Elastic Compute Cloud (Amazon EC2) или в локальных вычислительных средах. OpsWorks предлагает два решения: AWS Opsworks для Chef Automate и Стеки AWS OpsWorks.

Подробнее

Simple

Компания Simple создала свою банковскую интернет-платформу на AWS. С помощью AWS CloudFormation компания Simple смогла автоматизировать процессы, на выполнение которых раньше уходили месяцы, и сосредоточиться на обслуживании клиентов, а не на управлении ИТ-инфраструктурой.

Смотреть видео

Toronto Star

Toronto Star – крупнейший канадский сайт новостей. С помощью AWS OpsWorks компания Toronto Star уменьшила время развертывания своего приложения для управления контентом с 3 часов до 20 минут, сократив расходы и улучшив продуктивность.

Читать пример применения

Управление конфигурацией

Менеджер систем AWS

AWS Systems Manager – это сервис управления, позволяющий автоматически составлять перечни ПО, применять исправления ОС, создавать образы систем и настраивать операционные системы Windows и Linux. Эти возможности помогают создавать и отслеживать конфигурации систем, предотвращать отклонения и обеспечивать соответствие требованиям для конфигураций инстансов EC2 и локальных машин.

Подробнее

Политика как код

AWS Config 

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

Подробнее

Prezi

Компания Prezi использует сервис AWS Config для отслеживания изменений в конфигурации ресурсов компании на AWS. AWS Config посылает оповещение в случае создания, изменения или удаления ресурсов. Prezi использует правила AWS Config для управления выделением и конфигурированием своих ресурсов на AWS.

Читать пример применения

Подробнее

Создавайте инфраструктуру с помощью шаблонов AWS CloudFormation, вызывайте Менеджер систем AWS для отслеживания своего реестра программного обеспечения или для конфигурирования инстансов, автоматически исправляйте любые отклонения конфигурации с помощью AWS Config.

Мониторинг и ведение журналов

Записывайте журналы и выполняйте мониторинг качества функционирования приложения и инфраструктуры в режиме, близком к реальному времени. 

Мониторинг облака и сети

Amazon CloudWatch 

Amazon CloudWatch – это сервис мониторинга облачных ресурсов AWS и приложений, работающих на AWS. Amazon CloudWatch можно использовать для сбора и отслеживания метрик, накопления и анализа файлов журналов, создания предупреждений, а также автоматического реагирования на изменения ресурсов AWS.

Подробнее

Распределенное отслеживание

AWS X-Ray

AWS X-Ray помогает разработчикам анализировать свои продукты и распределенные приложения (например, на базе архитектуры микросервисов), а также устранять ошибки. С помощью X-Ray можно оценить производительность своего приложения и базовых сервисов, чтобы найти и устранить первопричину проблем производительности и ошибок.

Подробнее

The Globe and Mail

The Globe and Mail – это самая популярная газета Канады, еженедельная электронная аудитория которой составляет 4,7 миллиона человек. Газета использует Amazon CloudWatch для мониторинга функционирования своих систем и внедрила принципы DevOps в автоматизацию инфраструктуры.

Читать пример применения

Отслеживание действий и использования вызовов API

AWS CloudTrail

AWS CloudTrail – это веб-сервис, который записывает вызовы AWS API для вашего аккаунта и предоставляет вам файлы журналов. Записанная информация включает в себя идентификацию источника, совершившего вызов API, время вызова API, IP‑адрес источника, совершившего вызов API, параметры запроса, а также элементы ответа, возвращенные сервисом AWS.

Подробнее

Доступность приложений

Amazon DevOps Guru

Amazon DevOps Guru – это сервис на основе машинного обучения (ML), который повышает производительность и доступность приложений. DevOps Guru помогает обнаруживать аномальное поведение приложений, чтобы вы могли выявлять эксплуатационные проблемы задолго до того, как они повлияют на ваших клиентов.

Подробнее

Slack

Slack предоставляет платформу передачи сообщений для унификации разнообразных коммуникационных сервисов. Платформа Slack работает в AWS, пользуясь преимуществами широкого спектра облачных сервисов. Компания использует AWS CloudTrail для мониторинга журналов, имеющих отношение к инстансам Amazon EC2.

Читать пример применения

Платформа как услуга

Разворачивайте интернет-приложения без необходимости выделения инфраструктуры и стека приложений, а также управления ими.

Запуск интернет‑приложений и управление ими

AWS Elastic Beanstalk

AWS Elastic Beanstalk – это простой в использовании сервис для развертывания и масштабирования веб-приложений и сервисов, разработанных с использованием Java, .NET, PHP, Node.js, Python, Ruby, Go и Docker, на знакомых серверах, таких как Apache, Nginx, Passenger и IIS. Достаточно загрузить код, и Elastic Beanstalk автоматически выполнит развертывание, взяв на себя выделение ресурсов, балансировку нагрузки, автоматическое масштабирование и мониторинг работоспособности приложений. При этом пользователь сохраняет полный контроль над ресурсами AWS, используемыми для приложения, и в любое время может получить к ним доступ.

Подробнее

Zillow

Для улучшения производительности и повышения масштабируемости своей системы обработки изображений и доставки контента Zillow перенесла ее на AWS. Компания использует Elastic Beanstalk для запуска Python Imaging Library со специальным кодом для выполнения заданий по обработке изображений.

Читать пример применения

Rachio

Компания Rachio является создателем Smart Sprinkler Controller, регулятора подачи воды при орошении, работающего на базе WiFi. Rachio использует сервис AWS Elastic Beanstalk для развертывания своего веб-сайта, приложений и API, а также управления ими. 

Missing alt text value

Управление версиями

Размещайте безопасные, высокомасштабируемые репозитории Git в облаке. 

Размещение частных репозиториев Git

AWS CodeCommit

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

Подробнее

Edmunds.com

Используя AWS CodeCommit, разработчики веб-сайта Edmunds.com получают масштабируемый высокодоступный сервис управления исходным кодом, который снижает затраты и упрощает администрирование.

Missing alt text value

Начало работы

Начать работу с AWS и DevOps