Як Google використовує DevOps?

Google та DevOps

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

Організації звертаються до DevOps через зростаючу кількість доказів того, що методи DevOps дійсно допомагають створювати програмне забезпечення швидше, надійніше та з меншою кількістю помилок. Всесвітньо відома компанія Google не є виключенням.

Доведено, що методи DevOps призводять до підвищення продуктивності ІТ. Ця більш висока продуктивність забезпечує кращі бізнес-результати, що вимірюється прибутковістю та часткою ринку. 

Впровадження DevOps у компанії Google

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

Загальною вимогою до впровадження DevOps є хмарна інфраструктура або хмарні обчислення. Більшість компаній увійшли у світ хмарних обчислень за допомогою хмарної міграції, яка включає повторний хостинг або рефакторинг свого існуючого додатка на хмарній платформі, такій як Google Cloud Platform (GCP).

Як тільки локальне обладнання буде замінено на безсерверну хмарну інфраструктуру, компанії почнуть інтегрувати різні хмарні рішення в свою інфраструктуру. Наприклад, екосистема Google Cloud складається з сотень хмарних рішень для всього: від розробки та моніторингу додатків до штучного інтелекту та аналізу великих даних. Більшість з цих рішень є повністю керованими сервісами, які допомагають знизити навантаження на розробників за рахунок автоматизації різних процесів.

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

Ще однією важливою вимогою до DevOps у компанії Google є культура інновацій та спільної роботи. На відміну від традиційних архітектур, хмарні обчислення надають розробникам набагато більше можливостей (і інструментів) для експериментів та спільної роботи, але все це не має значення, якщо реалізація не надає пріоритету інноваціям та співпраці.

Впровадження DevOps на GCP

Послідовність

Однією з основних сильних сторін Google Cloud Platform є її екосистема послуг із сотнями хмарних рішень. Ці послуги можна використовувати двома способами. По-перше, розробнику більше не потрібно шукати додаткові інструменти розробки програм за межами екосистеми Google, за винятком кількох сценаріїв. Це дуже цінно, оскільки заощаджує гроші (ліцензійні збори), час та зусилля, що витрачаються на забезпечення сумісності, оскільки все можна інтегрувати з коробки. По-друге, використання однієї й тієї ж послуги у різних командах забезпечує рівень узгодженості у створенні додатків, що підвищує рівень професіоналізму і знижує витрати на навчання.

Хмарна збірка

Cloud Build – це повністю безсерверна платформа, яка дозволяє розробникам створювати потужні конвеєри безперервної інтеграції/безперервного розгортання (CI/CD) з повним контролем за робочими процесами. Для нього не потрібне інше спеціальне програмне забезпечення. Розробники можуть тестувати та розгортати на різних платформах, включаючи Compute Engine, Kubernetes, Firebase та інші. 

Реєстр контейнерів

Google Container Registry – це реєстр Docker, вбудований в екосистему GCP. Крім безпечної платформи управління образами контейнерів, GCR має ключові функції, які відрізняють його від інших реєстрів Docker. Наприклад, однією з найбільш корисних функцій GCR є сканування вразливостей, що дозволяє розробникам виконувати поглиблене сканування бази даних, що допомагає виявити будь-які вразливості в системі безпеки на ранніх етапах розробки. GCR високо автоматизований, і зображення автоматично відправляються в GCR, коли розробник передає код в репозиторій, такий як Google Cloud Source Repositories або Github.

Магістральна розробка

Розробка на основі магістралі — популярний шаблон, при якому розробники працюють разом, поділяючи свої робочі навантаження на ще дрібніші завдання/робочі навантаження та об’єднуючи всі ці невеликі завдання у «магістраль» кілька разів на день. Розробка на основі магістралі відрізняється від інших шаблонів спільної роботи тим, що задач менше, і тому злиття відбуваються набагато частіше. Розробка на основі магістралі є розширенням конвеєра безперервної інтеграції і тому створюється за допомогою Google Cloud Build. 

Google висуває досить високі вимоги на посаду DevOps Engineer: 5 років досвіду практичного проектування DevOps, досвід розробки на Python або Java, практичний досвід роботи з Kubernetes і Docker у великомасштабних публічних хмарних середовищах, здатність швидко вивчати нові будь-які існуючі технології, відмінні навички усного та письмового спілкування англійською мовою, експертні навички адміністрування Linux і мережі для усунення несправностей і відстеження симптомів до першопричини, досвід використання різноманітних технологій з відкритим кодом і хмарних сервісів, досвід роботи з рішеннями автоматизації інфраструктури (Ansible, Chef, Puppet тощо). 

Отримати практичні навички можна на онлайн-курсі школи Production Ready!

Интересная статья. Поделись с друзьями!

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *