Cockpit: веб-интерфейс управления сервером CentOS/RHEL
В этой статье мы рассмотрим, как установить и использовать веб-интерфейс управления сервером Cockpit Web Console в CentOS 8 (применимо для Red Hat, Fedora, Ubuntu, Debian, Arch). Мы рассмотрим базовые возможности данной консоли, и покажем, как через простой и удобный веб-интерфейс cockpit выполнять типовые задачи администрирования и мониторинга ваших серверов. Для тех, кто только начинает разбираться с CentOS, данная web-консоль станет незаменим помощником в администрировании сервера.
Основные возможности web-интерфейса управления сервером cockpit:
-
- Управление учетными записями
- Мониторинг системы
- Обновление ПО
- Просмотр лог-файлов
- Сетевые настройки
- Управление виртуальными машинами KVM
Установка Cockpit в CentOS
Перед установкой пакета cockpit нужно обновить все пакеты в системе:
# dnf update -y
После чего, можно установить непосредственно сам cockpit через менеджер пакетов:
# dnf install cockpit –y
При запуске команды, система предложит установить cockpit и все зависимости.
После установки, нужно запустить сервис cockpit и добавить его в автозагрузку:
# systemctl start cockpit.socket
# systemctl enable cockpit.socket
Для доступа к web-интерфейс нужно открыть на файерволле порт TCP 9090. Для firewalld это выполняется через добавление сервиса в исключения:
# firewall-cmd --add-service=cockpit --permanent
# firewall-cmd --reload
Для iptables:
# iptables -A INPUT -m state --state NEW -p tcp --dport 9090 -j ACCEPT
# service iptables save && service iptables restart
Использование веб-интерфейса cockpit для управления CentOS
Откройте веб-консоль Cockpit в браузере, перейдя по адресу:
https://ip:9090
IP — адрес вашего сервера с cockpit
Для авторизации в Cockpit используются локальные учетные записи в CentOS. Можно авторизовать под root.
При авторизации в интерфейсе Cockpit, на главной странице вы можете увидеть монитор производительности сервера:
В динамических графиках показывается текущая нагрузка на основные ресурсы вашего сервера:
- Загрузка CPU
- Использование памяти
- Нагрузка на дисковую подсистемы (не в IOPS, а в KiB/s)
- Cетевую активность
Удобно смотреть на графики в режиме реального времени, визуально информация воспринимается куда проще. Рядом с графиками есть информация о системе, а так же возможность управления электропитанием сервера (можно быстро перезагрузить или выключить сервер):
С левой стороны панели, есть меню. Некоторые пункты мы рассмотрим подробно:
Интерфейс полностью русифицирован и по названию пунктов можно понять, за что отвечает каждый из них.
В разделе сеть, вы можете управлять сетевыми настройками и правилами файерволла:
Как видите, у нас есть 3 правила, которые можно просмотреть или изменить, в панели вы так же можете добавить новые правила:
Т.е. если вы неуверенно чувствуете себя в консоли, вы можете настроить правила файервола через web-интерфейс.
Помимо настроек файерволла, вы можете управлять настройками сетевых интерфейсов (изменить VLAN на сервере, файл конфигурации сети, добавить мост и т.д.):
Создать дополнительного пользователя для вашего сервера можно в несколько кликов:
Можете через консоль убедиться, что пользователь создан:
[root@server ~]# cat /etc/passwd | grep tes
test:x:1000:1000:test:/home/test:/bin/bash
В разделе службы, вы можете настраивать и управлять сетевыми сервисами.
Если вы откроете любой сервис, можно увидеть все настройки:
Настройте автозапуск сервиса, остановите/запустите его, а также в окне определенной службы, вы увидите журнал ошибок или предупреждений. В моем случае я открыл сервис cockpit и в журналах есть предупреждения о том, что у меня не установлен сертификат для консоли.
На вкладке “Программные обновления” можно включить управлять установкой обновлений CentOS и пакетов из подключенных репозиториев.
Можно включить автоматическое обновление системы (выполняется через пакет dnf-automatic).
После установки которого, вы можете настроить вариант обновления вашей системы и задать время для автоматической установки обновлений.
Если вас не устраивает вариант с автоматическим обновлением, вы можете их устанавливать в ручную.
В консоли если удобный веб-терминал, для работы с сервером из привычного shell для запуска команд:
Если у вас используется SELinux, им также можно управлять через cockpit.
Если с главной страицы веб интерфейса щелкнуть по графику дисковой активности, появится веб интерфейс для управления дисками (Storage). где вы можете создать или перенастроить LVM разделы, настроить RAID группы или подключить iSCSI устройства.
Сам веб-интерфейс интуитивно понятен даже тем, кто использует его впервые и на самом деле, не обязательно быть новичком в системном администрировании, чтобы использовать его. Доступ к панели управления можно получить с любого устройства, просто открыв нужный адрес и введя данные, то есть, вы можете администрировать ваш сервер даже со смартфона.
В Cockpit можно управлять сразу множеством серверов CentOS/RHEL. Для этого нужно добавить необходимые сервера в Machines dashboard.
Cockpit: управление контейнерами через podman
Для работы с контейнерами на сервере, для cockpit существует отдельный плагин podman (в ранних релизах исопльзовался docker). Установите пакет:
# dnf install cockpit-podman -y
После чего нужно загрузить нужные образы, например, CentOS 8:
# podman pull centos:8
Проверьте, что образ загрузился:
# podman images
Перезапустите сервис cockpit:
# service cockpit restart
Вы увидите, что панели появится модуль Podman containers:
В дальнейшем вся работа происходит, как и с docker-контейнерами.
Управление KVM через веб-интерфейс cockpit
Для работы KVM на сервере с установленным cockpit есть дополнительный плагин:
# dnf install cockpit-machines -y
После его установки в web-интерфейсе появится отдельная вкладка Virtual Machines:
После запуска libvirt, вы можете создавать виртуальные машины и управлять ими через уже интерфейс cockpit. Например, можно создать новую ВМ:
После чего у вас появится созданная машина и можно будет продолжить ее настройку:
Таким образом, для того, чтобы работать с KVM вам не требуется установка какой-то отдельной панели (типа virt-manager) или выполнения команд virsh.
Теперь администрирование вашего сервера станет еще проще. Установите cockpit и используйте его возможности на максимум.
Linux
Cockpit: веб-интерфейс управления сервером CentOS/RHEL