Создание виртуальной машины с GPU
В этом разделе приведена инструкция для создания ВМ с GPU. Подробнее с конфигурациями ВМ вы можете ознакомиться в разделе Графические ускорители GPU.
По умолчанию в облаке установлена нулевая квота на создание ВМ с GPU. Чтобы изменить квоту
Виртуальные машины на платформах Intel Broadwell with NVIDIA® Tesla® V100, Intel Cascade Lake with NVIDIA® Tesla® V100, AMD EPYC™ with NVIDIA® Ampere® A100 и Intel Ice Lake with NVIDIA® Tesla® T4 можно создать в зонах доступности ru-central1-a
и ru-central1-b
.
-
В консоли управления
выберите каталог, в котором будет создана виртуальная машина. -
В списке сервисов выберите Compute Cloud.
-
Справа сверху нажмите Создать виртуальную машину.
-
В блоке Базовые параметры:
-
Введите имя и описание ВМ. Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
Примечание
Имя виртуальной машины используется для генерации внутреннего FQDN единожды — при создании ВМ. Если для вас важен внутренний FQDN, учитывайте это и задавайте нужное имя ВМ при создании.
-
Выберите зону доступности, в которой будет находиться виртуальная машина.
Виртуальные машины на платформах Intel Broadwell with NVIDIA® Tesla® V100, Intel Cascade Lake with NVIDIA® Tesla® V100, AMD EPYC™ with NVIDIA® Ampere® A100 и Intel Ice Lake with NVIDIA® Tesla® T4 можно создать в зонах доступности
ru-central1-a
иru-central1-b
.
-
-
В блоке Выбор образа/загрузочного диска на вкладке Marketplace выберите один из GPU-ориентированных образов и версию операционной системы.
Для виртуальных машин с GPU доступны специальные образы операционных систем с драйверами NVIDIA:
- Intel Broadwell with NVIDIA® Tesla® V100 и Intel Cascade Lake with NVIDIA® Tesla® V100
-
- Ubuntu 16.04 LTS GPU (
ubuntu-1604-lts-gpu
) - Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 16.04 LTS GPU (
- Intel Ice Lake with NVIDIA® Tesla® T4
-
- Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 20.04 LTS GPU (
- AMD EPYC™ with NVIDIA® Ampere® A100
-
- Ubuntu 20.04 LTS GPU A100 (
ubuntu-2004-lts-a100
) - Ubuntu 18.04 LTS GPU A100 (
ubuntu-1804-lts-a100
)
- Ubuntu 20.04 LTS GPU A100 (
Мы рекомендуем использовать стандартный образ от Yandex Cloud. Вы также можете установить драйверы на другой стандартный образ самостоятельно или создать собственный образ с предустановленными драйверами.
-
(Опционально) В блоке Диски и файловые хранилища настройте загрузочный диск:
-
Выберите тип диска.
-
Укажите нужный размер диска.
-
(Опционально) Чтобы зашифровать загрузочный диск, в блоке Диски и файловые хранилища задайте для диска параметры шифрования:
- Выберите опцию Зашифрованный диск.
- В поле Ключ KMS выберите ключ, которым вы хотите зашифровать диск. Чтобы создать новый ключ, нажмите кнопку Создать.
- В поле Сервисный аккаунт выберите сервисный аккаунт c ролью
kms.keys.encrypterDecrypter
на указанный ключ. Чтобы создать новый сервисный аккаунт, нажмите кнопку Создать.
Шифрование в Compute Cloud находится на стадии Preview. Чтобы получить доступ к функциональности, на странице создания ресурса в блоке Шифрование нажмите кнопку Запросить доступ или обратитесь в техническую поддержку
.Если деактивировать ключ, которым были зашифрованы диск или снимок, доступ к данным будет приостановлен, пока ключ не будет снова активирован.
Внимание
Если удалить ключ или его версию, которыми были зашифрованы диск или снимок, доступ к данным будет безвозвратно потерян. Подробнее см. Удаление версии ключа.
-
-
(Опционально) В блоке Диски и файловые хранилища на вкладке Файловые хранилища подключите файловое хранилище:
- Нажмите Подключить файловое хранилище.
- В открывшемся окне выберите файловое хранилище.
- Укажите имя устройства.
- Нажмите Подключить файловое хранилище.
-
В блоке Вычислительные ресурсы:
-
Выберите одну из платформ:
- Intel Broadwell with NVIDIA® Tesla® V100
- Intel Cascade Lake with NVIDIA® Tesla® V100
- AMD EPYC™ with NVIDIA® Ampere® A100
- Intel Ice Lake with NVIDIA® Tesla® T4
-
Выберите конфигурацию виртуальной машины, указав необходимое количество GPU.
-
При необходимости сделайте виртуальную машину прерываемой.
-
-
В блоке Сетевые настройки:
-
Укажите идентификатор подсети или выберите облачную сеть из списка.
Если сети нет, нажмите Создать сеть и создайте ее:- В открывшемся окне укажите имя сети и каталог, в котором она будет создана.
- (Опционально) Для автоматического создания подсетей выберите опцию Создать подсети.
- Нажмите Создать.
У каждой сети должна быть как минимум одна подсеть. Если подсети нет, создайте ее, выбрав Добавить подсеть.
-
В поле Публичный адрес выберите способ назначения адреса:
Автоматически
— чтобы назначить случайный IP-адрес из пула адресов Yandex Cloud. В этом случае можно включить защиту от DDoS-атак при помощи опции ниже.Список
— чтобы выбрать публичный IP-адрес из списка зарезервированных заранее статических адресов. Подробнее читайте в разделе Сделать динамический публичный IP-адрес статическим.Без адреса
— чтобы не назначать публичный IP-адрес.
-
В поле Внутренний IPv4-адрес выберите способ назначения внутренних адресов:
Автоматически
илиВручную
. -
(Опционально) Создайте записи для ВМ в зоне DNS:
- Разверните блок Настройки DNS для внутренних адресов и нажмите Добавить запись.
- Укажите зону, FQDN и время жизни записи. При указании FQDN для зоны доступна опция
Определять автоматически
.
Вы можете добавить несколько записей во внутренние зоны DNS. Подробнее см. Интеграция Cloud DNS с Compute Cloud. - Чтобы создать еще одну запись, нажмите кнопку Добавить запись.
-
Выберите подходящие группы безопасности.
-
-
В блоке Доступ укажите данные для доступа на виртуальную машину:
-
(Опционально) Выберите или создайте сервисный аккаунт. Использование сервисного аккаунта позволяет гибко настраивать права доступа к ресурсам.
Для ВМ с операционной системой на базе Linux:
-
В поле Логин введите имя пользователя.
Внимание
Не используйте логин
root
или другие имена, зарезервированные операционной системой. Для выполнения операций, требующих прав суперпользователя, используйте командуsudo
. -
В поле SSH-ключ вставьте содержимое файла открытого ключа.
-
(Опционально) При необходимости разрешите доступ к серийной консоли.
В публичных образах Linux, предоставляемых Yandex Cloud, возможность подключения по протоколу SSH с использованием логина и пароля по умолчанию отключена.
-
-
-
(Опционально) В блоке Размещение выберите группу размещения ВМ.
-
Нажмите Создать ВМ.
Виртуальная машина появится в списке.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для создания ВМ:
yc compute instance create --help
-
Подготовьте пару ключей (открытый и закрытый) для SSH-доступа на ВМ.
-
Выберите один из публичных образов.
Чтобы получить список доступных образов, выполните следующую команду:
yc compute image list --folder-id standard-images
Результат:
+----------------------+----------------------------------+-----------------------+----------------------+--------+ | ID | NAME | FAMILY | PRODUCT IDS | STATUS | +----------------------+----------------------------------+-----------------------+----------------------+--------+ ... | fdv7ooobjfl3******** | windows-2016-gvlk-gpu-1548913814 | windows-2016-gvlk-gpu | dqnnc72gj2is******** | READY | | fdv4f5kv5cvf******** | ubuntu-1604-lts-gpu-1549457823 | ubuntu-1604-lts-gpu | dqnnb6dc7640******** | READY | ... +----------------------+----------------------------------+-----------------------+----------------------+--------+
Для виртуальных машин с GPU доступны специальные образы операционных систем с драйверами NVIDIA:
- Intel Broadwell with NVIDIA® Tesla® V100 и Intel Cascade Lake with NVIDIA® Tesla® V100
-
- Ubuntu 16.04 LTS GPU (
ubuntu-1604-lts-gpu
) - Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 16.04 LTS GPU (
- Intel Ice Lake with NVIDIA® Tesla® T4
-
- Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 20.04 LTS GPU (
- AMD EPYC™ with NVIDIA® Ampere® A100
-
- Ubuntu 20.04 LTS GPU A100 (
ubuntu-2004-lts-a100
) - Ubuntu 18.04 LTS GPU A100 (
ubuntu-1804-lts-a100
)
- Ubuntu 20.04 LTS GPU A100 (
Мы рекомендуем использовать стандартный образ от Yandex Cloud. Вы также можете установить драйверы на другой стандартный образ самостоятельно или создать собственный образ с предустановленными драйверами.
-
Создайте ВМ в каталоге по умолчанию:
yc compute instance create \ --name gpu-instance \ --zone ru-central1-a \ --platform=gpu-standard-v3 \ --cores=8 \ --memory=96 \ --gpus=1 \ --network-interface subnet-name=default-ru-central1-a,nat-ip-version=ipv4 \ --create-boot-disk image-folder-id=standard-images,image-family=ubuntu-1604-lts-gpu \ --ssh-key ~/.ssh/id_ed25519.pub
Где:
-
--name
– имя ВМ.Примечание
Имя виртуальной машины используется для генерации внутреннего FQDN единожды — при создании ВМ. Если для вас важен внутренний FQDN, учитывайте это и задавайте нужное имя ВМ при создании.
-
--zone
– зона доступности.Виртуальные машины на платформах Intel Broadwell with NVIDIA® Tesla® V100, Intel Cascade Lake with NVIDIA® Tesla® V100, AMD EPYC™ with NVIDIA® Ampere® A100 и Intel Ice Lake with NVIDIA® Tesla® T4 можно создать в зонах доступности
ru-central1-a
иru-central1-b
. -
--platform
– идентификатор платформы:gpu-standard-v1
для платформы Intel Broadwell with NVIDIA® Tesla® V100.gpu-standard-v2
для платформы Intel Cascade Lake with NVIDIA® Tesla® V100.gpu-standard-v3
для платформы AMD EPYC™ with NVIDIA® Ampere® A100.standard-v3-t4
для платформы Intel Ice Lake with NVIDIA® Tesla® T4.
-
--cores
– количество vCPU. -
--memory
– размер RAM. -
--gpus
– количество GPU. -
--preemptible
– если нужно сделать ВМ прерываемой. -
--create-boot-disk
– образ операционной системы.Для виртуальных машин с GPU доступны специальные образы операционных систем с драйверами NVIDIA:
- Intel Broadwell with NVIDIA® Tesla® V100 и Intel Cascade Lake with NVIDIA® Tesla® V100
-
- Ubuntu 16.04 LTS GPU (
ubuntu-1604-lts-gpu
) - Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 16.04 LTS GPU (
- Intel Ice Lake with NVIDIA® Tesla® T4
-
- Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 20.04 LTS GPU (
- AMD EPYC™ with NVIDIA® Ampere® A100
-
- Ubuntu 20.04 LTS GPU A100 (
ubuntu-2004-lts-a100
) - Ubuntu 18.04 LTS GPU A100 (
ubuntu-1804-lts-a100
)
- Ubuntu 20.04 LTS GPU A100 (
Мы рекомендуем использовать стандартный образ от Yandex Cloud. Вы также можете установить драйверы на другой стандартный образ самостоятельно или создать собственный образ с предустановленными драйверами.
-
nat-ip-version=ipv4
– публичный IP-адрес. Чтобы создать ВМ без публичного IP-адреса, исключите параметр.
Получите описание созданной ВМ:
yc compute instance get --full gpu-instance
Результат:
name: gpu-instance zone_id: ru-central1-a platform_id: gpu-standard-v3 resources: memory: "103079215104" cores: "8" core_fraction: "100" gpus: "1" status: RUNNING ...
-
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать:
resource "yandex_compute_disk" "boot-disk" { name = "<имя_диска>" type = "<тип_диска>" zone = "<зона_доступности>" size = "<размер_диска>" image_id = "<идентификатор_образа>" } resource "yandex_compute_instance" "vm-1" { name = "vm-with-gpu" allow_stopping_for_update = true platform_id = "standard-v3" zone = "<зона_доступности>" resources { cores = <количество_ядер_vCPU> memory = <объем_RAM_ГБ> gpus = <количество_GPU> } boot_disk { disk_id = yandex_compute_disk.boot-disk.id } network_interface { subnet_id = "${yandex_vpc_subnet.subnet-1.id}" nat = true } metadata = { ssh-keys = "<имя_пользователя>:<содержимое_SSH-ключа>" } } resource "yandex_vpc_network" "network-1" { name = "network1" } resource "yandex_vpc_subnet" "subnet-1" { name = "subnet1" zone = "<зона_доступности>" network_id = "${yandex_vpc_network.network-1.id}" }
Где:
-
yandex_compute_disk
— описание загрузочного диска:-
name
— имя диска. -
type
— тип создаваемого диска. -
zone
— зона доступности, в которой будет находиться диск. -
size
— размер диска в ГБ. -
image_id
— идентификатор образа для ВМ. Вы можете получить идентификатор образа из списка публичных образов.Для виртуальных машин с GPU доступны специальные образы операционных систем с драйверами NVIDIA:
- Intel Broadwell with NVIDIA® Tesla® V100 и Intel Cascade Lake with NVIDIA® Tesla® V100
-
- Ubuntu 16.04 LTS GPU (
ubuntu-1604-lts-gpu
) - Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 16.04 LTS GPU (
- Intel Ice Lake with NVIDIA® Tesla® T4
-
- Ubuntu 20.04 LTS GPU (
ubuntu-2004-lts-gpu
)
- Ubuntu 20.04 LTS GPU (
- AMD EPYC™ with NVIDIA® Ampere® A100
-
- Ubuntu 20.04 LTS GPU A100 (
ubuntu-2004-lts-a100
) - Ubuntu 18.04 LTS GPU A100 (
ubuntu-1804-lts-a100
)
- Ubuntu 20.04 LTS GPU A100 (
Мы рекомендуем использовать стандартный образ от Yandex Cloud. Вы также можете установить драйверы на другой стандартный образ самостоятельно или создать собственный образ с предустановленными драйверами.
-
-
yandex_compute_instance
— описание ВМ:-
name
— имя ВМ. -
allow_stopping_for_update
— разрешение на остановку работы виртуальной машины для внесения изменений. Установите значениеtrue
, если планируете изменять сетевые настройки, вычислительные ресурсы, диски или файловые хранилища ВМ с помощью Terraform. Значение по умолчаниюfalse
. -
platform_id
— идентификатор платформы: -
zone
— зона доступности, в которой будет находиться ВМ.Виртуальные машины на платформах Intel Broadwell with NVIDIA® Tesla® V100, Intel Cascade Lake with NVIDIA® Tesla® V100, AMD EPYC™ with NVIDIA® Ampere® A100 и Intel Ice Lake with NVIDIA® Tesla® T4 можно создать в зонах доступности
ru-central1-a
иru-central1-b
. -
platform_id
— идентификатор платформы:gpu-standard-v1
для платформы Intel Broadwell with NVIDIA® Tesla® V100.gpu-standard-v2
для платформы Intel Cascade Lake with NVIDIA® Tesla® V100.gpu-standard-v3
для платформы AMD EPYC™ with NVIDIA® Ampere® A100.standard-v3-t4
для платформы Intel Ice Lake with NVIDIA® Tesla® T4.
-
resources
— количество ядер vCPU и объем RAM, доступные ВМ. Значения должны соответствовать выбранной платформе. -
boot_disk
— настройки загрузочного диска. Укажите идентификатор диска. -
network_interface
— настройка сети. Укажите идентификатор выбранной подсети. Чтобы автоматически назначить ВМ публичный IP-адрес, укажитеnat = true
. -
metadata
— в метаданных необходимо передать открытый ключ для SSH-доступа на ВМ. Подробнее в разделе Метаданные виртуальной машины.
-
-
yandex_vpc_network
— описание облачной сети. -
yandex_vpc_subnet
— описание подсети, к которой будет подключена ВМ.
Примечание
Если у вас уже есть подходящие ресурсы (облачная сеть и подсеть), описывать их повторно не нужно. Используйте их имена и идентификаторы в соответствующих параметрах.
Более подробную информацию о ресурсах, которые вы можете создать с помощью Terraform, см. в документации провайдера
. -
-
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
После этого в указанном каталоге будут созданы все требуемые ресурсы. Проверить появление ресурсов и их настройки можно в консоли управления
. -
Чтобы создать ВМ, воспользуйтесь методом REST API create для ресурса Instance или вызовом gRPC API InstanceService/Create.
При создании виртуальной машине назначаются IP-адрес и доменное имя (FQDN).
См. также
- Узнайте, как изменить конфигурацию ВМ.