4.6.0
This commit is contained in:
217
samples/cloudbroker/rg/resource_rg/main.tf
Normal file
217
samples/cloudbroker/rg/resource_rg/main.tf
Normal file
@@ -0,0 +1,217 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурсов RG
|
||||
Ресурс позволяет:
|
||||
1. Создавать RG
|
||||
2. Редактировать RG
|
||||
3. Удалять RG
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
controller_url = "https://ds1.digitalenergy.online"
|
||||
#oauth2_url = <DECORT_SSO_URL>
|
||||
oauth2_url = "https://sso.digitalenergy.online"
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
resource "decort_cb_rg" "rg" {
|
||||
#имя ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
rg_name = "testing_rg_1"
|
||||
|
||||
#id аккаунта которому будет принадлежать ресурсная группа
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
account_id = 123
|
||||
|
||||
#id сети
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
gid = 1234
|
||||
|
||||
#лимиты ресурсов
|
||||
#опциональные параметры
|
||||
#тип - блок лимитов на ресурсы
|
||||
#resource_limits {
|
||||
#максимальное количество ядер cpu
|
||||
#опциональный праметр
|
||||
#тип - целое число
|
||||
#cu_c = 12
|
||||
|
||||
#максимальный размер агрегированных виртуальных дисков в ГБ
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#cu_dm = 12
|
||||
|
||||
#максимальное количество назначенных общедоступных IP-адресов
|
||||
#опциональный праметр
|
||||
#тип - целое число
|
||||
#cu_i = 12
|
||||
|
||||
#максимальный объем памяти в МБ
|
||||
#опциональный праметр
|
||||
#тип - целое число
|
||||
#cu_m = 12
|
||||
|
||||
#максимальный пиринг отправленных/принятых сетевых передач
|
||||
#опциональный праметр
|
||||
#тип - целое число
|
||||
#cu_np = 12
|
||||
#}
|
||||
|
||||
#имя владельца ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#owner = "owner name"
|
||||
|
||||
#тип сети по умолчанию для этой ресурсной группы.
|
||||
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети.
|
||||
#Допустимые значения: PRIVATE, PUBLIC, NONE.
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
#def_net_type = "NONE"
|
||||
|
||||
#ip cidr частной сети, если сеть по умолчанию PRIVATE
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
#ipcidr = "1.1.1.1"
|
||||
|
||||
#описание
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
#description = "qwerty"
|
||||
|
||||
#id внешней сети
|
||||
#необязательный параметр
|
||||
#тип - целое число
|
||||
#ext_net_id = 123
|
||||
|
||||
#ip внешней сети
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
#ext_ip = "1.1.1.1"
|
||||
|
||||
#причина выполнения
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
#reason = "TEST"
|
||||
|
||||
#зарегистрировать компьюты в регистрационной системе
|
||||
#необязательный параметр
|
||||
#тип - булев
|
||||
#register_computes = true
|
||||
|
||||
#список названий pools
|
||||
#необязательный параметр
|
||||
#тип - массив строк
|
||||
#uniq_pools = ["sep1_poolName1", "sep2_poolName2"]
|
||||
|
||||
#блок для предоставления прав на ресурсную группу
|
||||
#необязательный параметр
|
||||
#тип - блок прав пользователя
|
||||
access {
|
||||
#имя юзера предоставляемому права
|
||||
#обязательный праметр при использовании блока
|
||||
#тип - строка
|
||||
user = "kasim_baybikov_1@decs3o"
|
||||
|
||||
#тип прав
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
#разрешенные значения: "R", "RCX" or "ARCXDU"
|
||||
right = "RCX"
|
||||
|
||||
#причина запроса
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
reason = "test"
|
||||
}
|
||||
|
||||
#установить сеть по умолчанию
|
||||
#необязательный параметр
|
||||
#тип - блок конфигурации сети
|
||||
#при добавлении блока, удалять его нельзя
|
||||
def_net {
|
||||
#тип сети
|
||||
#обязательный параметр при использовании блока
|
||||
#тип - строка
|
||||
net_type = "PUBLIC"
|
||||
|
||||
#id сети
|
||||
#идентификатор сегмента сети. Если net_type — PUBLIC, а net_id — 0,
|
||||
#то будет выбран сегмент внешней сети по умолчанию. Если net_type
|
||||
#имеет значение PRIVATE и net_id=0, будет выбран первый vins, определенный для этой ресурсной группы.
|
||||
#В противном случае net_id идентифицирует либо существующий сегмент внешней сети, либо vins.
|
||||
#необязательный параметр
|
||||
#тип - целое число
|
||||
net_id = 1234
|
||||
|
||||
#причина выполнения
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
reason = "TEST"
|
||||
}
|
||||
|
||||
#может ли запуститься ВМ, если ресурсов CPU недостаточно
|
||||
#необязательный параметр
|
||||
#Допустимые значения: strict, loose.
|
||||
#тип - строка
|
||||
cpu_allocation_parameter = "loose"
|
||||
|
||||
#CPU allocation ratio
|
||||
#необязательный параметр
|
||||
#one pCPU = ratio*vCPU (zero or positive value)
|
||||
#тип - целое число
|
||||
cpu_allocation_ratio = 1
|
||||
|
||||
#флаг доступности ресурсной группы
|
||||
#необязательный параметр
|
||||
#тип - булев
|
||||
enable = true
|
||||
|
||||
#флаг для восстановления удаленной ресурсной группы
|
||||
#необязательный параметр
|
||||
#тип - булев
|
||||
#restore = false
|
||||
|
||||
#флаг для принудительного удаления ресурсной группы
|
||||
#необязательный параметр
|
||||
#тип - булев
|
||||
#перед удалением следует перевести ресурсную группу в статус disabled, выставив enable = false
|
||||
force = true
|
||||
|
||||
#флаг для моментального удаления ресурсной группы
|
||||
#необязательный параметр
|
||||
#тип - булев
|
||||
permanently = true
|
||||
|
||||
#доступ к дополнительным функциям управления ВМ
|
||||
#необязательный параметр
|
||||
#возможные значенния - "hugepages", "numa", "cpupin", "vfnic"
|
||||
#тип - массив строк
|
||||
#внимание - требуется указывать итоговое желаемое состояние для ресурсной группы (рг), так как поле compute_features не будет автоматически
|
||||
#наследоваться от аккаунта, в котором создается рг.
|
||||
compute_features = ["hugepages", "numa", "cpupin", "vfnic"]
|
||||
|
||||
}
|
||||
|
||||
output "output" {
|
||||
value = decort_cb_rg.rg
|
||||
}
|
||||
Reference in New Issue
Block a user