Новая виртуальная ОСь — 27.09.2018
Container Linux 1855.4.0 (Rhyolite)
Дистрибутив GNU/Linux на основе пакетной базы Федоры, бывший CoreOS. Обеспечивает достаточно лёгкую организацию кластеров и свободное мигрирование служб по узлам этих кластеров для «размазывания» нагрузки. По идее — незаменимая вещь для крупных компаний, владеющих огромным количеством bare-metal серверов или тем, кто хочет обладать своим PaaS. При количестве более тысячи хостов привычные средства оркестрации, такие, как Puppet, Chef, Salt становятся менее эффективны. Особенности системы: корень ФС и /usr доступны только для чтения, отсутствует пакетный менеджмент, нет возможности запустить что-либо не в изолированном контейнере, который объявляется декларативно через Dockerfile, нельзя что-либо поломать своими-же костылями. Изменена сама парадигма деплоя и системного администрирования. На борту Systemd для управления локальными службами на машинах кластера, Docker для обеспечения изоляции служб, Etcd для распределенного хранения конфигурации кластера, Fleet обеспечивает распределенное управление службами (как «надстройка» над systemd).
Так как пакетный менеджмент отсутствует как класс, я не смог поставить графический сервер в хостовой-системе (в контейнере — не вопрос). Поэтому привожу чисто текстовый скрин.
Подробности установки: Показать
Установил в виртуальной машине ВиртуалБокса. Процесс установки: на другой системе генерирую ключи для SSH (они потом пригодятся для входа в поставленную систему):
core@otherOS:~ $ ssh-keygen -t rsa -b 2048 -f /tmp/coreos core@otherOS: ~$ cat /tmp/coreos.pub
Гружусь с CD, получаю IP и меняю пароль юзера core:
$ ip a $ sudo -s # passwd core # exit
Затем логинюсь по ssh core@<IP виртуалки> и все действия выполняю через ssh-клиент (т. к. в нём поддерживается copy-paste):
scp core@otherOS:/tmp/coreos* . rm coreos wget https://raw.githubusercontent.com/coreos/init/master/bin/coreos-install -O coreos-install.sh chmod +x coreos-install.sh cat << EOF >> cloud-config.yaml #cloud-config # Set Hostname hostname: CoreOS # Set SSH Keys ssh_authorized_keys: EOF echo -n '- ' >> cloud-config.yaml && cat coreos.pub >> cloud-config.yaml cat << EOF >> cloud-config.yaml coreos: etcd: # generate a new token for each unique cluster from https://discovery.etcd.io/new EOF echo -n ' discovery: ' >> cloud-config.yaml && wget https://discovery.etcd.io/new -O ->> cloud-config.yaml sudo ./coreos-install.sh -d /dev/sda -C stable -c cloud-config.yaml
После корректной установки выполняю gdisk /dev/sda, в этой утилите нажатием клавиши W чиню перезаписываю GPT-таблицу, затем перегружаю виртуалку.
После загрузки в свежую систему можно зайти со второй машины:
ssh -i /tmp/coreos core@coreos
и делать с ней всё, что захочу...
Источники:
https://coreos.com/os/docs/latest/installing-to-disk.html
http://www.appcontainers.com/installing-coreos-on-a-bare-metal-or-virtual-server/
https://habr.com/post/256107/
https://habr.com/post/244585/