Skip to content

Resource nubes_vc_vm_v3 · Service ID: 28 · Service Name: Виртуальная машина

Manual · Create params · Modify params · Output params · Operations · Example

Create params

Обязательные параметры (вводимые пользователем)

IDCodeTypeDescriptionConstraints
407vapp_uiduuidref_svc_id=26
411vm_diskintegerОсновной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$
412ip_space_namestring
414image_vmstring
415cloud_inityamlФормат файла cloud-init
```
#cloud-config

manage_etc_hosts: true
package_update: true
```

Если будут указана установка пакетов/прочего, доступ к ВМ **может быть предоставлен раньше чем выполнится cloud-init**
417user_public_keystringПубличная часть SSH-Ключа для пользователя
```
$ ssh-keygen
$ cat ~/.ssh/id_ed25519.pub
```

Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте

IDCodeTypeDefaultDescriptionConstraints
408vm_namestringweb01regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
409vm_cpuinteger1штminvalue=1; maxvalue=64
410vm_raminteger1Gbminvalue=1; maxvalue=256
413access_ip_listarray["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})?"\]$
416user_loginmyuserУчётка SSH
448access_port_listarray-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"}]
1118same_snatbooleanfalseЕсли выставить **false**, приложение будет опубликовано за общим SNAT
Если выставить **true**, приложение будет опубликовано за внешним IP, который будет создан в процессе разворачивания услуги

Если выставить **true** - общий SNAT становится необязательным
value_list=false, true

accessPortList (map-fixed)

IDCodeTypeRequiredDefaultDescriptionConstraints
682portstring**yes**22
683typestring**yes**allvalue_list=tcp, udp, all
Параметры поведения (кратко)
По умолчанию: `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 может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.