Cockpit — веб-панель для управления Linux-сервером

Cockpit - мониторинг и управление CentOS

Интерфейс Cockpit — характеристики сервера и текущая загрузка системы CentOS

Описание Cockpit

Часто при упоминании Linux-сервера представляется консоль. Действительно так — через терминал в большинстве случаев выполняется управление и администрирование *NIX систем. Нельзя сказать, что это по душе всем, особенно, новичкам. Тем не менее, у GUI есть ряд преимуществ — наглядность, простота в использовании, понятность и меньшая вероятность ошибки.

Довольно сложно выбрать веб-панель из большого ряда подобных проектов. Одним из самых функциональных и «проверенных» временем (около 16 лет проекту) является webmin, а с темой оформления Authentic (github.com/qooob/authentic-theme) выглядит уже совсем современно. Но вернемся ближе к теме: почему я выбрал Cockpit?

Плюсы и основные возможности Cockpit

Cockpit — веб-панель управления серверами с открытым исходным кодом, разрабатываемая компанией Red Hat. Это говорит об отличной совместимости с CentOS. Надстройка предназначена для контроля работы и состояния систем, развертывания услуг на базе контейнеров.

По большому счету молодым системным администраторам не рекомендуется использовать панели управления *NIX серверами, т.к. теряется ощущение системы, ее более глубокое понимание. Тем не менее с помощью понятного интерфейса Cockpit очень просто выполнить основные задачи администрирования

  • запуск и остановка служб (systemd),
  • настройка устройств хранения (настройка LVM, создание RAID) — в данный момент оставили только мониторинг производительности (Disk I/O),
  • конфигурация сети (bonding, VLAN, bridge),
  • управление учетными записями пользователей,
  • присоединение в домен,
  • управление пользовательскими SSH-ключами,
  • мониторинг нагрузки в реальном времени (сеть, дисковая подсистема, CPU и RAM),
  • проверка логов
  • одновременное использование терминала и веб-браузера,
  • работа с контейнерами Docker
  • управление несколькими серверами из одной веб-консоли.

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

Легкость надстройки, отзывчивый и лаконичный интерфейс, возможность быстрого получения информации по производительности и логам — основные критерии выбора данной панели управления для меня. Основные операции все же выполняются в консоли, но тем не менее веб-панель используется для оперативного мониторинга системы в реальном времени.

Теперь перейдем к небольшому обзору возможностей и особенностей данной системы. Если вы используете несколько серверов, их легко можно мониторить через одну единую веб-панель. Для этого к Dashboard можно подключить, как и отдельные сервера, так и панель управления кластерами Kubernetes или OpenShift v3. При этом, чтобы подключить новый сервер, достаточно выбрать Add Server, указать его имя или IP. Флажок «Log in with my current credential» позволит использовать текущие данные для входа.

Cockpit - удаленное администрирование Linux систем

Вход в консоль сервера CentOS через браузер и панель Cockpit

Стоит обратить внимание на возможность использования для управления сервером одновременно терминала и веб-браузера. В отличие от остальных решений, в Cockpit такой подход работает корректно и не вызывает проблем. Поэтому можно отдавать команды в консоли, а отслеживать результат в Cockpit, или наоборот. Более того, сам Cockpit предоставляет терминал, поэтому управлять сервером можно полностью из браузера!

Особенностью Cockpit (и его единственным серьезным минусом) является использование сокета systemd. В дистрибутивах, использующих другой менеджер служб, будут работать не все функции. Хотя это не мешает собрать все серверы под один интерфейс для более удобного доступа к ним.

Cockpit - Дисковая и сетевая активность

Установка Cockpit на CentOS 7

Установка Cockpit на CentOS 7 не вызывает никаких затруднений и состоит из двух частей — установки требуемых пакетов и зависимостей в автоматическом режиме, а также добавление правил в системный фаервол.

 sudo yum -y install cockpit 

Если вам требуется установка и использование Doker контейнеров, то данный функционал добавляется в панель Cockpit отдельным модулем, который устанавливается аналогичным образом:

 sudo yum -y install cockpit-docker 

Стартуем сервис:

 sudo systemctl start cockpit 

