Глава 7. Обзор веб интерфейса Cockpit

Несмотря на то, что Red Hat Enterprise Linux 9 оснащена самой последней средой рабочего стола Linux, в значительной степени это серверная операционная система. Таким образом, большинство реализаций RHEL будет осуществляться в удалённых физических серверах либо в виде экземпляров виртуальных машин в облачном решении. Такие системы неизменно работают без клавиатуры, мыши и монитора, а прямой доступ к ним возможен лишь через командную строку или сетевое подключение. С точки зрения администрирования такой системы из удалённого расположения это представляет собой некую проблему. Хотя, безусловно, многого можно достигать при помощи удалённого доступа к командной строке и к среде рабочего стола, требуется согласованное и связное решение задач администрирования и мониторинга, которые необходимо ежедневно осуществлять в операционной системе корпоративного подобной RHEL9.

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

Обзор Cockpit

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

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

Cockpit по умолчанию устанавливается с широким диапазоном уже снаряжённых средств, а также допускает установку по мере необходимости дополнительных подключаемых модулей расширения. Cockpit также разрабатывался с тем, чтобы вы были бы способны создавать свои собственные расширения применяя сочетание HTML и JavaScript для добавления упущенных или индивидуальных функциональных возможностей.

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

Установка и включение Cockpit

Как правило, Cockpit не установлен в RHEL9 по умолчанию, но может быть настроен и включён за несколько простых шагов. Самый первый из них заключается в установке собственно пакета Cockpit следующим образом:


# dnf install cockpit
		

Затем требуется разрешить службу сокета Cockpit:


# systemctl enable --now cockpit.socket
		

Наконец, необходимо открыть требующиеся порты в установленном межсетевом экране чтобы позволить достигать Cockpit удалённым подключениям браузера когда в вашей системе включён межсетевой экран (за подробностями относительно межсетевого экрана отсылаем к Глава 13, Основы Межсетевого экрана RHEL9).


# firewall-cmd --add-service=cockpit --permanent
# firewall-cmd --reload
		

Доступ к Cockpit

Если у вас имеется доступ к среде рабочего стола в том сервере, в котором был установлен Cockpit, откройте окно браузера и перейдите к https://localhost:9090 для доступа к экрану подписи в Cockpit. Если, с другой стороны, такой сервер удалённый, перейдите к этому серверу воспользовавшись его доменным именем или IP адресом (например, https://myserver.com:9090).

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

Подключившись, ваш браузер загрузит показанную ниже на Рисунке 7-1 страницу регистрации:

 

Рисунок 7-1


 

Подпишите данный интерфейс Cockpit либо в качестве root, либо полномочиями учётных данных своего пользователя. Обратите внимание на то, что некоторые задачи внутри интерфейса Cockpit будут ограничены в случае подписи от имени пользователя по причине ограничения полномочий. В подобной ситуации Cockpit отобразит кнопку "Limited Access" (Ограниченный доступ), как это показано на Рисунке 7-2:

 

Рисунок 7-2


 

Для повышения своих полномочий кликните по этой кнопке ограниченного доступа и введите свой пароль когда будет выдано приглашение на его ввод:

 

Рисунок 7-3


 

После подписи Cockpit отобразит экран Обзора.

Обзор

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

Например, Рисунок 7-4 отображает страницу Обзора интерфейса Cockpit:

 

Рисунок 7-4


 

Для дополнительных сведений по конкретной категории кликните по соответствующей ссылке. Рисунок 7-5, к примеру, показывает экран использования и метрик системы:

 

Рисунок 7-5


 

Журналы регистрации

Когда выбран раздел Logs, Cockpit отобразит содержимое журнала регистраций systemd. Выбор регистрационной записи отобразит данное сообщение целиком. Эти регистрационные записи упорядочены с наиболее поздними вверху, кроме того, содержится меню фильтрации всех регистраций для различных продолжительностей времени и на основе важности сообщения.

 

Рисунок 7-6


 

Хранилище

Для просмотра хранилища системы, включая диски, разделы и группы томов, точек монтирования NFS (Network File System) и хранилищ RAID, а также управления ими, выберите вариант Storage. Этот экран также допускает мониторинг активности Ввода/ Вывода диска в реальном масштабе времени и списки зарегистрированных выводов из системной службы udisksd, применяемой для запроса устройств хранения и управления ими:

 

Рисунок 7-7


 

Построение сетевой среды

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

 

Рисунок 7-8


 

