☸️ Лучшие минимальные контейнерные операционные системы для запуска Kubernetes

by itisgood

Вступление

Linux прошел долгий путь с тех пор, как Линус Торвальдс представил его сообществу для использования.

Он послужил многим легендарным предприятиям и эксплойтам до тех пор, пока не пришло время контейнеров, и они были полностью приняты в производство.

Традиционный дистрибутив Linux содержит большое количество программного обеспечения, что делает его прекрасным инструментом общего назначения.

Это никогда не было проблемой, пока не возникла идея контейнеров.

Обильное количество программного обеспечения в традиционных блоках Linux имеет следующие недостатки: оно добавляет багов, увеличивает степень угрозы безопасности и расширяет матрицу тестирования, необходимую для сертификации нового выпуска.

Микросервисы, работающие на контейнерах, требуют меньше зависимостей, используют минимальную контейнерную операционную систему и, таким образом, позволяют вашим приложениям достигать больших масштабов.

Мы будем демистифицировать минимальные контейнерные операционные системы, которые показали многообещающее в этой статье.

1. CoreOS/Container Linux

Контейнер Linux, обычно известный как CoreOS, является пионером в бизнесе дистрибутивов Linux на основе контейнеров.
Это чрезвычайно легкая операционная система Linux, разработанная для кластерных развертываний, обеспечивающая автоматизацию, безопасность и масштабируемость для наиболее важных приложений.
Приложения, как вы можете догадаться, работают в контейнерах, предоставляя удобные для разработчиков инструменты для развертывания программного обеспечения.
Следует признать, что CoreOS Container Linux – это ведущая контейнерная операционная система, предназначенная для управления и запуска в массовом масштабе с минимальными накладными расходами.

Как работают внутренние компоненты CoreOS

C веб-сайта CoreOS:

«Контейнер Linux ограничивает границы дистрибутива и включает в себя только самое необходимое: операционная система и основные пользовательские утилиты сокращены до минимума и поставляются как единое целое. Все остальные приложения и зависимости запускаются внутри контейнеров, где ими можно последовательно управлять, обновлять и распространять. Как пользователь Container Linux, у вас есть стабильная, безопасная база для запуска ваших приложений. Инженеры CoreOS постоянно доставляют исправления в ОС, обновляют движки контейнеров и обеспечивают их безопасную работу ».

Особенности CoreOS

  • Контейнер Linux работает практически на любой платформе, будь то физическое, виртуальное или частное / публичное облако.
  • Все приложения отделены от основной операционной системы, а зависимости запускаются внутри контейнеров.

2. Photon OS

Введение в Photon OS

VMWare выпустила минималистичную ОС Linux, которая была отточена для платформ облачных вычислений, развертываний VMware vSphere и приложений, встроенных в облако, и назвала ее Photon OS.

Как хост-контейнер Linux, Photon OS была оптимизирована для платформ vSphere и облачных вычислений, таких как Amazon Elastic Compute и Google Compute Engine.

Она работает с наиболее распространенными форматами контейнеров, включая Docker, Rocket и Garden.

Кроме того, Photon OS включает yum-совместимую систему управления жизненным циклом на основе пакетов, которая называется tdnf.

Одна из замечательных особенностей ОС Photon заключается в том, что вы можете использовать ее с инструментами разработки и средами, такими как VMware Fusion, VMware Workstation.

При этом она позволяет беспрепятственно переносить приложения на основе контейнеров из разработки в производство.

Особенности ОС Photon

Наиболее отличительные особенности ОС Photon:

1. Photon OS имеет небольшой вес и быстрое время загрузки и запуска.
Это делает Photon OS хорошо оптимизированным для облачных вычислений и облачных приложений.
2. Управляет сервисами с помощью systemd.
Используя systemd, Photon OS принимает современный стандарт Linux для управления системными службами.
Photon OS загружает пространство пользователя и одновременно запускает службы с помощью systemd.
Утилита systemctl контролирует сервисы на ОС Photon.
Например, вместо запуска сценария /etc/init.d/ssh для остановки и запуска сервера OpenSSH в системе Linux на базе init.d вы запускаете следующие команды systemctl в ОС Photon:
  • systemctl stop sshd
  • systemctl start sshd
