Как контролировать удаленные Linux-системы с помощью Glances
Glances – это бесплатная современная кроссплатформенная программа для мониторинга систем в режиме реального времени с открытым исходным кодом, которая обладает расширенными возможностями по сравнению с аналогами и может работать в различных режимах: автономном, в режиме клиент/сервер и в режиме веб-сервера.
Если рассматривать режим веб-сервера, то для запуска glances не обязательно входить на удаленный сервер по SSH, можно запустить его в режиме веб-сервера и обращаться к нему через веб-браузер для удаленного мониторинга Linux-сервера, как описано ниже.
Чтобы запустить glances в режиме веб-сервера, необходимо установить его вместе с модулем Python bottle, быстрым, простым и легким микро-веб-фреймворком WSGI, используя соответствующую команду для вашего дистрибутива Linux.
$ sudo apt install glances python-bottle [В Debian, Ubuntu и Mint] $ sudo yum install glances python-bottle [На RHEL/CentOS/Fedora и Rocky/AlmaLinux] $ sudo emerge -a sys-apps/glances python- bottle [На Gentoo Linux] $ sudo apk add glances python-bottle [На Alpine Linux] $ sudo pacman -S glances python-bottle [На Arch Linux] $ sudo zypper install glances python-bottle [На OpenSUSE].
В качестве альтернативы установите его с помощью показанной команды PIP.
$ sudo pip install bottle
После установки указанных пакетов запустите glances с флагом -w, чтобы запустить его в режиме веб-сервера. По умолчанию он будет прослушивать порт 61208.
$ glances -w
OR
$ glances -w &
Запуск Glances в режиме веб-сервера в качестве службы
Начните с создания файла модуля службы (который я предпочел назвать glancesweb.service) в каталоге /usr/lib/systemd/system/glancesweb.service.
$ sudo vim /usr/lib/systemd/system/glancesweb.service
Затем скопируйте и вставьте в него приведенную ниже конфигурацию файла юнита.
[Unit]
Description = Glances in Web Server Mode
After = network.target
[Service]
ExecStart = /usr/bin/glances -w -t 5
[Install]
WantedBy = multi-user.target
Приведенная выше конфигурация сообщает systemd, что это служба типа unit-of-type, она должна быть загружена после network.target.
И как только система окажется в сетевой цели, systemd вызовет команду “/usr/bin/glances -w -t 5” в качестве сервиса. Параметр -t задает интервал обновления в секундах.
Секция [install] сообщает systemd, что эта служба нужна “multi-user.target”. Поэтому при его включении создается символическая ссылка из каталога /etc/systemd/system/multi-user.target.wants/glancesweb.service в каталог /usr/lib/systemd/system/glancesweb.service. Отключение приведет к удалению этой символической ссылки.
Далее включите новую службу systemd, запустите и просмотрите ее состояние следующим образом.
$ sudo systemctl enable glancesweb.service
$ sudo systemctl start glancesweb.service
$ sudo systemctl status glancesweb.service
Наконец, через веб-браузер, используя URL http://SERVER_IP:61208/, можно удаленно контролировать свои Linux-серверы с помощью пользовательского интерфейса glances на любом устройстве (смартфоне, планшете или компьютере).
Вы можете изменить частоту обновления страницы, просто добавьте период в секундах в конце URL, это устанавливает частоту обновления на 8 секунд.http://SERVERI_P:61208/8
Недостатком работы glances в режиме веб-сервера является то, что при плохом интернет-соединении клиент может легко отсоединиться от сервера.
Вот и все! Если у вас есть вопросы или дополнительная информация, воспользуйтесь формой комментариев ниже.