Учётные записи

Для просмотра настроенных в данной системе текущих учётных записей пользователей и создания учётных записей для дополнительных клиентов выберите данный вариант. Основные вопросы управления пользователями будут рассмотрены позднее в Главе 9, Управление Пользователями и Группами RHEL9:

 

Рисунок 7-9


 

Для просмотра подробностей и внесения изменений щёлкните по некой имеющейся учётной записи. Страницу подробностей учётной записи пользователя также можно применять для просмотра и добавления общедоступных (Public) ключей SSH для данной учётной записи с целью удалённого доступа к серверу, что обрисовано в Главе 15, Настройка в RHEL9 аутентификации на основе ключей SSH.

Службы

Данный экран отображает список запущенных в своём сервере системных служб и позволяет добавлять, удалять , останавливать и запускать такие службы.

 

Рисунок 7-10


 

Основные вопросы служб будут подробно рассмотрены в Главе 11, Управление компонентами systemd RHEL9.

Приложения

Как уже упоминалось ранее, дополнительные функциональные возможности могут добавляться в Cockpit в качестве расширений. Это могут быть как самостоятельно разрабатываемые расширения, либо те, которые производятся сторонними организациями. Экран Applications перечисляет установленные приложения, а также позволяет добавлять или удалять расширения:

 

Рисунок 7-11


 

Виртуальные машины

Виртуализация делает возможным одновременное исполнение множества операционных систем в единой вычислительной системе, причём всякая система работает внутри своей собственной виртуальной машины Расширение Cockpit Virtual Machines предоставляет некий способ создания необходимых гостевых виртуальных машин, устанавливаемых в данном сервере, и управление ими:

 

Рисунок 7-12


 

Данное расширение Виртуальных машин не устанавливается по умолчанию, однако может быть добавлено через экран Applications Cockpit или путём запуска такой команды:


# dnf install cockpit-machines
		

Применение виртуализации в RHEL9 рассматривается начиная с Главы 20, Обзор методик виртуализации.

Обновления программного обеспечения

Когда для данной системы доступны некие обновления, они будут перечислены здесь, а также могут быть установлены из данного экрана:

 

Рисунок 7-13


 

Терминал

Как и предполагает его название, экран Terminal предоставляет доступ к приглашению на ввод в командной строке:

 

Рисунок 7-14


 

Подключение ко множеству серверов

Cockpit может быть сконфигурирован для администрирования множеством серверов изнутри одного сеанса. Для добавления другого хоста в текущий сеанс Cockpit кликните по выделенной на Рисунке 7-15 кнопке для отображения панели Hosts:

 

Рисунок 7-15


 

Кликните по кнопке Add new host и введите значение Ip адреса или имя хоста соответствующей системы и выберите цвет, который будет отличать данный сервер от остальных добавленных в Cockpit прежде чем кликнуть по кнопке Add:

 

Рисунок 7-16


 

Cockpit запросит у вас приём нового ключа SSH если вы подключаетесь к данному удалённому серверу впервые. После приёма такого ключа, вы получите приглашение на ввод значения пароля для определённого на приведённом выше Рисунке 7-16 имени пользователя. Также предоставляется вариант настройки и авторизации защищённого паролем ключа SSH для включения автоматической регистрации во второй системе хоста когда вам в следующий раз потребуется к ней доступ:

 

Рисунок 7-17


 

Для переключения между перечисленными хоставми отобразите панель Hosts (как на Рисунке 7-15 выше) и выберите необходимую систему.

Включение хранимых метрик

При стандартной установке Cockpit не удерживает никакие данные метрик производительности вне тех пределов, которые отображаются в приводимом на соответствующем графике окне краткого промежутка времени. Для удержания собираемых Cockpit данных требуется установка пакета Cockpit PCP (Co-Pilot). Приступите к установке пакета cockpit-pcp следующим образом:


# dnf install cockpit-pcp
		

После установки cockpit-pcp покиньте текущий сеанс Cockpit и вернитесь в него обратно.

Затем отобразите экран Metrics and history и кликните по кнопке Metrics settings для отображения показанного на Рисунке 7-18 экрана, переключитесь на вариант Collect metrics и кликните Save:

 

Рисунок 7-18


 

После того как пройдёт достаточно времени для получения Cockpit данных, как показано на Рисунке 7-19, появятся сведения о данной метрике, причём разбитые на категории блоками по часам:

 

Рисунок 7-19


 

Заключение

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