Русская Википедия:Container Linux
Шаблон:Карточка ОС Container Linux (ранее CoreOS Linux) — легковесная операционная система с открытым исходным кодом на базе ядра Linux. Предназначена для создания инфраструктуры компьютерных кластеров, особое внимание уделено автоматизации, упрощению внедрения приложений, безопасности, надежности и масштабируемости. В качестве операционной системы Container Linux предоставляет лишь минимальную функциональность, необходимую для развертывания приложений внутри программных контейнеров, средства обнаружения сервисов и передачи настроек[1][2][3][4].
Container Linux является форком Chrome OS. Основа Container Linux была создана с помощью SDK из проекта Chromium OS, к которой добавлена новая функциональность. Container Linux поддерживает оборудование, часто используемое в серверах[3][5]. По состоянию на 2020 год разработка Container Linux прекращена.
Особенности
В Container Linux нет пакетного менеджера, все устанавливаемые приложения должны работать внутри собственных контейнеров, которые реализованы с помощью Docker на базе Linux Containers (LXC). LXC позволяет виртуализировать несколько независимых Linux контейнеров в рамках одного компьютера с Linux. Разделение ресурсов производится между несколькими программами пользовательского уровня без использования гипервизоров и полноценных виртуальных машин. Реализация использует подсистему ядра cgroups для изоляции, учёта и ограничения ресурсов (использование процессора, памяти, дискового и сетевого ввода-вывода и т. п.) для группы процессов[1][4][6].
В качестве демона инициализации (init) в Container Linux используется systemd, тесно интегрированный с сервисами Container Linux[1][7].
Обновления
В качестве меры повышения безопасности и надежности, Container Linux использует FastPatch — схему с двумя корневыми файловыми системами, одна из которых является рабочей и защищена от записи. Обновления устанавливаются на вторую файловую систему, которая становится рабочей после перезагрузки или исполнения kexec. Таким образом обеспечивается возможность быстро вернуться к предыдущей версии. Каждый раздел может быть криптографически подписан для повышения безопасности. Изменяемая часть файловой иерархии хранится на разделе «state», который занимает все оставшееся дисковое пространство[1][4][8][9].
Система распределения обновлений Container Linux основана на открытом проекте компании Google Omaha. Для управления обновлениями кластеров Container Linux предоставляет веб-интерфейс CoreUpdate, который позволяет делить узлы кластера на группы с различными политиками обновления, предоставляет статистику по версиям, распределяет обновления[8][10][11].
Инфраструктура для кластеров
На каждом компьютере кластера работает демон etcd, который позволяет обновлять настройки узлов. Взаимодействие с etcd осуществляется с помощью API на базе JSON и протокола HTTP, либо через утилиту командной строки etcdctl [1][4][12][13][14].
Демон fleet управляет программами systemd на уровне всего кластера. Взаимодействие с ним осуществляется с помощью утилиты fleetctl. Данные между узлами передаются поверх SSH туннелей[15][16][17][18].
Оба демона etcd и fleet написаны на языке Golang (Go) и распространяются под открытой лицензией Apache License 2.0[19][20].
Установка
Container Linux может быть постоянно установлена на жесткий диск сервера, загружаться через PXE или iPXE[21][22][23]. Также Container Linux поддерживает установку на таких системах аппаратной виртуализации как Amazon EC2, DigitalOcean, Google Compute Engine, OpenStack, QEMU/KVM, Vagrant, VMware[4][24][25].
Мнения
LWN.net написал обзор на CoreOS в 2014 году[26]:
« |
Для тех, кто собирает большие операционные системы — веб-приложения, являющиеся ярким примером — у CoreOS, похоже, будет много интересной функциональности. Это должно позволить приложениям такого типа расти, и уменьшаться по мере необходимости по требованию, а также обеспечивать стабильную платформу, где обновления не являются головной болью. Для «массовой компиляции серверов» CoreOS, или что-то со многими из тех же характеристик, выглядит как будущее. | » |
— Анонимус |
См. также
- Сравнение виртуальных машин
- Виртуализация на уровне операционной системы
- Software as a service (SaaS)
- Виртуализация
Примечания
Ссылки
- Шаблон:Official website
- CoreOS documentation Шаблон:Wayback
- First glimpse at CoreOS Шаблон:Wayback
- CoreOS: Linux for the cloud and the datacenter Шаблон:Wayback
- CoreOS fleet architecture Шаблон:Wayback
- Official CoreOS images available on Google Compute Engine Шаблон:Wayback
- CoreOS source code on GitHub Шаблон:Wayback
- etcd source code on GitHub Шаблон:Wayback
- fleet source code on GitHub Шаблон:Wayback
- Шаблон:DistroWatch
Шаблон:Linux Шаблон:UNIX-like Шаблон:Аспекты операционных систем
- ↑ 1,0 1,1 1,2 1,3 1,4 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ 3,0 3,1 Шаблон:Cite web
- ↑ 4,0 4,1 4,2 4,3 4,4 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ 8,0 8,1 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite webШаблон:Недоступная ссылка
- ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокlicense-etcd
не указан текст - ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- Русская Википедия
- Используется шаблон Цитата
- Страницы с цитатами
- Виртуализация
- Дистрибутивы Linux
- Программное обеспечение для Linux
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Википедия
- Статья из Википедии
- Статья из Русской Википедии
- Страницы с ошибками в примечаниях