Cockpit centos 8 настройка
Обновлено: 07.07.2024
веб-интерфейс управления сервером Cockpit Web Console в CentOS 8 (применимо для Red Hat, Fedora, Ubuntu, Debian, Arch). Мы рассмотрим базовые возможности данной консоли, и покажем, как через простой и удобный веб-интерфейс cockpit выполнять типовые задачи администрирования и мониторинга ваших серверов. Для тех, кто только начинает разбираться с CentOS, данная web-консоль станет незаменим помощником в администрировании сервера.
Основные возможности web-интерфейса управления сервером cockpit:
- Управление учетными записями
- Мониторинг системы
- Обновление ПО
- Просмотр лог-файлов
- Сетевые настройки
- Управление виртуальными машинами KVM
Установка Cockpit в CentOS
Перед установкой пакета cockpit нужно обновить все пакеты в системе:
После чего, можно установить непосредственно сам cockpit через менеджер пакетов:
В CentOS 8 cockpit устанавливается по умолчанию, кроме случаев с minimal core установкой.При запуске команды, система предложит установить cockpit и все зависимости.
После установки, нужно запустить сервис cockpit и добавить его в автозагрузку:
Для доступа к web-интерфейс нужно открыть на файерволле порт TCP 9090. Для firewalld это выполняется через добавление сервиса в исключения:
Использование веб-интерфейса cockpit для управления CentOS
Откройте веб-консоль Cockpit в браузере, перейдя по адресу:
IP — адрес вашего сервера с cockpit
Для авторизации в Cockpit используются локальные учетные записи в CentOS. Можно авторизовать под root.
При авторизации в интерфейсе Cockpit, на главной странице вы можете увидеть монитор производительности сервера:
В динамических графиках показывается текущая нагрузка на основные ресурсы вашего сервера:
- Загрузка CPU
- Использование памяти
- Нагрузка на дисковую подсистемы (не в IOPS , а в KiB/s)
- Cетевую активность
Удобно смотреть на графики в режиме реального времени, визуально информация воспринимается куда проще. Рядом с графиками есть информация о системе, а так же возможность управления электропитанием сервера (можно быстро перезагрузить или выключить сервер):
С левой стороны панели, есть меню. Некоторые пункты мы рассмотрим подробно:
Интерфейс полностью русифицирован и по названию пунктов можно понять, за что отвечает каждый из них.
В разделе сеть, вы можете управлять сетевыми настройками и правилами файерволла:
Как видите, у нас есть 3 правила, которые можно просмотреть или изменить, в панели вы так же можете добавить новые правила:
Т.е. если вы неуверенно чувствуете себя в консоли, вы можете настроить правила файервола через web-интерфейс.
Помимо настроек файерволла, вы можете управлять настройками сетевых интерфейсов (изменить VLAN на сервере, файл конфигурации сети, добавить мост и т.д.):
Создать дополнительного пользователя для вашего сервера можно в несколько кликов:
Можете через консоль убедиться, что пользователь создан:
В разделе службы, вы можете настраивать и управлять сетевыми сервисами.
Если вы откроете любой сервис, можно увидеть все настройки:
Настройте автозапуск сервиса, остановите/запустите его, а также в окне определенной службы, вы увидите журнал ошибок или предупреждений. В моем случае я открыл сервис cockpit и в журналах есть предупреждения о том, что у меня не установлен сертификат для консоли.
Для веб-интерфейса cockpit по умолчанию используется самодопдписанный сертификат, который хранится в каталоге /etc/cockpit/ws-certs.d. Можете заменить его коммерческим SSL сертфикатом или использовать бесплатный Let’s Encrypt.На вкладке “Программные обновления” можно включить управлять установкой обновлений CentOS и пакетов из подключенных репозиториев.
Можно включить автоматическое обновление системы (выполняется через пакет dnf-automatic).
После установки которого, вы можете настроить вариант обновления вашей системы и задать время для автоматической установки обновлений.
Если вас не устраивает вариант с автоматическим обновлением, вы можете их устанавливать в ручную.
В консоли если удобный веб-терминал, для работы с сервером из привычного shell для запуска команд:
Если у вас используется SELinux, им также можно управлять через cockpit.
Если с главной страицы веб интерфейса щелкнуть по графику дисковой активности, появится веб интерфейс для управления дисками (Storage). где вы можете создать или перенастроить LVM разделы, настроить RAID группы или подключить iSCSI устройства.
Сам веб-интерфейс интуитивно понятен даже тем, кто использует его впервые и на самом деле, не обязательно быть новичком в системном администрировании, чтобы использовать его. Доступ к панели управления можно получить с любого устройства, просто открыв нужный адрес и введя данные, то есть, вы можете администрировать ваш сервер даже со смартфона.
В Cockpit можно управлять сразу множеством серверов CentOS/ RHEL . Для этого нужно добавить необходимые сервера в Machines dashboard.
Cockpit: управление контейнерами через podman
Для работы с контейнерами на сервере, для cockpit существует отдельный плагин podman (в ранних релизах исопльзовался docker). Установите пакет:
После чего нужно загрузить нужные образы, например, CentOS 8:
Проверьте, что образ загрузился:
Перезапустите сервис cockpit:
Вы увидите, что панели появится модуль Podman containers:
В дальнейшем вся работа происходит, как и с docker-контейнерами.
Управление KVM через веб-интерфейс cockpit
Для работы KVM на сервере с установленным cockpit есть дополнительный плагин:
После его установки в web-интерфейсе появится отдельная вкладка Virtual Machines:
После запуска libvirt, вы можете создавать виртуальные машины и управлять ими через уже интерфейс cockpit. Например, можно создать новую ВМ:
После чего у вас появится созданная машина и можно будет продолжить ее настройку:
Таким образом, для того, чтобы работать с KVM вам не требуется установка какой-то отдельной панели (типа virt-manager) или выполнения команд virsh.
Теперь администрирование вашего сервера станет еще проще. Установите cockpit и используйте его возможности на максимум.
В этой статье я расскажу про возможности инструмента Cockpit. Cockpit создан с целью облегчения администрирования ОС Linux. Если говорить кратко, то он позволяет выполнять наиболее типичные задачи администратора Linux через приятный веб-интерфейс. Возможности Cockpit: установка и проверка обновление для системы и включение автообновления (процесс патчинга), управление пользователями (создание\удаление\смена паролей\блокировка\выдача прав суперпользователя), управление дисками (создание\редактирование lvm, создание\монтирования файловых систем), настройка сети (team, bonding, ip managing и т. д.), управление systemd-юнитами\таймерами.
Интерес к Cockpit обусловлен выходом Centos 8, где Cockpit уже встроен в систему и требуется его лишь активировать командой «systemctl enable --now cockpit.socket». На других дистрибутивах потребуется ручная установка из пакетного репозитория. Рассматривать тут установку мы не будем, смотрите официальное руководство.После установки нам необходимо в браузере перейти на 9090 порт сервера, на котором установлен Cockpit (т. е. ip-сервера:9090). Например, 192.168.1.56:9090
Вводим обычный логин\пароль от локального аккаунта и ставим галочку «Reuse my password for privileged tasks», чтобы была возможность запускать некоторые команды от имени привилегированного пользователя (root). Естественно, ваш аккаунт должен обладать возможностью выполнять команды через sudo.
После входа вы увидите красивый и понятный веб-интерфейс. Первым делом переключите язык интерфейса на английский, поскольку перевод выполнен просто ужасно.
Интерфейс выглядит очень понятным и логичным, слева вы увидите навигационную панель:
Стартовый раздел называется «system», где вы можете увидеть информацию по утилизации ресурсов сервера (CPU, RAM, Network, Disks):
Чтобы посмотреть более подробную информацию, например, по дискам, просто нажмите на соответствующую надпись и вы попадёте сразу в другой раздел (storage):
Тут же можете создать lvm:
Выберите имя для vg-группы и диски, которые хотите использовать:
Задайте имя для lv и выберите размер:
И, наконец, создайте файловую систему:
Обратите внимание, что Cockpit сам пропишет нужную строку в fstab и смонтируем устройство. Также можно прописывать специфичные опции монтирования:
Вот это выглядит в системе:
Тут же можно расширять\сжимать файловые системы, добавлять новые устройства в vg-группу и т.д.
В разделе «Networking» можно не просто менять типичные сетевые настройки (ip, dns, маску, шлюз), но и создавать более сложные конфигурации, такие как bonding или teaming:
Вот так готовая конфигурация выглядит в системе:
Согласитесь, что настраивать через vi\nano было бы чуть дольше и сложнее. Особенно для новичков.
В «services» можно управлять systemd юнитами и таймерами: останавливать их, перезапускать, убирать из автозагрузки. Так же очень быстро создать свой таймер:
Единственное, что сделано плохо: не понятно, с какой периодичностью запускается таймер. Можно лишь посмотреть, когда он запускался в последний раз и когда запустится вновь.
В «Software updates», как не сложно догадаться, можно посмотреть все доступные обновления и установить их:
Система оповестит нас, если потребуется перезагрузка:
Тут же можно включить автоматическое обновление системы и кастомизировать время установки обновлений:
Так же в Cockpit можно управлять SeLinux, создавать sosreport (полезно при общении с вендорами при решении технических проблем):
Управление пользователями реализовано максимально просто и понятно:
Кстати, можно добавлять ssh-ключи.
И, наконец, можно читать системные логи и сортировать по важности:
Мы прошлись по всем основным разделам программы.
Вот такой краткий обзор возможностей. Использовать Cockpit или нет решать только вам. На мой взгляд, Cockpit может решить несколько проблем и удешевить обслуживание серверов.
Основные преимущества:
- Порог вхождение в администрирование ОС Linux существенно снижается благодаря таким инструментам. Выполнять стандартные и базовые действия может практически любой человек. Администрирование можно частично делегировать разработчикам или аналитикам для удешевления производства и ускорения работы. Ведь теперь не надо набирать в консоли pvcreate, vgcreate, lvcreate, mkfs.xfs, создать точку монтирования, редактировать fstab и, наконец, набрать mount -a, достаточно кликнуть мышью пару раз
- Можно разгрузить администраторов Linux и избавить их от рутины, чтобы они фокусировались на более сложных задачах
- Можно уменьшить количество человеческих ошибок. Согласитесь, что через веб-интерфейс сделать ошибку сложнее, чем через консоль
- Ограниченность утилиты. Можно делать лишь базовые операции. Нельзя, например, сразу расширить lvm после увеличения диска со стороны виртуализации, необходимо в консоли набрать pvresize и лишь потом продолжить работу через веб-интерфейс. Нельзя добавить пользователя в определённую группу, нельзя поменять права у директорий, проанализировать используемое место. Хотелось бы более обширный функционал
- Раздел «Applications» не работал корректно
- Нельзя поменять цвет консоли. Я, например, могу комфортно работать лишь на светлом фоне с тёмным шрифтом:
upd: также имеется возможность управлять множеством серверов с одного веб-интерфейса путём добавления нужных серверов в «Machines dashboard». Функционал, например, может быть полезен при массовом обновлении сразу нескольких серверов. Подробнее читайте в официальной документации.
Понадобилось мне обновить Cockpit до новой версии так как последняя версия в репозитории CentOS 8 - 224. Это откровенно старая версия и многого функционала нет: например, клонирование виртуальных машин, добавление CD-ROM в виртуальную машину и т.д. Гугля "добавление CD-ROM в виртуальную машину через Cockpit" попал на официальный блог Cockpit Project. Оказалось, что за несколько лет, с момента доступной последней версии Cockpit в репозитории CentOS 8, вышло много новых версий с огромным количеством нововведений. Текущая версия, на момент написания статьи, уже 239!
На официальном сайте Cockpit к сожалению не нашёл обновление до последней версии именно в CentOS 8 - там только для CentOS 7.
Поэтому, в этой статье мы установим самый новый Cockpit на CentOS 8.Установка, включение и запуск Cockpit
Этой командой Cockpit будет установлен, включён и добавлен в автозагрузку.
В браузере заходим в веб-панель Cockpit:
Вводим логин / пароль системы и попадаем на главную страницу.Обновление Cockpit до последней версии
Сначала добавим репозиторий Cockpit.
Выполните:
Осталось обновить Cockpit до поледней версии.Выполните:
Вот и всёПримечание для тех, у кого уже установлен Cockpit с дополнительными модулями
Если у вас уже установлены дополнительные модули для кокпита, например cockpit-machines, то думаю проще будет обновить кокпит и модули через веб-панель Cockpit. Но сначала обязательно добавьте репозиторий, который описан выше.
Далее, зайдите в веб-панель, затем в раздел Software Updates, жмите на кнопку (обвёл красным) и выбирайте обновления.
Официальный блог Cockpit Project
Не забывайте следить за официальным блогом Cockpit Project, чтобы узнать о новых версиях.
KVM - средство виртуализации, интегрированное с ядром, которое превращает Linux в гипервизор типа один. Данная заметка на полях представляет из себя краткую инструкцию как установить KVM, быстро и просто создавать виртуальные машины и управлять ими в CentOS 8.
Установка KVM
Первым делом процессор должен поддерживать аппаратную виртуализацию, её необходимо включить в BIOS.
Вариант 1. Для установки сервера виртуализации в процессе установки операционной системы необходим полный дистрибутив CentOS. Весь процесс описывать нет смысла, единственное необходимо в Software Selection выбрать Virtualization Host .
После установки необходимо установить средство просмотра virt-viewer , используемый для просмотра виртуальных машин.
Вариант 2. Для установки KVM на существующую систему необходимо установить модуль виртуализации и дополнительные пакеты. Выполняем:
Пакет virt-install . позволяет управлять установкой виртуальных машин из командной строки.
Проверка. На установленной системе убедиться, что аппаратная платформа поддерживает виртуализацию можно командой:
Для процессоров AMD:
Проверить, что модули KMV загружены в ядро можно выполнив команду:
Для систем на основе Intel будет следующий результат:
Проверяем возможность загрузки драйверов libvirt хост системой.
Управление с помощью WEB консоли
Управление виртуальными машинами будет производиться с помощью web консоли Cockpit . Устанавливаем необходимые компоненты и добавляем сервис в автозапуск.
Панель управления будет доступна через web браузер по адресу:
После запуска сервиса libvirtd по умолчанию создается сетевой интерфейс virbr0 типа мост, представляющий из себя виртуальный коммутатор с возможностью трансляции сетевых адресов посредствам NAT. Для возможности использования виртуальными машинами адресов той же сети, что и хост система необходимо создать новый интерфейс типа мост. В консоли Cockpit выбираем меню Networking , затем нажимаем кнопку Add Bridge .
В открывшемся окне вводим наименование нового моста и выбираем интерфейс, через который будет работать мост (обычно физический сетевой адаптер).
После применения настроек, в списке интерфейсов появится созданный интерфейс типа мост, а ethernet адаптер будет отключен.
Создание виртуальных машин
Для создания новой виртуальной машины в web консоли Cockpit необходимо выбрать пункт меню Virtual Machines , затем Create VM .
В открывшейся карточке настроек необходимо заполнить имя создаваемой виртуальной машины, выбрать тип установки, операционную систему, создать новый диск для системы с указанием размера или подключить существующий, указать количество выделяемой памяти. При указании типа установки Local Install Media необходимо предварительно позаботиться о носителе, с которого будет происходить установка (например, образ диска iso).
После выставления флажка Immediately Start VM и нажав кнопку Create будет создана новая виртуальная машина и после начнется установка системы с указанного носителя. Выбрав вкладку Consoles , вы получите доступ к установке и управлению виртуальной машиной.
Изменить используемый сетевой интерфейс виртуальной машины на созданный ранее можно во вкладке Network Interfaces . Изменения необходимо делать, когда виртуальная машина выключена, если виртуальная машина включена, то изменения вступят в силу после выключения ВМ.
После установки операционной системы на виртуальную машину установочный диск можно отключить во вкладке Disks . Отключение/подключение дисков производится только при выключенной виртуальной машине.
На вкладке Usage показана информация использования памяти и процессора виртуальной машиной.
На вкладке Overview можно задать количество выделяемой памяти и процессоров для виртуальной машины. В меню Boot Order выставляется порядок загрузки с дисков. Для запуска виртуальной машины вместе с хост системой отмечаем параметр Run when host boots . Все изменения кроме автостарта при запуске хост системы необходимо выполнять при выключенной виртуальной машине, иначе изменения вступают в силу после выключения ВМ.
После установки и первоначальной настройки используйте средства удаленного доступа для управления виртуальной машиной.
Читайте также: