•  Untoreh-light

Альпийский

Pine, Alpine linux на базе OSTree

Выбирая что Операционные системы запускается на ваших серверах - это вопрос удобства и знакомства. Удобство означает, что вы хотите что-то, что доставляет вам как можно меньше проблем, знакомство означает, что вы бы предпочли нет чтобы узнать дополнительные вещи, если вам это не нужно.

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

После опробования CoreOS за год перешел на свой упрощенный дистрибутив на основе альпийских и Остри.

Цели

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

Цели

В каких средах будет работать система? Я нацелился ОВЗ и [KVM], но в целом можно сказать контейнеры а также виртуальные машины с основным отличием в том, что контейнеры не запускают собственное ядро, в частности, у них нет процесса загрузки, они вызывают непосредственно в в этом система (которая, например, вDockerfile это будет определятьсяCMD илиENTRYPOINT операторов), который отвечает за управление деревом процессов, которые будут поддерживать работу контейнера (как и в обычном сеансе, если процесс init умирает, контейнер завершается). Также контейнеры не могут настраивать системные кнопки и могут иметь дополнительные ограничения на возможности.

Деление процесса сборки пополам

Как строится образ?

Зависимости

Вprepare.sh script обрабатывает зависимости, большинство из которых представляют собой пакеты, предлагающие общие инструменты cli, такие какcoreutils, util-linux, binutils , утилиты для работы с блочными устройствами, такими какblkid, sfdisk, multipath-tools и файловые системы сxfsprogs а такжеe2fsprogs . Вsquashfs-tools package используется в конце для сжатия встроенной корневой файловой системы. Аglib пакет совместимости также установлен по умолчанию, потому что alpine основан наmusl, пакет совместимости работает, предоставляя некоторые библиотеки, построенные на основе.

Дерево

Деревья файлов для виртуальных машин и контейнеров строятся соответственно сmake.sh а такжеmake_ovz.sh . Это упрощенное описание шагов

Для контейнеров последовательность такая же, но конфигурация меняется, поскольку система не загружается с загрузчик ostree имеет проблемы с проверкой окружающей среды, мы должны применить некоторые обходные пути и настроить некоторые устройства, которые обычно обрабатываются initramfs шаг. Вот как ОВЗ или LXC шаблоны настроены.

Упаковка

Как только у нас есть дерево зафиксированных файлов ostreebuild.sh илиbuild-update.sh заботится о производстве артефакта, который будет распространяться. Разница между скриптами в том, что версия обновления начинается с предыдущего репозитория ostree, и также создает дельта-артефакт, который работающая система может применить к своему экземпляру ostree для выполнения обновлений. Это упрощенное описание шагов сборки

Конфигурация разделов применяется с помощью fdisklayout.cfg файла, который определяет размеры разделов, у нас есть один раздел для rootfs (~430M ), загрузочный раздел (~40M ) и раздел подкачки (~40M ). С контейнерами просто пропустите установку предыдущей сборки через устройство цикла и просто потяните новую фиксацию ostree поверх старого (извлеченного) репозитория ostree.

Настройки

Что я включил в этот образ (кроме установленных пакетов)?

Что было раньше, а что больше нет

Установка

Чтобы установить образ, вы можете либо загрузить его на хостинг-провайдера, либо установить из VNC, в случае виртуальных машин, но я обычно захватываю существующую установку, потому что это всегда возможно, а также, пока я тестировал сценарий установки на версии дистрибутив linux, обычно я использую debian-8 или ubuntu-14, не тестировал другие, так как я всегда находил их доступными. Шаги настройки следующие

Выводы

я сделал сосна 5 years from time of writing and I am still using it, and I see no reasons to switch to anything else. Alpine as a linux distro is great, simple, and I have never experienced breakage. I can easily deploy on NATed серверы, которые, как правило, предлагают сверхнизкие ресурсы, на самом деле у меня есть коробка, работающая только с64M оперативной памяти, и все еще у меня есть все необходимые мне функции.

[1]корневая файловая система

Теги сообщений: