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<br>
sudo firewall-cmd --add-service=cockpit<br>
sudo firewall-cmd --add-service=cockpit --permanent<br>

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

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

Веб-панель управления и мониторинга Linux сервером
Cockpit – список пользователей сервера CentOS
blank

Занимаюсь IT с 2007 года. Всё началось с увлечения — разгона компьютерного оборудования. Много воды и азота утекло с тех пор... Сейчас уже более 3х лет со своей командой оказываю комплексную поддержку и продвижение бизнеса: SEO, Яндекс.Директ, рассылки и удалённое обслуживание серверов. Буду рад помочь, обращайтесь!

Оцените автора
IT для специалистов и бизнеса
Добавить комментарий

  1. blank
    Дмитрий

    Не работает Cockpi. Столько сайтов просмотрел, все одно и то же. Ставлю, запускается, выдает страничку ввода логина, вводишь пароль (даже ругается если, не тот) и белый экран браузера в ответ.

    Ответить
  2. blank
    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) битые пакеты.

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

    Ответить
  3. blank
    Ilya Kozlov

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

    Ответить
  4. blank
    Ilya Kozlov

    полёт нормальный

    Ответить
  5. blank
    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/

    Ответить
  6. blank
    Slava Nadejdin

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

    Ответить
    1. blank
      Igor Ovcharenko

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

      Ответить
    2. blank
      foxiys

      Сразу видно виндузятника))

      Ответить
  7. blank
    Роман Голубенко

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

    Ответить
  8. blank
    Роман Голубенко

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

    Ответить
    1. blank
      Igor Ovcharenko

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

      Ответить
  9. blank
    Igor Ovcharenko

    По умолчанию используются данные Ваших учетных записей, например, root.

    Ответить
  10. blank
    Роман Голубенко

    А логин и пароль по умолчанию.

    Ответить