Добавляем в автозагрузку:

 sudo systemctl enable cockpit.socket 

После этого, открыв браузер на http ://IP_or_name_server:9090, и авторизовавшись, переходим к управлению системой. Если не можете зайти — стоит добавить правила для firewalld:

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

После входа пользователя встречает панель мониторинга, показывающая графики нагрузки CPU, памяти, сети и I/O дисковых операций. Ниже показан сервер, на котором установлен Cockpit; что- бы получить по нему данные, достаточно щелкнуть по ссылке. Все настройки разбиты в шесть меню, назначение которых интуитивно понятны.

Настройка работы самой панели Cockpit обычно не требуются, а при появлении затруднений — все вопросы по администрированию изложены в Cockpit Guide — cockpit-project.org/guide/latest.

Веб-панель управления и мониторинга Linux сервером

Cockpit — список пользователей сервера CentOS

Нашли ошибку в тексте? Выделите фрагмент текста и нажмите Ctrl+Enter

Удаленная настройка для серверов и сайтов 24/7

12 thoughts on “Cockpit — веб-панель для управления Linux-сервером

  1. Роман Голубенко

    в том то и дело что не подходит…именно это пробовал в первую очередь
    хотя и внешне страница не очень похожа на cockpit
    http://www.floomby.ru/s2/PgvU55

    1. Igor Ovcharenko

      На скриншоте авторизация для вашего ресурса (не для панели управления). Возможно, это веб-сервевр… попробуйте времено отключить брандмауэр (iptables, firewalld и т.п.)

  2. Роман Голубенко

    firewalld отключал, авторизироваться не смог

  3. Slava Nadejdin

    1,5 часа устанавливается 1 000 000 зависимостей. Жалею что ставил.

    1. Igor Ovcharenko

      Какая ОС? Могу даже заснять видео — примерно 2-3 минуты на установку и логин на веб-морде (CentOS 7).

  4. Ilya Kozlov

    Тоже заинтересовал федоровский кокпит. По этому гайду инсталлировать не получилось. Решил проблему с установкой панели на официальном сайте вот линк: http://cockpit-project.org/running.html, часть для redhat, здесь и далее с офф. сайта «…

    Cockpit is included in the Red Hat Enterprise Linux Extras repository in versions 7.1 and later:

    Enable the Extras repository:
    sudo subscription-manager repos —enable rhel-7-server-extras-rpms
    Install cockpit:
    sudo yum install cockpit
    Enable cockpit:
    sudo systemctl enable —now cockpit.socket
    Open the firewall if necessary:
    sudo firewall-cmd —add-service=cockpit
    sudo firewall-cmd —add-service=cockpit —permanent
    …»
    Установка осуществлялась на «чистый» дистрибутив CentOS-7-x86_64-NetInstall-1511.iso
    Развёрнут на виртуальной машине Hyper-V под Windows 10 Enterprise Insider Preview Build 14931.rs_prerelease.160916-1700
    Ради эксперимента.
    Точка входа в панель по адресу:
    https://Ваш IP:9090/ либо, https://Ваш домен:9090/

  5. Ilya Kozlov

    Игорь Овчаренко, вот только не пойму в чём плюсы данной консоли, всё можно сделать в терминале, на мой беглый взгляд, или я не прав?

  6. The Azag-tot

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

    Пакеты, имеющие неудовлетворённые зависимости:
    cockpit : Зависит: cockpit-bridge (>= 128-0~jessie) но он не может быть установлен
    Зависит: cockpit-bridge (= 128-0~jessie) но он не может быть установлен
    Зависит: cockpit-dashboard (= 128-0~jessie) но он не может быть установлен
    Зависит: cockpit-ws (< 128-0~jessie.1~) но он не может быть установлен
    Зависит: cockpit-system (= 128-0~jessie) но он не будет установлен
    Рекомендует: cockpit-docker (= 128-0~jessie) но он не будет установлен
    Рекомендует: cockpit-storaged (= 128-0~jessie) но он не будет установлен
    Рекомендует: cockpit-networkmanager (= 128-0~jessie) но он не будет установлен
    E: Невозможно исправить ошибки, у вас отложены (held) битые пакеты.

    наводит на странные мысли)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *