Управление виртуализацией Hyper‑V, Proxmox VE, VMware vSphere и Docker в INFRAX

У системы управления и автоматизации ИТ-инфраструктуры INFRAX вышло значительное обновление, которое добавляет новую функциональность для работы с системами виртуализации VMware, Proxmox, Hyper-V. Я установлю это обновления и расскажу о новых возможностях обновлённой системы.

Введение

Для тех, кто не знаком с системой и не читал моей обзорной статьи по ней, кратко поясню, что такое INFRAX. Это комплексная система для мониторинга и управления всей ИТ инфраструктурой, которая включает в себя несколько модулей, объединённых единой панелью управления и базой пользователей:

  • Мониторинг
  • Удалённый доступ
  • Техническая поддержка
  • Управление учётными записями пользователей системы
  • Логирование и учёт всех действий в системе

Более подробно о системе читайте в приведённой ссылке. Не буду здесь повторяться. Отмечу только, что система необычная и функциональная. Рекомендую посмотреть на неё, если раньше не слышали.

Система INFRAX теперь позволяет из своего интерфейса управлять виртуальными машинами и контейнерами. Сразу покажу, как это выглядит на практике:

Обзор управления виртуальными машинами
Обзор управления Docker контейнерамиИнструменты для работы с виртуализацией

Виртуальные машины

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

  1. Поддержка платформ виртуализации VMware, Proxmox и Hyper-V.
  2. Просмотр состояния виртуальных машин и их основных характеристик, остановка, запуск.
  3. Создание снепшотов виртуальных машин.
  4. Редактирование характеристик виртуальных ресурсов.
  5. Автоматическое обнаружение

Для управления виртуальными ресурсами на гипервизоре должен быть установлен агент INFRAX. Если для подключенного узла уже указаны учётные данные с правами доступа к гипервизору, то система виртуализации и виртуальные машины будут обнаружены автоматически. Если нет - можно настроить доступ вручную.

Поддерживаются следующие платформы:

  • VMware vSphere/vCenter версии 6.5+ через API
  • VMware ESXi версии 6.5+ через API
  • Proxmox VE 6.0+ через агента
  • Microsoft Hyper-V 2012+ через агента

Для платформы VMware используется древовидное представление виртуальных машин: Датацентры → Папки → Виртуальные машины. Для остальных платформ на выбор два варианта: режим плиток или таблиц.

Docker контейнеры

Система INFRAX автоматически обнаруживает Docker на узлах. С её помощью можно:

  • Управлять контейнерами - запускать, останавливать, удалять, просматривать логи.
  • Управлять образами - просмотр, удаление, очистка.
  • Просматривать информацию о сетях.
  • Управлять томами (volumes) - смотреть, удалять.
  • Поддержка проектов Docker Compose. Контейнеры объединены в группы по проектам.
  • Мониторинг потребления ресурсов контейнерами в режиме реального времени.

Управление контейнерами осуществляется с помощью агента с доступом к нему по SSH или RDP. Дополнительно открывать доступ к Docker API не надо.

Забегая вперёд скажу, что управление виртуалками и контейнерами в рамках типовых процедур сделано удобно и унифицированно. Можно не выходя из INFRAX выполнять базовые операции на разных платформах. При этом они логируются, доступ к узлам ограничивается общей системой управления доступом.

Обновление до новой версии

Для того, чтобы получить новую функциональность, достаточно обновить INFRAX до версии 0.4.0 и новее. Сделать это проще всего через скрипт управления infrax.sh, который служит входной точкой для всех процедур по обслуживанию системы. Достаточно его запустить и выбрать соответствующий пункт меню:

Обновление INFRAX

В моём примере у меня уже стоит версия 0.4.1. Обновлю её до 0.4.2. Система INFRAX состоит из Docker контейнеров и подключенных к ним локальных директорий. Так что всё обновление сводится к бэкапу данных и обновлению Docker образов.

Рекомендую процедуру непосредственно обновления запускать либо в screen, либо в tmux, чтобы она не прервалась в случае отключения SSH сеанса.

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

Backup INFRAX

После этого начнётся непосредственно обновление в виде загрузки и запуска новых образов Docker.

Загрузка новой версии

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

Уведомление об обновлении

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

Управление виртуальными машинами

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

У меня используются Hyper-V и Proxmox. Для последнего список виртуальных машин выглядит примерно так в двух различных представлениях: плитки и список.

Управление виртуальными машинами Proxmox в INFRAX

Вид виртуальных машин в виде плиток

Если выбрать виртуальную машину, то откроется список некоторых действий с ней:

Действия с виртуальной машиной

  • Изменение выделенных ресурсов.
  • Запуск, остановка и другие стандартные действия с ней.
  • Создание снепшотов, если для данного типа виртуального диска они поддерживаются.
  • Открытие консоли. После нажатия вас перенаправит в веб интерфейс Proxmox, где сразу же будет открыта консоль виртуальной машины. Сделано удобно.

Консоль виртуальной машины Proxmox в INFRAX

При этом сеанс в консоли будет записан. Потом его можно будет посмотреть в соответствующем разделе с записями.

Запись сеанса к консоли виртуальной машины

При желании можно перейти в веб интерфейс Proxmox и заниматься управлением там.

Переход в веб интерфейс Proxmox

Внешне управление виртуальными машинами Hyper-V выглядит точно так же. Отличается только подключение к панели управления и консоли виртуальной машины. Для доступа к ним открывается RDP соединение, а когда оно состоится, автоматически открывается оснастка или консоль с помощью команд PowerShell.

Управление виртуальными машинами в Hyper-V

Подключение к оснастке управления Hyper-V

Управление контейнерами Docker

С Docker вообще красота получилась. Мне понравилось, как выглядит обзор контейнеров, сетей, образов и томов. Если к узлу настроен доступ по SSH и установлен агент мониторинга, то отдельно настраивать ничего не надо. Все контейнеры будут обнаружены автоматически. Выглядит это так:

Управление контейнерами Docker в INFRAX

Контейнеры сгруппированы по проектам Docker Compose.

В информации о контейнере можно увидеть:

  • Информацию об ID, образе, состоянии.
  • Проброшенные порты и внутренний IP адрес контейнера.
  • Метрики производительности, которые обновляются в режиме реального времени.
  • Кнопки для остановки, запуска, удаления контейнера.
  • Переход в консоль контейнера (сессия будет записана).
  • Просмотр логов контейнера.

Информация о контейнере

Логи контейнера Docker

Информация о сетях на узле с Docker:

Сети в Docker

И тут же об образах:

Список образов

Информация об образе

Помимо управления существующими контейнерами, вы можете создавать и новые. Выглядит это примерно так:

Запуск нового Docker контейнера через INFRAX

Указываете все основные данные для контейнера и запускаете. Можно запустить новый проект из Docker Compose. Достаточно будет указать его расположение.

Запуск Docker Compose через INFRAX

Существует много веб панелей для управления Docker контейнерами. Они все предлагают похожую функциональность. Мне понравилось, как это выглядит в INFRAX. Просто и наглядно. Плюс, контроль доступа к хостам и запись сессий, логирование действий. Расскажу об этом подробнее далее. Всё это вместе в единой панели управления выглядит удобно и функционально.

Безопасность и права доступа

Ролевая модель доступа

В управление всеми узлами и подсистемами INFRAX вплетена централизованная RBAC система на основе подсистемы IDENTYX, которая имеет интеграции с LDAP/OAuth, свой встроенный аудит и возможность моментальных блокировок пользователей. Управление виртуальными машинами и контейнерами не исключение.

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

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

Управление пользователями и доступом выполняется в отдельном веб интерфейсе. Попасть в него можно либо перейдя на порт сервера 8040, где запущен INFRAX, либо нажав на имя пользователя в верхнем углу веб интерфейса:

Переход в IDENTYX

Подсистема IDENTYX заслуживает подробного описания. Возможно это будет сделано в рамках отдельной статьи.

Для управления виртуальными машинами и контейнерами в IDENTYX существует отдельное действие, которое можно использовать в правилах доступа.

Права доступа в IDENTYX на работу с виртуализацией

Например, можно настроить доступ к узлам мониторинга, но не разрешать управлять виртуальными машинами на узле.

Логирование всех действий

Все действия, которые пользователи системы производят с узлами и на узлах, в том числе с объектами виртуализации и контейнерами, по умолчанию логируются.
Для просмотра логов в IDENTYX переходим в раздел Журнал, для удобства выбираем группировку по типу приложения, выбрав Infrax.

Лог действий пользователя с системами в INFRAX

Можно посмотреть подробности каждого события:

Подробности о записи события

С просмотром событий есть один важный нюанс. Сервисы запущены в Docker. В поле IP пользователей я вижу адреса контейнеров, а не реальные адреса пользователей. Эта информация выглядит бесполезной, а для аудита она может быть важна. Не знаю, есть ли техническая возможность это как-то исправить. Сама по себе система IDENTYX, как я понял, заточена на работу не только с INFRAX, но и другими системами. Например, аутентификация в веб интерфейс INFRAX фиксирует реальный IP пользователя, с которого он заходит.

Журнал безопасности в INFRAX

Запись сессий

Про запись сессий я уже кратко упомянул ранее. Все подключения, что выполняются через веб интерфейс самого INFRAX, записываются. Посмотреть их можно в отдельном разделе Сессии. Можно смотреть список как текущих открытых сессий, так и записи уже завершённых.

Список всех записанных сессий

Записываются подключения и к консолям виртуальных машин, и к Docker контейнерам.

Подробности сессии

Просмотр записи подключения к серверу в INFRAX

Заключение

Я развернул и проверил всю основную функциональность на одном из работающих филиалов, где INFRAX работает уже более месяца. Могу поделиться своим реальным впечатлением. Если рассматривать функциональность отдельных инструментов для управления, типа родного интерфейса Proxmox или оснастки Hyper-V, или Portainer для Docker, то конечно в них работать удобнее. Через браузер в целом управление так себе. К сожалению, в своём обзоре выношу за скобки VMware, так как не на чем было проверить. Не использую эту систему виртуализации.

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

Например, вы можете прописать регламент обновления какой-то системы с обязательным созданием снепшота виртуальной машины перед обновлением и удалением после. С помощью INFRAX вы можете как проследить за созданием и удалением снепшота, так и посмотреть действия специалиста в консоли. Что он там непосредственно делал, сколько времени у него это заняло.

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

Реклама, ООО «Аудит-Телеком», ИНН 7733293872, erid: 2SDnjdYeEEB

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

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

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

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.
Используешь Telegram? Подпишись на канал автора →
This is default text for notification bar