MOUNTAIN VIEW, CA/USA - July 14, 2014: Exterior view of a Google headquarters building. Google is an American multinational corporation specializing in Internet-related services and products
Ймовірно, ви вже чули про операційну систему від Google — Chrome OS, але є в корпорації й інші розробки. Наприклад, усередині Google використовується власний дистрибутив Linux для настільних ПК — gLinux.
«Саморобний» дистрибутив Linux у різних версіях використовується в компанії вже протягом десяти років. Першою версією була Goobuntu — як ви могли здогадатися з назви, вона ґрунтується на Ubuntu. Її використовували до 2018 року, коли запустили новий дистрибутив — gLinux на основі Debian.
Навіщо було позбавлятися Goobuntu? Як пояснив Google, випуск Ubuntu раз на два роки з довгостроковою підтримкою означав необхідність вручну оновлювати кожен комп’ютер у компанії — понад 100 тисяч пристроїв — до дати закінчення терміну служби кожної версії ОС.
Додайте до цього трудомістку необхідність повного налаштування комп’ютерів інженерів після оновлення. Як розумієте, це серйозний головний біль. Тому Google вирішив, що це обходиться компанії надто дорого. Крім того, установка Goobuntu на всі робочі машини зазвичай займала більшу частину року. З дворічним вікном підтримки залишався лише один рік вільного користування, після чого доводилося знову проходити той же процес на всіх машинах.
“Весь цей процес був величезним стресом для нашої команди, тому що ми отримували звіти на сотні помилок з проханнями про допомогу в крайніх випадках”, — згадують у Google.
Коли Google набридло постійно поратися з оновленнями Goobuntu, компанія частково перейшла на Debian Linux. Інженери корпорації створили ковзаючий дистрибутив Debian: GLinux Rolling Debian Testing (Rodete). Його основна ідея була в тому, щоб надавати останні оновлення та виправлення в міру їх створення та готовності до роботи, а не в якісь суворі часові рамки. До таких дистрибутивів належать Arch Linux, Debian Testing та openSUSE Tumbleweed.
Звичайно, для Google першою метою було вирватися із дворічного циклу обов’язкового оновлення ОС. Як показала практика, перехід до безперервної інтеграції/безперервного розгортання спрацювали добре: стало легше контролювати і відкочувати систему, якщо щось йде не так.
Щоб усі нововведення працювали без зайвої крові, поту та сліз, Google створила систему Sieve. Так, вона одна змогла автоматизувати виробничий конвеєр безперервного дистрибутива настільки, що сьогодні в компанії потрібен лише один інженер для обслуговування програми, що використовується більш ніж 100 тис. користувачів! Це чергова посада, що чергується між членами команди.
Ілюстрація
Як це працює? Коли Sieve виявляє нову версію пакета Debian, вона запускає нову збірку. Ці пакети об’єднані в групи, оскільки окремі пакети часто необхідно оновлювати разом. Після створення групи Google запускає віртуалізований набір тестів, щоб переконатися, що основні компоненти та робочі процеси розробників не порушені. Потім кожна група тестується окремо з повним встановленням системи, завантаженням та запуском локального набору тестів. Збірка пакета завершується протягом декількох хвилин, хоча тестування може тривати до години.
Як тільки збірка завершиться, всі нові пакети будуть об’єднані з найновішим пулом пакетів gLinux. Потім, коли Google вирішує, що час випустити його у виробництво, команда робить знімки цього пулу. Нарешті, він випускає нову версію ОС без усіляких багатоступеневих альфа-, бета-версій та загальнодоступних випусків.
Завдяки ковзаючому графіку випусків Google тепер може швидко усувати недоліки в системі безпеки всіх комп’ютерів без шкоди для стабільної роботи. А раніше інженерам доводилося ретельно переглядати кожну пораду з безпеки Debian, щоб переконатися, що виправлення увімкнено.
Крім того, покращений набір тестів Google та інтеграційні тести з ключовими командами, які запускають критичні системи розробників, також дали більш стабільний досвід використання дистрибутива Linux. А прагнення автоматизувати весь процес значно зменшило навантаження та стрес усередині команди.
Швейцарська компанія з кібербезпеки Prodaft запустила ініціативу під назвою «Продай своє джерело», в рамках якої…
Презентовано JRuby 10 — останню версію реалізації мови програмування Ruby на основі JVM. Вона має…
Компанія Ілона Маска xAI презентувала новий онлайн-інструмент під назвою Grok Studio. Він призначений для редагування…
В освітній платформі «Мрія» планують впровадити генератор тестів на основі штучного інтелекту. Про це в…
OpenAI працює над власною X-подібною соціальною мережею, згідно з кількома джерелами, знайомими з цим питанням,…
Команда Unit 42 з Palo Alto Networks помітила чергову активність хакерської групи з КНДР, яка…