Как я использую Cockpit для управления домашним сервером Linux

Cockpit — это сервис для Linux, который предоставляет веб-интерфейс для управления и мониторинга хостов. Его можно развернуть в организации любого размера, даже в небольшом офисе, и это отличный способ для домашних пользователей поддерживать семейную ИТ-инфраструктуру. Я использую его для управления и мониторинга всех компьютеров в моем доме, включая Raspberry Pi.

Cockpit — это бесплатный программный проект с открытым исходным кодом, выпущенный под LGPL v2.1 +. Он спонсируется Red Hat и включен в Red Hat Enterprise Linux как веб-консоль RHEL.

Использование cockpit

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

 

Но это еще не все. Расширенные возможности Cockpit включают управление сервером LDAP, виртуальными машинами и хранилищем. Вы также можете использовать его для установки контейнеров Docker или Podman.

 

Что касается мониторинга, Cockpit обеспечивает видимость ожидаемых показателей ЦП, памяти и дискового пространства. Но он также предоставляет такую ​​информацию, как производитель, BIOS и брендинг процессора, и дает подробный обзор аппаратных элементов, таких как  чипы северного и южного мостов и различные контроллеры. В нем перечислены графические устройства, устройства хранения и сетевые коммуникационные устройства, а также контроллер памяти и тип памяти. Кабину также можно использовать для просмотра журналов.

Установить cockpit

Cockpit включен в большинство основных дистрибутивов. На веб-сайте представлена документация по установке в Red Hat, Fedora, Ubuntu, Debian, Arch и некоторых других. Вы можете установить его с помощью стандартных команд управления пакетами в вашем дистрибутиве Linux. Вы также обычно можете найти его в графической утилите, такой как GNOME Software Center, для процесса одним щелчком мыши.

  • Fedora: dnf install cockpit
  • Ubuntu: apt install cockpit

Доступ и вход

Порт прослушивания по умолчанию — 9090. Чтобы получить доступ к интерфейсу Cockpit на сервере, просто укажите в браузере hostname:9090. Вы можете использовать localhost:9090для локального сервера, на котором вы вошли в систему. Войдите в систему с общей учетной записью, так как будет полезно иметь для нее права root.

 

 

Для удаленного доступа к другим серверам вы должны использовать их имя хоста, например https://hostname:9090. Однако вы можете назначить один хост в качестве сервера управления и добавить все свои серверы на панель мониторинга для единого представления.

Как только вы войдете в систему, первый экран, который вы увидите, — это панель управления; другой вариант — вид хоста.

Просмотр панели инструментов

Вид панели инструментов чистый и незагроможденный. На изображении ниже показан монитор производительности для всех подключенных к системе серверов. Он отображает ЦП, память, сеть и дисковый ввод-вывод. Если это ваш первый запуск и вы еще не подключили какие-либо серверы, вы увидите графики только для локальной системы.

 

 

Добавьте сервер, нажав синюю кнопку с плюсом ( + ).

 

 

После добавления серверов прокрутите вниз, чтобы увидеть полный список. У меня уже настроено несколько систем.

 

 

Вид хоста

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

Обзор

Когда вы выбираете сервер, на экране хоста открывается раздел « Обзор » с элементами управления для конкретной хост-системы. Экран обзора разделен на квадранты для информации о работоспособности , использовании , конфигурации и системе .

 

 

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

Место хранения

На этом изображении раздела « Хранилище » в верхней части находится график операций чтения / записи, а ниже — список локальных файловых систем. Далее вы можете добавить подключения NFS или просмотреть журналы. Вы даже можете создавать RAID-устройства и группы томов.

 

 

Сети

Раздел « Сеть » позволяет управлять брандмауэром и сетевыми интерфейсами. Вы можете редактировать правила и зоны межсетевого экрана и управлять сетью с помощью связывания, объединения, мостов и VLAN.

 

 

Программные обновления

Возможность удаленного применения обновлений на серверах очень удобна. Даже в семье может быть пять или десять компьютеров. Но предприятию с сотнями или тысячами безголовых серверов, установленных в сухом темном центре обработки данных за много миль, определенно нужна эта возможность. В разделе «Обновления программного обеспечения » перечислены доступные вам обновления.

 

 

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

Терминал

Последний элемент в представлении Host — это терминал , в котором вы можете использовать все обычные параметры командной строки. Один из способов, которым я использовал Терминал, — это преодоление несоответствий в наборах функций Cockpit, скорее всего, из-за различий в версиях Linux. Я обнаружил это на своем ПК с Media Center под управлением Ubuntu Linux 18.04. В этой версии Ubuntu раздел «Обзор» обозначен как «Система». Он указывает на доступные обновления с исправлениями ошибок, но не имеет кнопки для применения обновлений. Это не относится к новой версии Ubuntu 20.04 LTS, в которой есть ожидаемый раздел обзора и возможность обновления. В любом случае не нужно беспокоиться, потому что я могу использовать терминал для запуска обычных команд обновления Apt.

 

Приложения

Возможно, вы заметили, что я пропустил раздел « Приложения » в представлении «Хост». Этот раздел заслуживает вашего внимания, потому что он может управлять видом и функциональностью вашей службы Cockpit. Отсюда вы можете установить дополнительные функции или приложения, такие как сервер LDAP 389 или инструменты для сбора диагностических отчетов и дампов ядра или создания образов серверов. Раздел « Машины » позволяет управлять виртуальными машинами, а Podman предоставляет возможности управления контейнерами. После того, как вы настроили и запустили Cockpit, рекомендуется изучить раздел «Приложения».

 

Последние мысли

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

ps fax |grep cockpit
2064515 ?        Ssl    0:50 /usr/libexec/cockpit-tls
2064521 ?        Ssl    0:41 /usr/libexec/cockpit-ws --for-tls-proxy --port=0
2064527 ?        S      0:00  \_ /usr/libexec/cockpit-session localhost
2064537 ?        Sl     0:38      \_ cockpit-bridge
2064636 ?        S      1:37          \_ /usr/libexec/cockpit-ssh webserver
2064639 ?        S      1:37          \_ /usr/libexec/cockpit-ssh smtpserver
2064640 ?        S      1:37          \_ /usr/libexec/cockpit-ssh ftpserver
2064670 ?        Sl     0:02          \_ /usr/bin/cockpit-bridge --privileged
2076607 ?        S      0:21          \_ /usr/libexec/cockpit-ssh ldapserver
2078182 ?        S      0:10          \_ /usr/libexec/cockpit-ssh teaserver

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