понедельник, 14 ноября 2022 г.

База знаний по oVirt

Те, кто недавно посещал данный блог, могли заметить, что в области навигации появился новый раздел Руководство oVirt. Я немного отошел от темы продуктов VMware (хотя и не собираюсь забрасывать их) и в последние месяцы осваиваю альтернативные платформы. За это время я успел накопить некий багаж знаний, который решил оформить в виде статей на Gitbook. Поэтому если вы или ваши коллеги,эксплуатируют или только присматриваются к oVirt, думаю, вы найдете эти материалы полезными.

Также я сделал пару демо-роликов на своем Youtube-канале

Пока это только малая часть того, что я успел раскопать по oVirt, периодически я планирую обновлять материалы и добавлять новые статьи.

понедельник, 3 октября 2022 г.

Настраиваем Ubuntu под VDI с помощью Ansible

Настройка Linux в качестве виртуального десктопа для VMware Horizon - не самая простая и быстрая задача. В свое время VMware даже опубликовала готовый виртуальны апплайнс на базе Ubuntu 18.04, который с помощью shell скрипта и черной магии позволял автоматизировать многие рутинные задачи для подготовки виртуального десктопа. Отдельно скрипт можно загрузить с репозитория на GitHub: https://github.com/thatvirtualboy/horizon-linux-vm

К сожалению, с тех пор данный проект не обновлялся, и для новых версий Ubuntu 20.04 и Ubuntu 22.04 без доработок он не подходит.

Поэтому я написал небольшой playbook для Ansible, чтобы автоматизировать настройку Ubuntu 18.04 / 20.04 / 22.04 под Horizon: https://github.com/omnimod/linux-optimize4vdi

Linux-optimize4vdi выполняет основные шаги по настройке гостевой ОС с Ubuntu, такие как обновление ОС, удаление/установка пакетов, установка параметров рабочего стола GNOME и т.д. Текущая версия поддерживает Ubuntu 22.04.

Автоматизация функций

Этот плейбук выполняет следующие оптимизации:
  1. Удаляет ненужные приложения из Ubuntu (игры, утилиты USB Creator и Transmission).
  2. Обновляет и апгрейдит пакеты с помощью apt update && apt upgrade.
  3. Обновляет установленные приложения с помощью snap refresh.
  4. Устанавливает последнюю версию Open-VM-Tools.
  5. Устанавливает новые приложения через apt (chromium, 7zip, vlc, telegram desktop client и zoom client).
  6. Отключает автоматические обновления и апдейты apt.
  7. Включает тихую загрузку GRUB.
  8. Отключает гибернацию и сон системы.
  9. Отключает ненужные службы (bluetooth, thunderbolt, служба обновления прошивок).
  10. Вводит компьютер в домен.
  11. Компилирует и устанавливает драйвер VHCI для перенаправления USB Horizon.
  12. Компилирует и устанавливает драйвер V4L2Loopback для Horizon RTAV.
  13. Устанавливает Horizon Agent с включенными функциями audio redirection, USB redirection и RTAV.
  14. Включает SSO для Horizon.
  15. Оптимизирует рабочий стол GNOME (отключает анимацию, устанавливает одноцветный фон рабочего стола).
  16. Очищает историю bash.
  17. Перезагружает виртуальный рабочий стол.

Как использовать

Установите гостевую ОС Ubuntu 18.04, 20.04 или 22.04 на виртуальную машину с настройками по умолчанию. При установке создайте учетную запись 'user'. Эта учетная запись будет использоваться для удаленного подключения от Ansible (если вы создали ее в момент установки системы, то ей автоматически будут выданы права sudoer для выполнения части оптимизаций в системе). Если вы используете другое имя пользователя, пожалуйста, измените шаги конфигурации и ansible.cfg соответствующим образом, и проверьте, что пользователь имеет права sudoer.

Установите сервер OpenSSH на виртуальный рабочий стол:
sudo apt get install openssh-server
Установите Ansible на отдельной рабочей станции / клиентском компьютере. При желании вы можете установить Ansible локально на сам виртуальный десктоп. В этом случае рекомендуется пропускать шаг перезагрузки десктопа после выполнения всех задач (см. раздел Тэги).

Для аутентификации и авторизации пользователя Ansible используются ssh ключи. Сгенерируйте ssh-ключ на вашей рабочей станции с настройками по умолчанию:
ssh-keygen
Скопируйте открытый ключ с рабочей станции на виртуальный рабочий стол:
ssh-copy-id -i ~/id_rsa.pub user@virtual_desktop_ip_address
При копировании потребуется однократно указать пароль учетной записи user, который вы задали при установке системы и создании учетной записи.

Измените файл inventory, в разделе [ubuntu] укажите IP-адрес виртуального рабочего стола, а также измените необходимые переменные. Значение переменных описано в файле inventory.

Скачайте и поместите необходимые установочные архивы с пакетами vhci, v4l2loopback и Horizon Agent в папку files.
Запустите плейбук Ansible с помощью команды:
ansible-playbook --ask-become-pass optimize.yml

Тэги

