Spec-Zone.ru › Ansible 2.5

clc_server — Создание, удаление, запуск и остановка серверов в CenturyLink Cloud.

Новое в версии 2.0.

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Обзор

  • Модуль Ansible для создания, удаления, запуска и остановки серверов в CenturyLink Cloud.

Требования

Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python = 2.7
  • requests >= 2.5.0
  • clc-sdk

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
add_public_ip
    Варианты:
  • нет ←
  • да
Значение по умолчанию:
нет
Добавить ли общедоступный IP-адрес к серверу
additional_disks Значение по умолчанию:
[]
Список дополнительных дисков для сервера
alert_policy_id Значение по умолчанию:
None
Политика оповещения, которая должна быть назначена серверу. Исключительно с 'alert_policy_name'.
alert_policy_name Значение по умолчанию:
None
Политика оповещения, которая должна быть назначена серверу. Исключительно с 'alert_policy_id'.
alias Значение по умолчанию:
None
Псевдоним учетной записи для развертывания серверов.
anti_affinity_policy_id Значение по умолчанию:
None
Политика противоаффинности, которая должна быть назначена серверу. Исключительно с 'anti_affinity_policy_name'.
anti_affinity_policy_name Значение по умолчанию:
None
Политика противоаффинности, которая должна быть назначена серверу. Исключительно с 'anti_affinity_policy_id'.
configuration_id Значение по умолчанию:
None
Требуется только для серверов bare metal. Указывает идентификатор конкретного типа конфигурации сервера bare metal для развертывания.
count Значение по умолчанию:
1
Количество серверов для создания (исключительно с exact_count)
count_group Значение по умолчанию:
None
Требуется при указании exact_count. Группа серверов, используемая для определения количества развертываемых серверов.
cpu Значение по умолчанию:
1
Количество процессоров, которые необходимо зарезервировать на сервере
cpu_autoscale_policy_id Значение по умолчанию:
None
Политика автоматического масштабирования, назначаемая серверу.
custom_fields Значение по умолчанию:
[]
Список настраиваемых полей, которые нужно задать для сервера.
description Значение по умолчанию:
None
Описание, которое нужно задать для сервера.
exact_count Значение по умолчанию:
None
Выполняется в идемпотентном режиме. Обеспечивает, что указанное количество серверов запущены в предоставленной группе, создавая и удаляя их для достижения этого количества. Требует задания count_group.
group Значение по умолчанию:
Группа по умолчанию
Группа серверов, в рамках которой создаются серверы.
ip_address Значение по умолчанию:
None
IP-адрес сервера. При необходимости назначается.
location Значение по умолчанию:
None
Центр обработки данных для создания серверов.
managed_os
    Варианты:
  • да
  • нет ←
Значение по умолчанию:
нет
Указывать ли сервер как 'Управляемый'?
memory Значение по умолчанию:
1
Объем памяти в ГБ.
name Значение по умолчанию:
None
Идентификатор длиной от 1 до 6 символов для сервера. Требуется, когда состояние 'present'
network_id Значение по умолчанию:
None
UUID сети, в которой нужно создать серверы.
os_type
    Варианты:
  • redHat6_64Bit
  • centOS6_64Bit
  • windows2012R2Standard_64Bit
  • ubuntu14_64Bit
Значение по умолчанию:
None
Требуется только для серверов bare metal. Указывает ОС для развертывания с сервером bare metal.
packages Значение по умолчанию:
[]
Список пакетов blue print, которые нужно запустить на сервере после его создания.
password Значение по умолчанию:
None
Пароль администратора/пользователя root
primary_dns Значение по умолчанию:
None
Основной DNS, используемый сервером.
public_ip_ports Значение по умолчанию:
[]
Список портов, которые нужно разрешить в брандмауэре для общедоступного IP-адреса сервера, если add_public_ip установлен в True.
public_ip_protocol
    Варианты:
  • TCP ←
  • UDP
  • ICMP
Протокол для использования для общедоступного IP-адреса, если add_public_ip установлен в True.
secondary_dns Значение по умолчанию:
None
Дополнительный DNS, используемый сервером.
server_ids Значение по умолчанию:
[]
Требуется для состояний started, stopped и absent. Список идентификаторов серверов, которые должны быть запущены, остановлены или отсутствуют.
source_server_password Значение по умолчанию:
None
Пароль исходного сервера, если указан клон.
state
    Варианты:
  • present ←
  • absent
  • started
  • stopped
Состояние, которое должно быть у предоставленных ресурсов.
storage_type
    Варианты:
  • стандарт ←
  • hyperscale
Тип хранилища, которое нужно подключить к серверу.
template Значение по умолчанию:
None
Шаблон, который нужно использовать для создания сервера. Будет искать шаблон, если предоставлена частичная строка. Требуется, когда состояние 'present'
ttl Значение по умолчанию:
None
Время жизни сервера в секундах. Сервер будет удален по истечении этого времени.
type
    Варианты:
  • стандарт ←
  • hyperscale
  • bareMetal
Тип сервера, который нужно создать.
wait
    Варианты:
  • да ←
  • нет
Значение по умолчанию:
да
Ожидать ли завершения задач развертывания перед возвратом.

Примечания

