|
|
_Resource_ функция **dynamix_bservice** служит для управления базовым сервисом (basic service). Базовый сервис служит шаблоном для создания вычислительных мощностей (computes) по заданным правилам.
|
|
|
|
|
|
## Аргументы
|
|
|
_Resource_ функция **dynamix_bservice** принимает следующие аргументы:
|
|
|
|
|
|
| Аргумент | Тип | Обязательный | Описание |
|
|
|
| --- | --- | :---: | --- |
|
|
|
| service_name | string | :heavy_check_mark: | Название сервиса<br/>Используется при создании сервиса |
|
|
|
| rg_id | int | :heavy_check_mark: | ID ресурсной группы<br/>Используется при создании сервиса |
|
|
|
| ssh_key | string | :x: | Ключ пользователя для подключения по ssh<br/>Используется при создании сервиса |
|
|
|
| ssh_user | string | :x: | Имя пользователя для подключения по ssh<br/>Используется при создании сервиса |
|
|
|
| enable | bool | :x: | Флаг доступности<br/>Используется при редактировании сервиса<br/>По-умолчанию: false |
|
|
|
| start | bool | :x: | Флаг старта/остановки сервиса<br/>Используется при редактировании<br/>По-умолчанию: false |
|
|
|
| snapshots | Struct{<br/>label string<br/>rollback bool <br/>} | :x: | Снимки состояния сервиса<br/>Название снимка. Обязательное поле для создания снимка<br/>Восстановление по этому снимку. true - для активации<br/> <br/> <br/> |
|
|
|
| restore | bool | :x: | Флаг восстановления сервиса<br/>Используется при редактировании<br/>По-умолчанию: true |
|
|
|
| permanently | bool | :x: | Флаг моментального удаления сервиса<br/>Если true - сервис и все его зависимости мгновенно удаляется из платформы без возможности восстановления<br/>Если false - сервис попадает в "корзину", из которой его можно восстановить<br/>Используется при удалении<br/>По-умолчанию: false |
|
|
|
<!--| service_id | int | :x: | ID сервиса, позволяет сформировать .tfstate, если сервис есть в платформе. В таким случае, все обязательные поля будут проигнорированы |-->
|
|
|
|
|
|
## Возвращаемые значения
|
|
|
В случае успешного выполнения _data source_ функция **dynamix_bservice** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров:
|
|
|
|
|
|
| Параметр | Тип | Описание |
|
|
|
| --- | --- | --- |
|
|
|
| account_id | int | ID аккаунта |
|
|
|
| account_name | string | Название аккаунта |
|
|
|
| base_domain | string | Базовый домен |
|
|
|
| computes | []Struct [см. ниже](#описание-структуры-compute) | Список компьютов |
|
|
|
| cpu_total | int | Кол-во ядер |
|
|
|
| created_by | string | Кем создан сервис |
|
|
|
| created_time | int | Время создания сервиса |
|
|
|
| deleted_by | string | Кем удален сервис |
|
|
|
| deleted_time | int | Время удаления сервиса |
|
|
|
| disk_total | int | Кол-во используемого места на дисках, ГБ |
|
|
|
| gid | int | Grid id |
|
|
|
| groups | []Struct [см. ниже](#описание-структуры-group) | Список вычислительных групп сервиса |
|
|
|
| groups_name | []string | Список вычислительных групп поименно |
|
|
|
| guid | int | Внутренний ID сервиса |
|
|
|
| milestones | int | Вехи |
|
|
|
| service_id | int | ID сервиса |
|
|
|
| service_name | string | Название сервиса |
|
|
|
| parent_srv_id | int | ID родительского сервисе |
|
|
|
| parent_srv_name | string | Название родительского сервиса |
|
|
|
| ram_total | int | Общее кол-во RAM, МБ |
|
|
|
| rg_id | int | ID ресурсной группы |
|
|
|
| rg_name | string | Название ресурсной группы |
|
|
|
| snapshots | []Struct{<br/>guid string<br/>label string<br/>timestamp int<br/>valid bool<br/>} | Список снимков состояний<br/>guid снимка<br/>Название снимка<br/>Время создания снимка<br/>Флаг, валидность снимка состояния<br/> <br/> |
|
|
|
| ssh_key | string | Ключ пользователя для подключения по ssh |
|
|
|
| ssh_user | string | Имя пользователя для подключения по ssh |
|
|
|
| status | string | Статус сервиса |
|
|
|
| tech_status | string | Технический статус сервиса |
|
|
|
| updated_by | string | Кем сервис был обновлен |
|
|
|
| updated_time | int | Время последнего обновления |
|
|
|
| user_managed | bool | Флаг, управляется ли пользователем |
|
|
|
|
|
|
### Описание структуры compute
|
|
|
| Параметр | Тип | Описание |
|
|
|
| --- | --- | --- |
|
|
|
| account_id | int | ID аккаунта |
|
|
|
| architecture | string | Архитектура |
|
|
|
| compgroup_id | int | ID группы |
|
|
|
| compgroup_name | string | Наименование группы |
|
|
|
| compgroup_role | string | Роль компьюта в группе |
|
|
|
| id | int | ID компьюта |
|
|
|
| name | string | Наименование компьюта |
|
|
|
| rg_id | int | ID ресурсной группы |
|
|
|
| stack_id | int | Stack ID |
|
|
|
| status | string | Статус |
|
|
|
| tech_status | string | Тех. статус |
|
|
|
|
|
|
### Описание структуры group
|
|
|
| Параметр | Тип | Описание |
|
|
|
| --- | --- | --- |
|
|
|
| computes | int | Кол-во компьютов |
|
|
|
| consistency | bool | Последовательность |
|
|
|
| id | int | ID группы |
|
|
|
| name | string | Наименование группы |
|
|
|
| status | string | Статус |
|
|
|
| tech_status | string | Тех. статус |
|
|
|
|
|
|
## Пример использования
|
|
|
Пример вызова _resource_ функции **dynamix_bservice**:
|
|
|
```terraform
|
|
|
resource "dynamix_bservice" "b" {
|
|
|
#имя сервиса
|
|
|
#обязательный параметр
|
|
|
#тип - строка
|
|
|
service_name = "my_test_bservice_sn"
|
|
|
|
|
|
#id ресурсной группы
|
|
|
#обязательный параметр
|
|
|
#тип - целое число
|
|
|
rg_id = 11111
|
|
|
|
|
|
#доступность сервиса
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#используется при редактировании ресурса
|
|
|
#по-умолачанию - false
|
|
|
#enable = true
|
|
|
|
|
|
#снимок состояния
|
|
|
#необязательный параметр
|
|
|
#тип - объект
|
|
|
#используется при редактировании ресурса
|
|
|
#может быть несколько в ресурсе
|
|
|
/*
|
|
|
snapshots {
|
|
|
#имя снимка состояния
|
|
|
#обязательный параметр
|
|
|
#тип - строка
|
|
|
label = "test_snapshot"
|
|
|
|
|
|
#восстановление сервиса из снимка состояния
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#по-умолчанию - false
|
|
|
#восстановление происходит только при переключении с false на true
|
|
|
rollback = false
|
|
|
}
|
|
|
*/
|
|
|
|
|
|
#старт сервиса
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#используется при редактировании ресурса
|
|
|
#по-умолачанию - false
|
|
|
#start = false
|
|
|
|
|
|
#восстановление сервиса после удаления
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#используется при редактировании ресурса
|
|
|
#по-умолачанию - false
|
|
|
#restore = true
|
|
|
|
|
|
#мгновенное удаление сервиса без права восстановления
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#используется при удалении ресурса
|
|
|
#по-умолачанию - false
|
|
|
#permanently = true
|
|
|
|
|
|
#id сервиса, позволяет сформировать .tfstate, если сервис есть в платформе
|
|
|
#необязательный параметр
|
|
|
#тип - булев
|
|
|
#используется при создании ресурса
|
|
|
#service_id = 11111
|
|
|
|
|
|
}
|
|
|
```
|
|
|
|
|
|
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DYNAMIX см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.2.1/04.02-Инициализация-Terraform-провайдера-DYNAMIX.md)).
|
|
|
|
|
|
После успешного завершения такого вызова **dynamix_bservice** в переменной `dynamix_bservice.b` будут сохранены возвращаемые значения.
|