Container Linux

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая KonstantinSer (обсуждение | вклад) в 11:23, 25 ноября 2016 (Инфраструктура для кластеров). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
CoreOS
Семейство ОС Unix-like
Исходный код открытый
Первый выпуск 3 октября 2013
Последняя версия 899.15.0[1] (5 апреля 2016)
Последняя тестовая версия 1010.1.0 (7 апреля 2016)
Поддерживаемые платформы x86-64
Тип ядра монолитное (Linux kernel)
Лицензия Apache License 2.0[2][3]
Состояние В разработке
Веб-сайт coreos.com
Логотип Викисклада Медиафайлы на Викискладе

CoreOS — легковесная операционная система с открытым исходным кодом на базе ядра Linux. Предназначена для создания инфраструктуры компьютерных кластеров, особое внимание уделено автоматизации, упрощению внедрения приложений, безопасности, надежности и масштабируемости. В качестве операционной системы CoreOS предоставляет лишь минимальную функциональность, необходимую для развертывания приложений внутри программных контейнеров, средства обнаружения сервисов и передачи настроек.[4][5][6][7]

CoreOS является форком Chrome OS. Основа CoreOS была создана с помощью SDK из проекта Chromium OS, к которой добавлена новая функциональность. CoreOS поддерживает оборудование, часто используемое в серверах.[6][8] По состоянию на осень 2014 CoreOS активно дорабатывается.

Особенности

В CoreOS нет пакетного менеджера, все устанавливаемые приложения должны работать внутри собственных контейнеров, которые реализованы с помощью Docker на базе Linux Containers (LXC). LXC позволяет виртуализировать несколько независимых Linux контейнеров в рамках одного компьютера с Linux. Разделение ресурсов производится между несколькими программами пользовательского уровня без использования гипервизоров и полноценных виртуальных машин. Реализация использует подсистему ядра cgroups для изоляции, учёта и ограничения ресурсов (использование процессора, памяти, дискового и сетевого ввода-вывода и т. п.) для группы процессов.[4][7][9]

В качестве демона инициализации (init) в CoreOS используется systemd, тесно интегрированный с сервисами CoreOS.[4][10]

Обновления

В качестве меры повышения безопасности и надежности, CoreOS использует FastPatch — схему с двумя корневыми файловыми системами, одна из которых является рабочей и защищена от записи. Обновления устанавливаются на вторую файловую систему, которая становится рабочей после перезагрузки или исполнения kexec. Таким образом обеспечивается возможность быстро вернуться к предыдущей версии. Каждый раздел может быть криптографически подписан для повышения безопасности. Изменяемая часть файловой иерархии хранится на разделе «state», который занимает все оставшееся дисковое пространство.[4][7][11][12]

Система распределения обновлений CoreOS основана на открытом проекте компании Google Omaha. Для управления обновлениями кластеров CoreOS предоставляет веб-интерфейс CoreUpdate, который позволяет делить узлы кластера на группы с различными политиками обновления, предоставляет статистику по версиям, распределяет обновления.[11][13][14]

Инфраструктура для кластеров

На каждом компьютере кластера работает демон etcd, который позволяет обновлять настройки узлов. Взаимодействие с etcd осуществляется с помощью API на базе JSON и протокола HTTP, либо через утилиту командной строки etcdctl .[4][7][15][16][17]

Демон fleet управляет программами systemd на уровне всего кластера. Взаимодействие с ним осуществляется с помощью утилиты fleetctl. Данные между узлами передаются поверх SSH туннелей.[18][19][20][21]

Оба демона etcd и fleet написаны на языке Golang (Go) и распространяются под открытой лицензией Apache License 2.0.[3][22]

Установка

CoreOS может быть постоянно установлена на жесткий диск сервера, загружаться через PXE или iPXE.[23][24][25] Также CoreOS поддерживает установку на таких системах аппаратной виртуализации как Amazon EC2, DigitalOcean, Google Compute Engine, OpenStack, QEMU/KVM, Vagrant, VMware.[7][26][27]

См. также

Примечания

  1. CoreOS Release Notes.
  2. CoreOS Pilot Agreement. coreos.com (13 марта 2014). Дата обращения: 26 марта 2014.
  3. 1 2 coreos/etcd. github.com (31 июля 2013). Дата обращения: 26 марта 2014.
  4. 1 2 3 4 5 Libby Clark. Brandon Philips: How the CoreOS Linux Distro Uses Cgroups. Linux.com (9 сентября 2013). Дата обращения: 13 февраля 2014.
  5. Cade Metz. Linux Hackers Rebuild Internet From Silicon Valley Garage. Wired (21 августа 2013). Дата обращения: 13 февраля 2014.
  6. 1 2 CoreOS – a new approach to Linux-based server systems. itnews2day.com (22 августа 2013). Дата обращения: 26 марта 2014.
  7. 1 2 3 4 5 CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  8. Brian Harrington. CoreOS: Anatomy of a CoreOS update. youtube.com. Rackspace (8 июля 2014). Дата обращения: 25 июля 2014.
  9. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  10. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  11. 1 2 CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  12. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  13. Package omaha. godoc.org (24 июня 2014). Дата обращения: 4 июля 2014.
  14. CoreOS documentation. coreos.com. Дата обращения: 4 июля 2014.
  15. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  16. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  17. Brandon Philips. etcd @ GoSF. speakerdeck.com (15 января 2014). Дата обращения: 13 февраля 2014.
  18. CoreOS documentation. coreos.com. Дата обращения: 3 апреля 2014.
  19. CoreOS documentation. coreos.com. Дата обращения: 3 апреля 2014.
  20. coreos/fleet. github.com (18 февраля 2014). Дата обращения: 3 апреля 2014.
  21. coreos/fleet. github.com (7 марта 2014). Дата обращения: 3 апреля 2014.
  22. coreos/fleet. github.com (6 февраля 2014). Дата обращения: 3 апреля 2014.
  23. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  24. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  25. CoreOS documentation. coreos.com. Дата обращения: 13 февраля 2014.
  26. Alex Crawford. CoreOS Image Now Available On DigitalOcean. coreos.com (5 сентября 2014). Дата обращения: 5 сентября 2014.
  27. Jack Clark. Google brings futuristic Linux software CoreOS onto its cloud. The Register (23 мая 2014). Дата обращения: 26 мая 2014.

Ссылки

Container Linux
Изображение логотипа
Первый выпуск 3 октября 2013
Поддерживаемые платформы x86-64
Лицензия лицензия Apache
Веб-сайт coreos.com
Логотип Викисклада Медиафайлы на Викискладе