Примечание

  • Для использования этого модуля необходимо установить указанные переменные среды, которые обеспечивают доступ к CenturyLink Cloud — CLC_V2_API_USERNAME (идентификатор входа в учетную запись), CLC_V2_API_PASSWORD (пароль учетной записи).
  • В качестве альтернативы модуль принимает токен API и псевдоним учетной записи. Токен API можно получить с помощью входа в учетную запись CLC и пароля через вызов HTTP-API по адресу @ https://api.ctl.io/v2/authentication/login — CLC_V2_API_TOKEN, токен API, сгенерированный по адресу https://api.ctl.io/v2/authentication/login — CLC_ACCT_ALIAS, псевдоним учетной записи, связанный с CenturyLink Cloud.
  • Пользователи могут установить CLC_V2_API_URL для указания конечной точки, указывающей на другую среду CLC.

Примеры

# Note - You must set the CLC_V2_API_USERNAME And CLC_V2_API_PASSWD Environment variables before running these examples

- name: Provision a single Ubuntu Server
  clc_server:
    name: test
    template: ubuntu-14-64
    count: 1
    group: Default Group
    state: present

- name: Ensure 'Default Group' has exactly 5 servers
  clc_server:
    name: test
    template: ubuntu-14-64
    exact_count: 5
    count_group: Default Group
    group: Default Group

- name: Stop a Server
  clc_server:
    server_ids:
      - UC1ACCT-TEST01
    state: stopped

- name: Start a Server
  clc_server:
    server_ids:
      - UC1ACCT-TEST01
    state: started

- name: Delete a Server
  clc_server:
    server_ids:
      - UC1ACCT-TEST01
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
partially_created_server_ids
список
успех
Список идентификаторов серверов, частично созданных.

Пример:
['UC1TEST-SVR01', 'UC1TEST-SVR02']
server_ids
список
успех
Список идентификаторов серверов, полностью созданных.

Пример:
['UC1TEST-SVR01', 'UC1TEST-SVR02']
servers
список
успех
Список объектов серверов, возвращенных из CLC.

Пример:
[{'status': 'активный', 'description': 'test-сервер', 'changeInfo': {'modifiedBy': 'service.wfad', 'modifiedDate': 1438196820, 'createdBy': 'service.wfad', 'createdDate': 1438196820}, 'ipaddress': '10.120.45.23', 'storageType': 'стандартный', 'type': 'стандартный', 'isTemplate': False, 'links': [{'href': '/v2/servers/wfad/test-server', 'id': 'test-server', 'rel': 'self', 'verbs': ['GET', 'PATCH', 'DELETE']}, {'href': '/v2/groups/wfad/086ac1dfe0b6411989e8d1b77c4065f0', 'id': '086ac1dfe0b6411989e8d1b77c4065f0', 'rel': 'группа'}, {'href': '/v2/accounts/wfad', 'id': 'wfad', 'rel': 'аккаунт'}, {'href': '/v2/billing/wfad/serverPricing/test-server', 'rel': 'платежи'}, {'href': '/v2/servers/wfad/test-server/publicIPAddresses', 'verbs': ['POST'], 'rel': 'publicIPAddresses'}, {'href': '/v2/servers/wfad/test-server/credentials', 'rel': 'credentials'}, {'href': '/v2/servers/wfad/test-server/statistics', 'rel': 'statistics'}, {'href': '/v2/servers/wfad/510ec21ae82d4dc89d28479753bf736a/upcomingScheduledActivities', 'rel': 'upcomingScheduledActivities'}, {'href': '/v2/servers/wfad/510ec21ae82d4dc89d28479753bf736a/scheduledActivities', 'verbs': ['GET', 'POST'], 'rel': 'scheduledActivities'}, {'href': '/v2/servers/wfad/test-server/capabilities', 'rel': 'capabilities'}, {'href': '/v2/servers/wfad/test-server/alertPolicies', 'verbs': ['POST'], 'rel': 'alertPolicyMappings'}, {'href': '/v2/servers/wfad/test-server/antiAffinityPolicy', 'verbs': ['PUT', 'DELETE'], 'rel': 'antiAffinityPolicyMapping'}, {'href': '/v2/servers/wfad/test-server/cpuAutoscalePolicy', 'verbs': ['PUT', 'DELETE'], 'rel': 'cpuAutoscalePolicyMapping'}], 'id': 'test-server', 'locationId': 'UC1', 'details': {'hostName': '', 'powerState': 'запущен', 'ipAddresses': [{'internal': '10.1.1.1'}], 'disks': [{'partitionPaths': [], 'id': '0:0', 'sizeGB': 1}, {'partitionPaths': [], 'id': '0:1', 'sizeGB': 2}, {'partitionPaths': [], 'id': '0:2', 'sizeGB': 14}], 'diskCount': 3, 'snapshots': [], 'memoryMB': 1024, 'alertPolicies': [], 'memoryGB': 1, 'storageGB': 17, 'customFields': [], 'cpu': 1, 'inMaintenanceMode': False, 'partitions': []}, 'osType': 'Ubuntu 14 64-bit', 'os': 'ubuntu14_64Bit', 'groupId': '086ac1dfe0b6411989e8d1b77c4065f0', 'name': 'test-сервер'}]


Статус

Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.

Автор

  • CLC Runner (@clc-runner)

Подсказка

Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/clc_server_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API