Если вы хотите запустить только определенную оптимизацию, вы можете запустить ansible-playbook с параметром --tags "tag1, tag2, tag3". В настоящее время этот плейбук поддерживает теги:
  • horizon - установить и настроить VMware Horizon Agent на виртуальном рабочем столе.
  • domain - присоединиться к домену с параметрами, указанными в файлах инвентаризации.
  • gnome - выполнить настройки и оптимизацию рабочего стола GNOME.
  • reboot - перезагрузить виртуальный рабочий стол после завершения оптимизации.
Например, чтобы запустить playbook только с оптимизацией горизонта и присоединения к домену, введите:
ansible-playbook --ask-become-pass --tags "horizon, domain" optimize.yml

Переменные

Файл inventory содержит следующие переменные, необходимых для работы плейбука:
  • horizon_agent - имя архива с дистрибутивом horizon_agent
  • vhci_driver - имя архива с драйвером vhci
  • v4l2loopback_driver - имя архива с драйвером v4l2loopback
  • domain_name - имя домена для подключения
  • domain_user - имя учетной записи для ввода в домен
  • domain_password - пароль учетной записи для ввода в домен
  • debug - установите в True для вывода расширенной информации от выполненных команд

понедельник, 12 сентября 2022 г.

Немного о блоге и Энциклопедия VMware

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

А пока я решил обобщить ту информацию, которую накопил за время работы в VMware, и сделать обзорный документ на GitHub по продуктам и решениям компании "Энциклопедия VMware".

Несмотря на прекращение продаж на территории России и Беларуси, технологии VMware остаются востребованными и у нас в стране, и у русскоязычных специалистов за рубежом.

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

понедельник, 17 января 2022 г.

VMware Horizon Recording FAQ

Часто меня спрашивают о том, как работает функция VMware Horizon Recording, и какие у нее есть ограничения, поэтому я решил подготовить FAQ по основным вопросам.


Что такое VMware Horizon Recording?

VMware Horizon Recording - это утилита, позволяющая записывать экран при подключении к удаленному рабочему столу VDI или терминальной сессии Horizon.

Ранее эта утилита называлась Horizon Session Recording и выпускалась в экспериментальном формате в виде Fling (https://flings.vmware.com/horizon-session-recording).

VMware Horizon Recording стал доступен в Horizon 2106 в качестве опционального модуля, включающего в себя агент (Recording Agent) и сервер записи (Recording Server). Агент устанавливается на виртуальный десктоп или терминальный сервер, захватывает изображение с экрана и передает его на сервер записи, где его можно посмотреть или загрузить для дальнейшего анализа.

вторник, 11 января 2022 г.

Оптимизируем работу Horizon Blast на медленных каналах

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

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

понедельник, 29 ноября 2021 г.

Настраиваем VMware Workstation для работы с контейнерами и кластерами Kubernetes

Если вы еще только осваиваете контейнеры и кластеры Kubernetes и ищете простой способ настроить для них тестовую инфраструктуру, то вам может пригодиться VMware Workstation Pro или Workstation Player, в которых начиная с 16 версии появилась поддержка контейнеров.

Механизм работы с контейнерами в Workstation похож на тот, что присутствует в vSphere with Tanzu. Для запуска контейнеров в Workstation используются легковесные ВМ CXR (Container Runtime for ESXi) внутри которых установлена Photon OS с containerd. Каждый контейнер запускается внутри отдельной ВМ, что, с одной стороны, требует дополнительных вычислительных ресурсов на хосте Workstation по сравнению с одной "большой" ВМ, с другой, обеспечивает лучшую изоляцию запускаемых приложений друг от друга, а также позволяет упростить настройку сети для контейнеров, поскольку каждая ВМ имеет уникальный адрес в виртуальной сети.

Помимо запуска контейнеров, вместе с Workstation идет Open Source инструмент Kind, который позволяет создавать кластеры Kubernetes внутри контейнеров.

В этой статье мы рассмотрим шаги по базовой настройке Kubernetes поверх Workstation, а также затронем вопросы по настройке сети для Pod'ов.

среда, 17 ноября 2021 г.

Установка Open Source Telegraf для vRealize Operations

Начиная с версии 8.0, в vRealize Operations добавили функцию мониторинга (Application and OS Monitoring) через UCP Telegraf агент. Данный агент устанавливается в гостевую ОС, собирает метрики с ОС и приложений и передает их в vROps. Хотя UCP Telegraf агент просто устанавливается и настраивается прямо из консоли vROps, он поддерживает довольно скромный набор метрик и приложений.

Поэтому в vROps 8.6, наряду с UCP Telegraf агентом, добавили поддержку Open Source Telegraf агента. Open Source Telegraf поддерживает большое число различных plugin'ов: https://docs.influxdata.com/telegraf/v1.20/plugins/

Это расширяет перечень сценариев использования vROps, позволяя мониторить ОС Windows или Linux внутри ВМ, работающих в vSphere или других гипервизорах, на физических серверах и даже в контейнерах.

В этой статье я рассмотрю пример установки и настройки OS Telegraf агента для гостевой ОС Windows.