# Провайдер XenServer/XCP-NG

Данный тип сервис-провайдера предоставляет возможность публикации сервисов виртуальных рабочих столов с использованием платформы XenServer или XCP-ng.

**XenServer** — коммерческий гипервизор от Citrix, основанный на технологии Xen. Предназначен для виртуализации серверов.

**XCP-ng** — открытая альтернатива XenServer. Обеспечивает аналогичный функционал без лицензионных ограничений, поддерживает расширенные функции (например, резервное копирование, live migration и управление через Xen Orchestra).

Оба решения используют гипервизор Xen.

## Создание сервис-провайдера <a href="#provider" id="provider"></a>

Для регистрации сервис-провайдера XenServer/XCP-ng перейдите в раздел **«Сервисы»**, нажмите **«Новый»** и выберите тип провайдера **XenServer/XCP-ng**.

### Основные настройки <a href="#main" id="main"></a>

**Имя (Name)** — наименование создаваемого провайдера для отображения в системе.

**Хост (Host)** — IP-адрес или FQDN сервера Xen.

**Имя пользователя (Username)** — имя пользователя с административными правами на XenServer/XCP-ng.

**Пароль (Password)** — пароль пользователя.

<figure><img src="https://raw.githubusercontent.com/hostco-ru/hostvm/master/.gitbook/assets/xenserver1.png" alt=""><figcaption></figcaption></figure>

### Расширенные настройки <a href="#advanced" id="advanced"></a>

**Одновременное создание (Creation concurrency)** — количество одновременных задач создания рабочих столов.

**Одновременное удаление (Removal concurrency)** — количество одновременных задач удаления рабочих столов.

**Диапазон MAC-адресов (MACs range)** — диапазон MAC-адресов для присвоения создаваемым виртуальным рабочим столам. Должен находиться в пределах `00:50:56:10:00:00–00:50:56:3F:FF:FF`.

**Проверить сертификат (Certificate check)** — проверка сертификата хоста виртуализации.

**Резервный хост (Reserve host)** — IP-адрес или FQDN резервного сервера (используется при недоступности основного).

<figure><img src="https://raw.githubusercontent.com/hostco-ru/hostvm/master/.gitbook/assets/xenserver2.png" alt=""><figcaption></figcaption></figure>

## Создание сервисов <a href="#services" id="services"></a>

После завершения настройки провайдера откройте его параметры с помощью двойного щелчка, перейдите на вкладку "Сервисы", нажмите "Новый" и выберите тип создаваемого сервиса:

* Связанные клоны Xen (Xen Linked Clone) - для публикации виртуальных рабочих столов на основе "золотого" образа.
* Фиксированные машины Xen (Xen Fixed Machines) - для подключения пользователей к существующим виртуальным машинам платформы виртуализации. Требует установки xen agent на машины. *Данный тип сервиса доступен начиная с версии брокера 4.0.*

### Связанные клоны <a href="#linked-clones" id="linked-clones"></a>

**Имя (Name)** - наименование создаваемого сервиса для отображения в системе.

**Storage SR** - хранилище для размещения виртуальных рабочих столов (поддерживаются только общие хранилища).

**Зарезервированное место (Reserved Space)** - минимальный порог свободного места в хранилище, для возможности разворачивания клонов (в ГБ).

#### Машина <a href="#linked-machine" id="linked-machine"></a>

**Базовая машина (Base Machine)** - "золотой" образ ВМ, используемый брокером для развертывания виртуальных рабочих столов.

**Сети (Network)** - сеть, подключаемая к виртуальным рабочим столам.

**Память (Мб) (Memory (Mb))** - память, выдаваемая виртуальным рабочим столам.

**Shadow** - множитель теневой памяти.

**Имена машин (Machine Names)** - базовое имя машины, используемое для создаваемых виртуальных рабочих столов.

**Длина имени (Name Length)** - размер числового суффикса, добавляемого к базовому имени машины.

### Фиксированные машины <a href="#fixed-machines" id="fixed-machines"></a>

> Данный тип сервиса доступен начиная с версии брокера 4.0.

#### Основные настройки <a href="#fixed-main" id="fixed-main"></a>

**Имя (Name)** - наименование создаваемого сервиса для отображения в системе.

**Токен сервиса (Service token)** - токен, используемый агентами для связи с сервисом (задается в виде произвольной последовательности букв и цифр). Если задано, брокер будет отслеживать "вход" и "выход" пользователя в сеанс ОС машины, и при выходе из сеанса автоматически освобождать машину, делая ее доступной для подключения другого пользователя. Если поле оставить пустым, машина будет оставаться постоянно закрепленной за пользователем (до ручного сброса администратором системы).

> Если поле `Токен сервиса` заполнено, на машины, заданные в качестве используемых сервисом, необходимо установить соответствующий агент VDI типа `Unmanaged`, и при его настройке задать такое же значение поля `Токен сервиса`, как и в настройках базового сервиса.

#### Машина <a href="#fixed-machine" id="fixed-machine"></a>

**Папка (Folder)** - папка с базовыми машинами.

**Машины (Machines)** - виртуальные машины из выбранной папки, предоставляемые пользователям данного сервиса. Отметьте нужные машины в списке.

#### Расширенные настройки <a href="#fixed-advanced" id="fixed-advanced"></a>

**Рандомизировать назначение машины (Randomize machine assignation)** - если включено, брокер будет назначать машины случайным образом вместо линейного.

**Оставлять при ошибке (Keep on error)** - если включено, при обнаружении ошибок доступа к машине она не будет переведена в статус "Ошибка".

**Использовать снапшоты (Use snapshots)** - если включено, брокер попытается создать снапшот (если еще не создан) перед доступом к машине и восстановить ее состояние после использования.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET http://localhost:3000/url/kb.pvhostvm.ru/hostvm-vdi/hostvm-vdi-admin-guide/service-providers/xenserver-xcp-ng.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
