[Документация Yandex Cloud](../../../index.md) > [Yandex Compute Cloud](../../index.md) > [Пошаговые инструкции](../index.md) > Выделенные хосты > Создать ВМ в группе выделенных хостов

# Создание виртуальной машины в группе выделенных хостов

{% note info %}

В [регионе Казахстан](../../../overview/concepts/region.md) доступны только [платформы](../../concepts/vm-platforms.md#standard-platforms) `standard-v3` (Intel Ice Lake) и `standard-v3-t4i` (Intel Ice Lake with T4i). Другие типы платформ, кластеры GPU и выделенные хосты недоступны.

{% endnote %}

Виртуальная машина будет создана с привязкой к одному из [выделенных хостов](../../concepts/dedicated-host.md) группы. При остановке ВМ она будет недоступна на хостах группы, а при последующем перезапуске может быть привязана к другому хосту из группы.

Если у вас еще нет группы выделенных хостов, [создайте](create-host-group.md) ее.

Чтобы создать ВМ:

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://kz.console.yandex.cloud) выберите каталог, в котором будет создана ВМ.
  1. [Перейдите](https://kz.console.yandex.cloud/link/compute) в сервис **Compute Cloud**.
  1. На панели слева выберите ![image](../../../_assets/console-icons/server.svg) **Виртуальные машины**.
  1. Нажмите кнопку **Создать виртуальную машину**.
  1. [Задайте](../vm-create/create-linux-vm.md) нужные параметры ВМ.
  1. Раскройте блок **Дополнительно**.
  1. Напротив параметра **Правила привязки к хостам** нажмите **Добавить**.
  1. В поле **Тип привязки** выберите **Группа выделенных хостов**.
  1. В поле **Группы выделенных хостов** выберите группы, на выделенных хостах которых будет запускаться ВМ.

      {% note tip %}
      
      Вы можете задать несколько [правил привязки к хостам](../../concepts/dedicated-host.md#bind-vm), например правило с привязкой к группе и правило с привязкой к конкретному хосту.
      
      {% endnote %}

  1. Нажмите кнопку **Создать ВМ**.

- CLI {#cli}

  Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../../../cli/quickstart.md#install).

  По умолчанию используется каталог, указанный при [создании](../../../cli/operations/profile/profile-create.md) профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду `yc config set folder-id <идентификатор_каталога>`. Также для любой команды вы можете указать другой каталог с помощью параметров `--folder-name` или `--folder-id`. Если вы обращаетесь к ресурсу по имени, поиск будет выполнен в каталоге по умолчанию. Если вы обращаетесь к ресурсу по идентификатору, поиск будет выполнен глобально — во всех каталогах с учетом прав доступа.

  1. Узнайте идентификатор группы выделенных хостов, в которой необходимо создать ВМ:

      ```bash
      yc compute host-group list
      ```

      Результат:

      ```bash
      +------------------------------+-------+--------------+-------+---------------+
      |              ID              | CORES |    MEMORY    | DISKS |   DISK SIZE   |
      +------------------------------+-------+--------------+-------+---------------+
      ...
      | intel-6338-c108-m704-n3200x6 |   108 | 755914244096 |     6 | 3198924357632 |
      +------------------------------+-------+--------------+-------+---------------+
      ```

  1. Получите список доступных подсетей:

      ```bash
      yc vpc subnet list
      ```

      Результат:

      ```text
      +----------------------+-----------------------+----------------------+----------------+---------------+-----------------+
      |          ID          |         NAME          |      NETWORK ID      | ROUTE TABLE ID |     ZONE      |      RANGE      |
      +----------------------+-----------------------+----------------------+----------------+---------------+-----------------+
      | b0c6n43f9lgh******** | default-kz1-d | enpe3m3fa00u******** |                | kz1-d | [10.130.0.0/24] |
      | e2l2da8a20b3******** | default-kz1-b | enpe3m3fa00u******** |                | kz1-b | [10.129.0.0/24] |
      | e9bnlm18l70a******** | default-kz1-a | enpe3m3fa00u******** |                | kz1-a | [10.128.0.0/24] |
      +----------------------+-----------------------+----------------------+----------------+---------------+-----------------+
      ```

  1. Выполните команду для создания ВМ:

      ```bash
      yc compute instance create \
        --host-group-id <идентификатор_группы_выделенных_хостов> \
        --zone <зона_доступности> \
        --platform <идентификатор_платформы> \
        --network-interface subnet-name=<имя_подсети> \
        --attach-local-disk size=<размер_диска>
      ```

      Где:

      * `--host-group-id` — идентификатор группы выделенных хостов.
      * `--zone` — [зона доступности](../../../overview/concepts/geo-scope.md), в которой размещена группа выделенных хостов.
      * `--platform` — [платформа](../../concepts/vm-platforms.md). Должна совпадать с платформой группы выделенных хостов:
        
        * `standard-v3` — для хостов на платформе Intel<sup>®</sup> Ice Lake;
        * `standard-v2` — для архивных хостов на платформе Intel Cascade Lake.
      * `--network-interface` — описание сетевого интерфейса ВМ:

        * `subnet-name` — имя подсети в зоне доступности.

      * `--attach-local-disk` — свойства локального диска, подключаемого к ВМ:
        
        * `size` — размер диска в байтах. Допустимые значения указаны в [списке типов выделенных хостов](../../concepts/dedicated-host.md#host-types-list) и в выводе команды `yc compute host-type list`. Например, для хоста типа `intel-6338-c108-m704-n3200x6` нужно указать значение `3198924357632` (~ 2,91 ТБ). Указывать размер, отличный от размера диска на хосте, нельзя.
        
        Параметр `--attach-local-disk` — необязательный. Чтобы подключить несколько локальных дисков, укажите параметр нужное количество раз. Подробнее в разделе [Локальные и сетевые диски](../../concepts/dedicated-host.md#resource-disks).

      Чтобы указать остальные характеристики ВМ, используйте параметры команды `yc compute instance create`, описанные в [справочнике CLI](../../../cli/cli-ref/compute/cli-ref/instance/create.md). Подробнее в разделах [Виртуальные машины в Compute Cloud](../../concepts/vm.md) и [Создание виртуальной машины](../index.md#vm-create).

      Результат:

      ```text
      done (20s)
      id: fhmbdt1jj2k3********
      folder_id: m4n56op78mev********
      created_at: "2020-10-13T07:41:19Z"
      zone_id: kz1-a
      ...
      placement_policy:
        host_affinity_rules:
        - key: yc.hostGroupId
          op: IN
          values:
          - abcdefg1hi23********
      ```

- API {#api}

  1. Узнайте идентификатор группы выделенных хостов с помощью метода REST API [list](../../api-ref/HostGroup/list.md) для ресурса [HostGroup](../../api-ref/HostGroup/index.md) или вызова gRPC API [HostGroupService/List](../../api-ref/grpc/HostGroup/list.md).
  1. Создайте ВМ с помощью метода REST API [create](../../api-ref/Instance/create.md) для ресурса [Instance](../../api-ref/Instance/index.md) или вызова gRPC API [InstanceService/Create](../../api-ref/grpc/Instance/create.md).

{% endlist %}

Если вы подключили к ВМ локальные диски, [разметьте и смонтируйте их](../vm-control/vm-attach-disk.md#mount) после создания ВМ.


## Пример создания ВМ с локальным диском в группе выделенных хостов {#host-vm-nvme}

Перед созданием ВМ:

1. [Создайте группу выделенных хостов](create-host-group.md) и узнайте ее идентификатор с помощью [команды CLI](../../../cli/cli-ref/compute/cli-ref/host-group/list.md) `yc compute host-group list`.
1. [Создайте пару ключей](../vm-connect/ssh.md#creating-ssh-keys) для подключения к ВМ по SSH.

Создайте ВМ со следующими характеристиками:
* Размещение: группа выделенных хостов.
* Платформа: Intel Ice Lake.
* Количество vCPU: 64.
* Объем RAM: 704 ГБ.
* Количество локальных дисков: 2.
* Размер одного локального диска: 3198924357632 Б (~ 2,91 ТБ).
* Операционная система: [Ubuntu 22.04 LTS](https://yandex.cloud/ru-kz/marketplace/products/yc/ubuntu-22-04-lts).

Для этого выполните следующие действия:

{% list tabs group=instructions %}

- CLI {#cli}

  Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../../../cli/quickstart.md#install).

  По умолчанию используется каталог, указанный при [создании](../../../cli/operations/profile/profile-create.md) профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду `yc config set folder-id <идентификатор_каталога>`. Также для любой команды вы можете указать другой каталог с помощью параметров `--folder-name` или `--folder-id`. Если вы обращаетесь к ресурсу по имени, поиск будет выполнен в каталоге по умолчанию. Если вы обращаетесь к ресурсу по идентификатору, поиск будет выполнен глобально — во всех каталогах с учетом прав доступа.

  Выполните команду для создания ВМ:

  ```bash
  yc compute instance create \
    --cloud-id <идентификатор_облака> \
    --folder-id <идентификатор_каталога> \
    --zone <зона_доступности> \
    --name <имя_ВМ> \
    --platform standard-v3 \
    --cores 64 \
    --memory 704 \
    --host-group-id <идентификатор_группы_выделенных_хостов> \
    --network-interface subnet-id=<идентификатор_подсети> \
    --attach-local-disk "size=3198924357632" \
    --attach-local-disk "size=3198924357632" \
    --ssh-key <путь_к_файлу_открытого_SSH-ключа> \
    --create-boot-disk name=boot-disk,size=1000,image-folder-id=standard-images,image-family=ubuntu-2204-lts
  ```

  Где:

  * `--cloud-id` — [идентификатор облака](../../../resource-manager/operations/cloud/get-id.md).
  * `--folder-id` — идентификатор каталога.
  * `--zone` — зона доступности, в которой размещена группа выделенных хостов.
  * `--name` — имя ВМ.
  * `--platform` — платформа ВМ.
  * `--cores` — количество vCPU.
  * `--memory` — объем RAM.
  * `--host-group-id` — идентификатор группы выделенных хостов.
  * `--network-interface` — описание сетевого интерфейса ВМ:
    * `subnet-id` — идентификатор подсети в зоне доступности, в которой размещается ВМ.
  * `--attach-local-disk` — описание подключаемого локального диска:
    * `size` — размер диска.
  * `--ssh-key` — путь до публичного SSH-ключа. Для этого ключа на виртуальной машине будет автоматически создан пользователь `yc-user`.
  * `--create-boot-disk` — параметры загрузочного диска.

  Результат:

  ```text
  done (20s)
  id: fhmbdt1jj2k3********
  folder_id: m4n56op78mev********
  created_at: "2023-01-16T12:46:50Z"
  zone_id: kz1-a
  ...
  placement_policy:
    host_affinity_rules:
    - key: yc.hostGroupId
      op: IN
      values:
      - abcdefg1hi23********
  ```

{% endlist %}

_Intel является товарным знаком корпорации Intel или ее подразделений._