понедельник, 27 мая 2019 г.

RHEL 8 - что нового


Относительно недавно (7 мая) состоялся релиз RHEL 8, с некоторым количеством нового функционала.




Всё новое гораздо лучше изучать на практике, а не просто читать какие-нибудь пресс релизы.
И поэтому на прошедшем Red Hat Summit был двухчасовой воркшоп c говорящим названием The Definitive Red Hat Enterprise Linux 8 Hands-on Lab.
Посмотреть можно на гитхабе https://github.com/xtophd/RHEL8-Workshop/blob/master/documentation/RHEL8-Workshop.adoc
Он представляет из себя краткую теорию, и много практических заданий по каждой новой или обновленной фиче RHEL 8.
Про этот мастеркласс и будет сегодняшний рассказ.


Для того чтобы развернуть воркшоп у себя потребуется три сервера RHEL 8 (node1, node2, node3), сервер-репозиторий докер контейнеров (core) и графическая рабочая станция RHEL 8 (workstation).
Затем можно запустить ansible плейбук (на рабочей станции) и через 5-6 минут получаем лабораторию готовую к выполнению практических заданий воркшопа.



Кратко пробежимся по всем пунктам, выделяя самое интересное.

Wayland
Первая новая фича - это wayland, по сути это замена старому протоколу X11. Сначала на wayloand перешла Fedora, а с релизом восьмерки и корпоративные рабочие станции redhat. Первый таск состоит в основном из кастомизации оконного менеджера Gnome. По дефолту в нем зачем-то убрали кнопки сворачивания и расширения окна, оставили только закрытие окна.


Web Сonsole
Затем рассматривается веб консоль. Это не совсем новая функция, cockpit уже был и в 7й ветке RHEL, но в восьмой его расширили и теперь это полноценное управление сервером, например для младшего технического персонала.



можно добавлять правила фаерволла


управлять сервисами

или заводить новых пользователей


На этом графические новшества заканчиваются и начинаются более интересные вещи.

Systemd
Конечно с выходном RHEL 7 уже произошел полный переход на systemd, но в восьмерке он немного обновился.
Подчеркивается возможность одновременного включения в загрузку и запуска сервиса (systemctl enable --now httpd mariadb)
Так же, было полезно узнать, что допускается передавать более одного сервиса за один раз.


Кроме этого, было полезное практическое задание по модификации юнит файлов, чтобы изменения не перезаписались при обновлении, хранить их необходимо в /etc/systemd/system.



Firewalld
Тоже не совсем новый функционал, но примеры его использования не помешают. Рассматриваются как базовые команды, так и кастомизация конфигов в которые добавляются новые приложения и новые порты. Отдельно можно отметить режим паники (firewall-cmd --panic-on), который мгновенно гасит все сетевые подключения на хосте. Использовать его нужно с осторожностью, имея удаленный доступ к физической консоли сервера.

NFTables
А вот это уже полностью новый функционал. IPTables уходят на заслуженный отдых, и вместо них по дефолту будет NFTables.
Логика местами похожая, но вот синтаксис совсем другой, фигурные скобки напоминают иногда yaml.
Сразу же подчеркивается, что в 99% случаев хватит возможностей firewalld, и ручная модификация nftables это редкая ситуация.
Но тем не менее присутствует несколько наглядных практических примеров использования этого пакетного фильтра.

eBPF
Последние несколько лет этот инструментарий для отладки и дебага не сходит с новостных лент.


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



Нельзя сказать что тема eBPF была полностью раскрыта, но самые интересные возможности точно демонстрируются.

Application Streams
Это уже глобальное изменение в системе. Базовая система и пользовательские приложения теперь разделены, и появилась возможность выбирать версию приложения и на ней оставаться.
Пример
yum module install -y postgresql:9.6/server


Еще есть возможность отключения приложения (yum module disable mariadb mysql -y), при этом попытка установить приведет не совсем к очевидном сообщении об ошибке:


yum install mariadb -y

    No match for argument: mariadb
    Error: Unable to find a match


И кстати, yum превратился в симлинк на dnf (Dandified YUM, пакетный менеджер из Fedora).




Если у вас появился вопрос а как теперь автоматизировать установку приложений с помощью ansible, то к счастью проблемы здесь нет.
Модуль dnf, умеет все необходимое:




Podman
На этой фиче долго останавливаться не будем, докер контейнеры теперь доступны без установки docker engine, и в целом контейнеризация - это одна из основных целей redhat.

Buildah
Продолжение работы с контейнерами, разбирается функционал по сборке и модификации контейнеров.

Tlog
Вот это очень необычная и интересная вещь. Появился встроенный функционал по записи и затем проигрыванию сессий пользователей.
Звучит наверное не совсем понятно, но именно так буквально и есть. Запускается сервис sssd, в конфиге прописывается пользователь и группа которые будут записываться и ... всё.
Находим в логе по дате интересующую записанную сессию, и запускаем tlog-play. В результате в терминале начинают набираться команды, делаются паузы, видно весь вывод и т.д.
Ранее подобный функционал был доступен только в дорогих коммерческих комплексах, а необходимость в нем есть как в крупных проектах, так и при предоставлении доступа аутсорс специалистам.

Stratis
Это набор утилит для работы с пулами из блочных устройств. И если ZFS или btrfs - это классические модули ядра, то stratis - это некий гибрид ядра/юзерспейса.


Пока конечно в качестве ответа redhat на ZFS выглядит бледно, но если продолжат развивать то вполне может что-то и вырасти.
На вокршопе разбирается создание и базовая работа с пулом stratis.

BOOM
Последняя тема, достаточно неожиданная - это новый менеджер загрузки.
При этом он никак не заменяет всем привычный grub2, а просто умеет добавлять новые пункты загрузки.
На воркшопе демонстрируется создание LVM снапшота, добавление этого снапшота в качестве элемента меню grub, удаление важных файлов, последующая загрузка в снапшот, а затем восстановление из снапшота (merge).

Что в итоге?
В результате релиз RHEL 8 можно сказать вполне удался, есть и абсолютно новый функционал и ожидаемая эволюция уже существующего.
И теперь остается ждать пока разработчики CentOS не выкатят свою восьмерку.

Комментариев нет:

Отправить комментарий