Resource nubes_vc_vm_v3 · v2.0.0 · Service ID: 28 · Service Name: Виртуальная машина¶
Manual · Create params · Modify params · Output params · Operations · Example
Create params¶
| Параметр | Тип | Обязательный | По умолчанию | Описание | Ограничения |
|---|---|---|---|---|---|
vapp_uid |
uuid |
да | ref_svc_id=26 | ||
vm_name |
string |
да | web01 |
regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | |
vm_cpu |
integer |
да | 1 |
шт | minvalue=1; maxvalue=64 |
vm_ram |
integer |
да | 1 |
Gb | minvalue=1; maxvalue=256 |
vm_disk |
integer |
— | Основной диск у vm зависит от образа (см. документацию) Если необходимо дополнительное место для vm, введите колличество Gb в эту форму |
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$ | |
ip_space_name |
string |
да | |||
access_ip_list |
array |
— | ["0.0.0.0/0"] |
Формат массива Каким адресам будет предоставлен доступ до вм Требует выделенного внешнего IP Если ничего не передано, то выставлено ["0.0.0.0/0"] |
regex=^[("[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}(/[0-9]{1,2})?"\s,\s)*"[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}(/[0-9]{1,2})?"]$ |
image_vm |
string |
да | |||
cloud_init |
yaml |
— | Формат файла cloud-init<br/>#cloud-config<br/><br/>manage_etc_hosts: true<br/>package_update: true<br/>Если будут указана установка пакетов/прочего, доступ к ВМ может быть предоставлен раньше чем выполнится cloud-init |
||
user_login |
да | myuser |
Учётка SSH | ||
user_public_key |
string |
да | Публичная часть SSH-Ключа для пользователя<br/>$ ssh-keygen <br/>$ cat ~/.ssh/id_ed25519.pub<br/> |
||
access_port_list |
array-map-fixed |
да | [{"port": "22", "type": "tcp"}, {"port": "10050", "type": "tcp"}] |
Формат следующий: - 22/tcp - доступ только для 22 по tcp - 53/udp - доступ только для 53 по udp - 80/all - доступ для 80 по tcp/udp Формат массива: - [{"port":"22","type":"all"}] |
|
same_snat |
boolean |
— | false |
Если выставить false, приложение будет опубликовано за общим SNAT Если выставить true, приложение будет опубликовано за внешним IP, который будет создан в процессе разворачивания услуги Если выставить true - общий SNAT становится необязательным |
Допустимые значения: false, true |
accessPortList (map-fixed)¶
| Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|
port |
string |
yes | 22 |
||
type |
string |
yes | all |
Допустимые значения: tcp, udp, all |
Важно: поведение при destroy
По умолчанию: suspend_on_destroy = True, adopt_existing_on_create = False.
При terraform destroy или удалении ресурса из манифеста:
- suspend_on_destroy=true — инстанс переводится в Suspend (не удаляется).
- suspend_on_destroy=false — Terraform удаляет ресурс только из state.
При apply флаг adopt_existing_on_create работает как авто-import:
- false — если ресурс уже есть, будет ошибка.
- true — Terraform может взять существующий инстанс под управление.
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.