Loading AI tools
З Вікіпедії, вільної енциклопедії
CoreOS — відкрита легковагова операційна система, базована на ядрі Linux і побудована для забезпечення інфраструктури масового розгортання серверних і кластерних систем, і націлена на автоматизацію, просте розгортання застосунків, безпеку, надійність і масштабованість. Як операційна система CoreOS забезпечує тільки мінімальну функціональність, потрібну для розгортання застосунків усередені програмних контейнерів, разом з вбудованими механізмами для відкриття служб та спільного конфігурування.[5][1][2][6]
Розробник | Alex Polvi, Brandon Philips, Michael Marineau[1][2] та інші |
---|---|
Родина ОС | Unix-подібна |
Робочий стан | у розробці |
Вихідна модель | відкрите програмне забезпечення |
Випущено у виробництво | 3 жовтня 2013 |
Останній випуск | 2135.5.0 / 2 липня, 2019 |
Цільовий ринок | сервери і кластери |
Тип ядра | монолітне (ядро Linux) |
Ліцензія | Apache License 2.0[3][4] |
coreos.com |
Напрацювання проекту поширюються під ліцензією Apache 2.0.
CoreOS, не схожа на традиційні Linux-дистрибутиви, є відгалуженням (форком) Chrome OS, використовуючи її як основу для додавання нової функціональності.
Система містить тільки мінімальний набір компонентів, достатній для виконання ізольованих контейнерів (cgroups + namespaces), які в свою чергу містять довільну начинку для запуску необхідних серверних застосунків. По суті, до складу базової системи входить тільки ядро Linux, системний менеджер systemd і ряд службових сервісів для управління конфігурацією і установки оновлень. Готові базові образи CoreOS підготовлені для запуску c використанням PXE-завантаження, Amazon EC2, Google Compute Engine, OpenStack, VirtualBox, VMware, Vagrant і QEMU/KVM.
Системний розділ монтується в режимі тільки для читання і не змінюється в процесі роботи. Для установки оновлень використовується підхід ChromeOS, при якому одночасно створюється два дискових розділи. Один з розділів є активним, а другий використовується для копіювання оновлення, після установки якого активним стає другий розділ, а перший залишається для установки наступного оновлення і надає можливість швидкої відміни змін. Таким чином, при кожному оновленні розділи міняються місцями. Оновлення можуть встановлюватися автоматично, за аналогією з ChromeOS. За задумом розробників, оновлення серверів на базі CoreOS повинно проводитися так само просто, як в даний час здійснюється оновлення браузерів.
Замість традиційних пакетних менеджерів пропонується використовувати попередньо ізольовані контейнери, що містять всі необхідні компоненти для виконання того чи іншого серверного застосунку. Упаковка застосунків у довільні відокремлені контейнери дозволяє не замислюватися про особливості базової ОС і вільно переносити контейнери від однієї ОС до іншої і з сервера на сервер. Як система керування контейнерами підтримується Docker, що надає засоби для автоматизації створення ізольованих оточень для запуску довільних процесів і можливості з перенесення і клонування оточень на інші сервери. При цьому Docker не є обов'язковим. Присутня також можливість створення контейнерів вручну або використання вже готових образів, придатних для використання з інструментом LXC.
Іншою особливістю CoreOS є засоби автоматичного визначення доступних сервісів, використання єдиної конфігурації для групи серверів та об'єднання набору серверів у взаємозалежні кластерні системи. Для обміну та управління конфігурацією використовується система etcd, що розвивається спеціально для CoreOS. Код etcd написаний на мові Go і поширюється під ліцензією Apache. Etcd являє собою високонадійне сховище параметрів конфігурації у формі ключ/значення. Для доступу до конфігурації надається простий інтерфейс, заснований на використанні HTTP і JSON (запити можуть відправлятися за допомогою утиліти curl або спеціальної утиліти etcdctl). Автентифікація виконується на основі SSL-ключів. Сховище конфігурації і логи реплікуються на всі вузли і підтримуються в синхронізованому стані з використанням протоколу Raft.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.