Fleet Commander
Fleet commander - это инструмент для управления и развертывания профилей в большой сети пользователей и рабочих станций.
Fleet Commander состоит из трех компонентов:
- плагин FreeIPA, который позволяет хранить профили на контроллере домена
- плагин Cockpit, отвечающий за администрирование и предоставляющий интерфейс
- служба на стороне клиента, которая работает на каждом узле сети.
Fleet Commander использует libvirt и KVM для запуска сеанса виртуального рабочего стола, который позволяет пользователю в реальном времени редактировать конфигурацию приложений в системе шаблонов, которая будет применена на клиентах.
Установка и настройка Fleet Commander
Как уже говорилось выше, Fleet Commander состоит из трех компонентов. Рассмотрим пример развертывания Fleet Commander на четырех машинах:
admin, client, template, libvirt host.
Установка и настройка Fleet Commander Admin
Предварительно необходимо установить и настроить FreeIpa сервер, с созданием домашнего каталога (добавить опцию --mkhomedir). Инструкцию по установке FreeIpa сервера можно посмотреть в соответствующем разделе.
Далее установим необходимые пакеты
# apt-get install freeipa-desktop-profile cockpit
и запустим
# systemctl start cockpit
web-интерфейс Cockpit будет доступен по адресу
http://localhost:9090/
вход осуществляется по логину указанному при установке FreeIpa сервера.
Установим Fleet Commander плагирн для Cockpit
# apt-get install fleet-commander-admin
после перезагрузки демона Cockpit на web-интерфейсе появится доступ к настройке Fleet Commander.
Настроить Fleet Commander достаточно один раз при первом запуске. Окно настроек выглядит следующим образом:
Fleet Commander позволяет установить глобальную политику для определения того, как применять несколько профилей: к конкретному пользователю, к группе, к хосту, к группе хостов. По умолчанию это User-Group-Host-Hostgroup.
В форму настройки необходимо ввести адрес и имя пользователя libvirt-хоста для подключения. Если пользователь не является привилегированным, то переключаем Libvirt mode
в режим сеанса.
Для запуска live-сессии необходимо работающее ssh-соединение с libvirt хостом. Fleet Commander генерирует собственный открытый ключ, который необходимо добавить в .ssh/authorized_keys для соответствующего пользователя на libvirt хосте. Это можно сделать с помощью Install public key
на форме настройки, при этом будет необходимо ввести пароль пользователя. Пароль используется только для установки ключа и нигде не хранится.
Работа с профилями
После настройки Fleet Commander Admin необходимо создать и настроить профиль. Редактирование профиля производится из этого же интерфейса. После нажатия Add Profile
появится форма настройки профиля:
Форма настройки профиля содержит следующие поля:
Name
- имя профиляDescription
- описание профиляPriority
- приоритет профиляUsers
- пользователи, к которым будет применен профильGroups
- группы, к которым будет применен профильHosts
- хосты, к которым будет применен профильHost groups
- группы хостов, к которым будет применен профиль
Если не указан ни один хост или группа хостов, то профиль будет применен к каждому хосту состоящему в домене.
После редактирования профиля сохраним изменения и перейдем к настройка libvirt хоста.
Настройка libvirt-хоста
В качестве libvirt-хоста может выступать как отдельная машина, так и машина с Fleet Commander Admin.
Установим необходимый пакет
# apt-get install libvirt
и запустим его сервис
# systemctl enable libvirtd.service # systemctl start libvirtd.service
Если есть необходимость использовать привилегированного пользователя libvirt хоста, то необходимо разрешить root-доступ по ssh. Для этого в конфигурационном файле /etc/openssh/sshd_config нужно указать PermitRootLogin yes
и перезагрузить ssh-сервис:
# systemctl restart sshd.service
Настройка шаблона
Шаблон это отдельная машина с запущенным на ней Fleet Commander Logger. Шаблон запускается на "админской" машине в live-сессии. Логгер отслеживает сделанные изменения в шаблоне и сохраняет их.
Если в качестве libvirt хоста используется FreeIpa сервер, то шаблон необходимо иметь на нем же.
На template-машине достаточно установить логгер:
# apt-get install fleet-commander-logger
После выключения шаблона можно попробовать запустить live-сессию. Для этого в web-интерфейсе cocpkit'а необходимо нажать Edit
напротив нужного профиля и внизу всплывшего окна кнопку Live session
. В появившейся форме будет список всех доступных шаблонов, кликнув по шаблону он начнет загружаться.