Создать виртуальную машину из публичного образа Windows

    В этом разделе приведена инструкция для создания виртуальной машины с операционной системой Windows. Для создания виртуальной машины на базе Linux воспользуйтесь инструкцией Создать виртуальную машину из публичного образа Linux.

    Чтобы создать виртуальную машину:

    Чтобы создать виртуальную машину:

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

    2. В списке сервисов выберите Compute Cloud.

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

    4. В блоке Базовые параметры:

      • Введите имя и описание ВМ. Требования к имени:

        • Длина — от 3 до 63 символов.
        • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
        • Первый символ — буква. Последний символ — не дефис.

        Примечание

        Имя виртуальной машины используется для генерации имени FQDN единожды — при создании ВМ. Если для вас важно имя FQDN, учитывайте это и задавайте нужное имя виртуальной машины при создании. Подробнее про генерацию имени FQDN читайте в разделе Имя хоста и FQDN.

      • Выберите зону доступности, в которой будет находиться виртуальная машина.

      • (опционально) Выберите или создайте сервисный аккаунт. Использование сервисного аккаунта позволяет гибко настраивать права доступа к ресурсам.

    5. В блоке Публичные образы:

      • Выберите Windows.
      • Выберите версию и редакцию операционной системы.
    6. (опционально) В блоке Диски настройте загрузочный диск:

      • Укажите нужный размер диска.
      • Выберите тип диска.
    7. (опционально) Если вы хотите создать виртуальную машину из существующего диска, в блоке Диски добавьте диск.

    8. В блоке Вычислительные ресурсы:

    9. В блоке Сетевые настройки:

      • Укажите идентификатор подсети или выберите облачную сеть из списка. Если сети нет, нажмите кнопку Создать новую сеть и создайте ее:
        • В открывшемся окне укажите имя новой сети и выберите, к какой подсети необходимо подключить виртуальную машину. У каждой сети должна быть как минимум одна подсеть (если подсети нет, создайте ее). Затем нажмите кнопку Создать.
      • В поле Публичный адрес выберите способ назначения адреса:
        • Автоматически — чтобы назначить случайный IP-адрес из пула адресов Яндекс.Облака.
        • Список — чтобы выбрать публичный IP-адрес из списка зарезервированных заранее статических адресов. Подробнее читайте в разделе Сделать динамический публичный IP-адрес статическим.
        • Без адреса — чтобы не назначать публичный IP-адрес.
      • (опционально) Выберите опцию защиты от DDoS-атак.
    10. При создании виртуальной машины в операционной системе будет автоматически создан пользователь Administrator. В поле Пароль задайте пароль для этого пользователя, с которым можно будет войти на виртуальную машину по RDP.

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

      В образах Windows Server от Яндекс.Облака у пароля пользователя Administrator по умолчанию не истекает срок действия.

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

    Виртуальная машина появится в списке. При создании виртуальной машине назначаются IP-адрес и имя хоста (FQDN).

    Если у вас еще нет интерфейса командной строки Яндекс.Облака, установите и инициализируйте его.

    По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

    1. Посмотрите описание команды CLI для создания виртуальной машины:

      $ yc compute instance create --help
      
    2. Выберите один из публичных образов на базе операционной системы Windows.

      Чтобы получить список доступных образов, выполните следующую команду:

      $ yc compute image list --folder-id standard-images
      +----------------------+-------------------------------------+--------------------------+----------------------+--------+
      |          ID          |                NAME                 |          FAMILY          |     PRODUCT IDS      | STATUS |
      +----------------------+-------------------------------------+--------------------------+----------------------+--------+
      ...
      | fdvk34al8k5nltb58shr | centos-7-1549279494                 | centos-7                 | dqni65lfhvv2den5gtv9 | READY  |
      | fdv7ooobjfl3ts9gqp0q | windows-2016-gvlk-1548913814        | windows-2016-gvlk        | dqnnc72gj2ist3ktjj1p | READY  |
      | fdv4f5kv5cvf3ohu4flt | ubuntu-1604-lts-1549457823          | ubuntu-1604-lts          | dqnnb6dc7640c5i968ro | READY  |
      ...
      +----------------------+-------------------------------------+--------------------------+----------------------+--------+
      
    3. Создайте YAML-файл (например, metadata.yaml) и укажите следующие данные:

      #ps1
      net user administrator "<пароль>"
      
    4. Создайте виртуальную машину в каталоге по умолчанию:

      $ yc compute instance create \
          --name second-instance \
          --metadata-from-file user-data=metadata.yaml \
          --zone ru-central1-a \
          --public-ip \
          --create-boot-disk image-folder-id=standard-images,image-family=windows-2016-gvlk
      

      Данная команда создаст виртуальную машину со следующими характеристиками:

      • С именем second-instance.
      • С OC Windows Server 2016.
      • В зоне доступности ru-central1-a.
      • С пользователем Administrator.
      • С публичным IP.

      Чтобы создать виртуальную машину без публичного IP, исключите флаг --public-ip.

      Задайте:

      • Имя виртуальной машины в флаге --name.

        Имя должно быть уникальным в рамках каталога. Может содержать строчные буквы латинского алфавита, цифры и дефисы. Первый символ должен быть буквой. Последний символ не может быть дефисом. Максимальная длина имени — 63 символа.

        Примечание

        Имя виртуальной машины используется для генерации имени FQDN единожды — при создании ВМ. Если для вас важно имя FQDN, учитывайте это и задавайте нужное имя виртуальной машины при создании. Подробнее про генерацию имени FQDN читайте в разделе Имя хоста и FQDN.

      • Пароль администратора в файле metadata.yaml. Пароль необходим для доступа на виртуальную машину по RDP.

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

        В образах Windows Server от Яндекс.Облака у пароля пользователя Administrator по умолчанию не истекает срок действия.

    Создайте виртуальную машину с помощью метода Create для ресурса Instance:

    1. Получите IAM-токен, используемый для аутентификации в примерах:

    2. Получите идентификатор каталога.

    3. Получите информацию об образе, из которого надо создать виртуальную машину (идентификатор образа и минимальный размер диска):

      • Если вы знаете семейство образа, получите информации о последнем образе в этом семействе:
        $ export IAM_TOKEN=CggaATEVAgA...
        $ export FAMILY=windows-2016-gvlk
        $ curl -H "Authorization: Bearer ${IAM_TOKEN}" \
          "https://compute.api.cloud.yandex.net/compute/v1/images:latestByFamily?folderId=standard-images&family=${FAMILY}"
        
        {
         "productIds": [
          "f2eu62v659or2tqv28l0"
         ],
         "os": {
          "type": "WINDOWS"
         },
         "id": "fd85s1nlcavgdpc16hj3",
         "folderId": "standard-images",
         "createdAt": "2019-04-30T10:53:56Z",
         "name": "windows-2016-gvlk-1556619485",
         "description": "Windows Server 2016 Datacenter is a operating system for virtualized private cloud environments. This version is activated with GVLK. Website and documentation: https://www.microsoft.com/en-us/cloud-platform/windows-server",
         "family": "windows-2016-gvlk",
         "storageSize": "26344423424",
         "minDiskSize": "26843545600",
         "status": "READY"
        }
        
      • Вы можете получить информацию об образе из списка публичных образов.
    4. Получите идентификатор подсети и идентификатор зоны доступности. В запросе укажите идентификатор каталога, в котором создана подсеть:

      $ export IAM_TOKEN=CggaATEVAgA...
      $ export FOLDER_ID=b1gvmob95yysaplct532
      $ curl -H "Authorization: Bearer ${IAM_TOKEN}" \
        "https://vpc.api.cloud.yandex.net/vpc/v1/subnets?folderId=${FOLDER_ID}"
      {
       "subnets": [
        {
         "v4CidrBlocks": [
          "10.130.0.0/24"
         ],
         "id": "b0c6n43ftldh30l0vfg2",
         "folderId": "b1gvmob95yysaplct532",
         "createdAt": "2018-09-23T12:15:00Z",
         "name": "default-ru-central1-c",
         "description": "Auto-created default subnet for zone ru-central1-c",
         "networkId": "enpe3m3fagludao8aslg",
         "zoneId": "ru-central1-c"
        },
        ...
       ]
      }
      
    5. Создайте файл с телом запроса на создание виртуальной машины, например body.json. Укажите следующие параметры:

      • folderId — идентификатор каталога.

      • name — имя, которое будет присвоено виртуальной машине при создании.

      • zoneId — зона доступности, которая соответствует выбранной подсети.

      • platformIdплатформа.

      • resourceSpec — ресурсы, доступные виртуальной машине. Значения должны соответствовать выбранной платформе.

      • metadata — в метаданных в свойстве user-data необходимо передать скрипт с паролем администратора, например:

        "metadata": {
          "user-data": "#ps1\nnet user Administrator Passw0rd"
        },
        

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

        В образах Windows Server от Яндекс.Облака у пароля пользователя Administrator по умолчанию не истекает срок действия.

      • bootDiskSpec — настройки загрузочного диска. Укажите идентификатор выбранного образа и размер диска. Размер диска должен быть не меньше минимального размера диска, указанного в информации об образе.

      • networkInterfaceSpecs — настройки сети.

        • subnetId — идентификатор выбранной подсети.
        • primaryV4AddressSpec — IP-адрес, который будет присвоен виртуальной машине. Чтобы добавить публичный IP-адрес виртуальной машине, укажите:
          "primaryV4AddressSpec": {
              "oneToOneNatSpec": {
                "ipVersion": "IPV4"
              }
            }
          

      Подробнее про формат тела запроса в справочнике API.

      Пример файла body.json:

      {
        "folderId": "b1gvmob95yysaplct532",
        "name": "instance-demo-no-pwauth",
        "zoneId": "ru-central1-c",
        "platformId": "standard-v1",
        "resourcesSpec": {
          "memory": "4294967296",
          "cores": "2",
        },
        "metadata": {
          "user-data": "#ps1\nnet user Administrator Passw0rd"
        },
        "bootDiskSpec": {
          "diskSpec": {
            "size": "26843545600",
            "imageId": "fd85s1nlcavgdpc16hj3"
          }
        },
        "networkInterfaceSpecs": [
          {
            "subnetId": "b0c6n43ftldh30l0vfg2",
            "primaryV4AddressSpec": {
              "oneToOneNatSpec": {
                "ipVersion": "IPV4"
              }
            }
          }
        ]
      }
      
    6. Создайте виртуальную машину:

      $ export IAM_TOKEN=CggaATEVAgA...
      $ curl -X POST \
        -H "Content-Type: application/json" \
        -H "Authorization: Bearer ${IAM_TOKEN}" \
        -d '@body.json' \
        https://compute.api.cloud.yandex.net/compute/v1/instances
      

    Создание виртуальной машины и инициализация операционной системы Windows занимают до 5 минут. Когда машина создана и готова к работе, она получает статус RUNNING. Вы можете следить за статусами машин в списке виртуальных машин вашего каталога.

    При создании виртуальной машине назначаются IP-адрес и FQDN. Эти данные можно использовать для доступа к виртуальной машине по RDP.

    Публичный IP-адрес можно сделать статическим. Подробнее читайте в разделе Сделать публичный IP-адрес виртуальной машины статическим.

    См. также