Она управляет пакетами с помощью yum-совместимого менеджера пакетов с открытым исходным кодом, называемого tdnf для Tiny DNF.
Tdnf сохраняет операционную систему настолько маленькой, насколько это возможно, сохраняя при этом мощные возможности управления пакетами yum.
В ОС Photon tdnf является менеджером пакетов по умолчанию для установки новых пакетов.
Это C реализация менеджера пакетов DNF.

3. RancherOS

Если вы хотите запустить Docker без особых хлопот, подумайте об использовании RancherOS.

Это самый маленький и простой способ запуска ваших рабочих нагрузок в производственной среде с использованием Docker.

Поскольку будущее, похоже, движется в направлении контейнера, команда Rancher заставила каждый процесс в RancherOS работать как контейнер, управляемый Docker.

Эта архитектура сильно отличается от той, что существует в дистрибутивах Linux, потому что даже системные службы, такие как udev и syslog, работают как контейнеры.

Поскольку он включает только службы, необходимые для запуска Docker, RancherOS значительно меньше, чем большинство традиционных операционных систем.
Благодаря удалению ненужных библиотек и служб требования к исправлениям безопасности и другому обслуживанию также уменьшаются.
Это возможно, потому что в Docker пользователи обычно упаковывают все необходимые библиотеки в свои контейнеры.

Особенности RancherOS

1. Все в RancherOS является контейнером

2. RancherOS быстрый, как молния

Как работает RancherOS

Можно задаться вопросом, как ОС, работающая исключительно на контейнерах, делает то, что делает негласно.

Rancher достигает этого, запустив два экземпляра Docker.

Они называют один экземпляр System Docker, который представляет первый процесс в системе, такой как init в обычных дистрибутивах Linux.

Все другие системные службы, такие как терминал, системный журнал и ntpd, работают в контейнерах Docker.

Системный Docker заменяет традиционные системы инициализации, такие как systemd, и используется для запуска дополнительных системных служб.

4. Red Hat CoreOS (RHCOS)

Red Hat Enterprise Linux CoreOS была создана теми же группами разработчиков, которые создали Red Hat Enterprise Linux Atomic Host и CoreOS Container Linux.
Его главная цель – объединить лучшие стандарты качества Red Hat Enterprise Linux (RHEL) с функциями автоматического удаленного обновления из Container Linux.

Ключевые особенности RHCOS

1. Базовая операционная система состоит в основном из компонентов RHEL.
2. RHCOS предлагает транзакционные обновления с использованием системы rpm-ostree.
3. RHCOS использует Podman CLI для таких задач, как создание, копирование и иное управление контейнерами.
4. RHCOS включает в себя контейнерный движок CRI-O вместо Docker.

5. Fedora CoreOS

По данным документации Fedora, Fedora CoreOS – это автоматически обновляемая минимальная монолитная операционная система, ориентированная на контейнеры, предназначенная для кластеров, но также работоспособная автономно, оптимизированная для Kubernetes, но также прекрасно работающая без него.
Он призван объединить лучшее из CoreOS Container Linux и Fedora Atomic Host, интегрируя такие технологии, как Ignition из Container Linux, с rpm-ostree и SELinux от Project Atomic.
Его цель – предоставить лучший контейнерный хост для безопасного и масштабного выполнения контейнерных рабочих нагрузок.

Заключение

С течением времени микросервисы все больше набирают обороты, и эти лидеры отрасли хорошо закладывают фундамент, чтобы будущие приложения и рабочие нагрузки работали лучше, чем сейчас.
Преимущества, которые контейнеры приносят пользователю, невозможно переоценить.

You may also like

Leave a Comment