Що таке DevOps?
DevOps — це сукупність принципів, практик та інструментів, спрямованих на прискорення створення, розгортання й підтримки програмного забезпечення. Завдяки DevOps усі процеси максимально автоматизовані та впорядковані. Такі практики, як безперервне тестування, безперервна інтеграція, безперервне розгортання та інші, дають змогу швидше випускати програмне забезпечення й підвищувати його надійність і якість.
Термін «DevOps» — це поєднання термінів «development» і «operations» (розробка та експлуатація), і це пояснює, чому DevOps забезпечує ідеальну співпрацю різних фахівців, які працюють над одним і тим самим продуктом. Це можуть бути фахівці з розробки, інфраструктури, безпеки, підтримки тощо. Фахівці багато спілкуються та співпрацюють, діляться своїм баченням і досвідом, працюють паралельно, не чекаючи, поки інший завершить свою роботу.
DevOps ґрунтується на методології розробки програмного забезпечення Agile. Її основна суть — робота, поділена на чіткі проміжки часу (ітерації), постійне спілкування із замовником і між членами команди, коротші цикли розробки, часті демонстрації прогресу, постійне вдосконалення тощо.
Що таке AWS? (Amazon Web Services)
AWS — це хмарна платформа, створена гігантом онлайн-комерції Amazon. Хмарні технології відомі можливістю зберігати дані й отримувати до них доступ через всесвітню мережу. Це означає, що вам не потрібно зберігати дані на жорсткому диску вашого ПК — ви матимете до них доступ на віддаленому сервері.
Платформа AWS пропонує широкий вибір хмарних продуктів і послуг. Наприклад, вона пропонує сервери, сховища даних, бази даних, аналітику, мережеві послуги, інструменти для розробки, міграцію даних, послуги безпеки, мобільні сервіси, інструменти для підвищення продуктивності бізнесу та залучення клієнтів тощо.
DevOps на AWS: що таке інструменти AWS DevOps?
Як DevOps і AWS поєднуються, щоб допомогти вашому програмному забезпеченню? AWS повністю підтримує принципи та практики DevOps. В AWS є набір пов’язаних із DevOps інструментів, покликаних підвищити ефективність циклів розробки та підтримки програмного забезпечення. Ось кілька яскравих прикладів таких сервісів AWS DevOps:
AWS CloudFormation
AWS CloudFormation надає розробникам і власникам бізнесу прості способи створення набору ресурсів AWS. Вони можуть надійно й передбачувано керувати цими ресурсами та оновлювати їх. Для цього є зручні шаблони AWS CloudFormation у форматі JSON.
AWS Cloud Development Kit
AWS Cloud Development Kit — платформа для розробки ПЗ із відкритим кодом, яка дає розробникам змогу визначати свою хмарну інфраструктуру в коді, використовуючи звичні мови програмування (TypeScript, Python, C# або Java).
AWS CodePipeline
AWS CodePipeline — сервіс безперервної доставки (continuous delivery), який автоматизує етапи створення, тестування та розгортання програмного забезпечення. Щойно з’являється нове програмне забезпечення, його можна розгорнути автоматично.
AWS CodeCommit
AWS CodeCommit — безпечний і надійний сервіс контролю версій. Він дає командам змогу одночасно працювати з кодом. AWS CodeCommit має захищені репозиторії Git, тому командам не потрібно створювати власні.
AWS CodeBuild
AWS CodeBuild — сервіс безперервної інтеграції. Він компілює вихідний код, виконує тести й створює пакети програмного забезпечення, готові до розгортання. Завдяки йому не потрібно адмініструвати власні сервери.
AWS CodeDeploy
AWS CodeDeploy — сервіс для розгортання ПЗ. Він автоматизує процеси розгортання в таких сервісах, як Amazon EC2, AWS Fargate, AWS Lambda тощо. Завдяки CodeDeploy можна швидко випускати нові функції без простою ПЗ під час їх розгортання.
AWS CodeStar
AWS CodeStar — інструмент, який дає змогу швидко створювати, збирати й розгортати програми на AWS. Він пропонує зручний інтерфейс для керування різними діями з ПЗ. Можна швидше випускати нові функції та керувати доступом до проєкту для різних учасників команди.
AWS Device Farm
AWS Device Farm дбає про якість вебзастосунків і мобільних застосунків, проводячи тести в широкому спектрі браузерів і на реальних мобільних пристроях, доступних через AWS Cloud. Ви заощаджуєте на створенні й адмініструванні власної інфраструктури для тестування.
AWS Lambda
AWS Lambda — сервіс, який запускає код ПЗ у відповідь на певні події. Він автоматично керує залученими до цього ресурсами. Завдяки Lambda можна розгортати код без потреби створювати інфраструктуру.
Amazon EC2 Container Service
Amazon EC2 Container Service вирізняється високою продуктивністю. Процеси створення, розгортання та запуску коду стають простішими.









