Модуль hetzner.hcloud.server — создание серверов в облаке Hetzner Cloud и управление ими.
Примечание
Этот модуль входит в коллекцию hetzner.hcloud (версия 6.9.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install hetzner.hcloud. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в сценарии, укажите: hetzner.hcloud.server.
Краткое описание
- Создание серверов в облаке Hetzner Cloud, их обновление и управление ими.
- Для управления указателем DNS сервера используйте модуль hetzner.hcloud.rdns.
Псевдонимы: hcloud_server
Требования
На узле, выполняющем этот модуль, должны быть установлены следующие компоненты.
- python-dateutil >= 2.7.5
- requests >=2.20
Параметры
Параметр | Комментарии |
|---|---|
api_endpoint псевдонимы: endpoint строка | Конечная точка API Hetzner Cloud. Этот параметр также можно задать с помощью переменной среды По умолчанию: |
api_endpoint_hetzner строка | Конечная точка API Hetzner. Этот параметр также можно задать с помощью переменной среды По умолчанию: |
api_token строка / обязательный | Токен API Hetzner Cloud. Этот параметр также можно задать с помощью переменной среды |
backups логическое значение | Включить или отключить резервное копирование для указанного сервера. Варианты:
|
datacenter строка | Устарело: Аргумент Центр обработки данных Hetzner Cloud (имя или идентификатор), в котором нужно создать сервер. Обязателен, если не указан Используется только при создании сервера. |
delete_protection логическое значение | |
enable_ipv4 логическое значение | Включить публичный адрес IPv4. Варианты:
|
enable_ipv6 логическое значение | Включить публичный адрес IPv6. Варианты:
|
firewalls список / элементы=строка | Список сетевых экранов Hetzner Cloud (имя или идентификатор), которые нужно подключить к серверу. |
force логическое значение | Принудительно обновить сервер. Если применяется обновление, сервер может быть выключен. Варианты:
|
id целое число | Идентификатор сервера Hetzner Cloud, которым нужно управлять. Обязателен, только если не указан |
image строка | Образ Hetzner Cloud (имя или идентификатор), из которого нужно создать сервер. Обязателен, если сервер не существует или если |
image_allow_deprecated псевдонимы: allow_deprecated_image логическое значение | Разрешить создание серверов с устаревшими образами. Варианты:
|
ipv4 строка | Основной адрес IPv4 Hetzner Cloud (имя или идентификатор), который нужно использовать. Если параметр не указан и |
ipv6 строка | Основной адрес IPv6 Hetzner Cloud (имя или идентификатор), который нужно использовать. Если параметр не указан и |
labels словарь | Пользовательские метки (пары «ключ — значение»). |
location строка | Местоположение Hetzner Cloud (имя или идентификатор), в котором нужно создать сервер. Обязательно, если сервер не существует. Используется только при создании сервера. |
name строка | Имя сервера Hetzner Cloud, которым нужно управлять. Обязательно, только если не указан |
placement_group строка | Группа размещения Hetzner Cloud (имя или идентификатор), в которой нужно создать сервер. |
private_networks список / элементы=строка | Список сетей Hetzner Cloud (имя или идентификатор), к которым нужно подключить сервер. Если значение равно None, частные сети остаются без изменений (например, если они были добавлены ранее с помощью hcloud_server_network). Если задано любое другое значение (включая []), к серверу подключаются только указанные сети. |
rebuild_protection логическое значение | Защитить сервер от пересоздания. Значение должно совпадать с Варианты:
|
rescue_mode строка | Укажите тип аварийной системы Hetzner, в которую нужно загрузить сервер. |
server_type строка | Тип сервера Hetzner Cloud (имя или идентификатор). Обязателен, если сервер не существует. |
ssh_keys список / элементы=строка | Список ключей SSH Hetzner Cloud (имя или идентификатор), которые нужно использовать при создании сервера. Используется только при создании сервера. |
state строка | Состояние сервера. Варианты:
|
upgrade_disk логическое значение | Изменять размер диска при изменении размера сервера. Если впоследствии вы планируете перейти на сервер меньшего размера, укажите значение False. Варианты:
|
user_data строка | Пользовательские данные, передаваемые серверу при создании.
Используется при создании или пересоздании сервера. |
volumes список / элементы=строка | Список томов Hetzner Cloud (имя или идентификатор), которые нужно подключить к серверу. Используется только при создании сервера. |
См. также
См. также
- Документация по API Hetzner
-
Полный справочник по API Hetzner.
Примеры
- name: Create a basic server
hetzner.hcloud.server:
name: my-server
server_type: cpx22
image: ubuntu-22.04
state: present
- name: Create a basic server with ssh key
hetzner.hcloud.server:
name: my-server
server_type: cpx22
image: ubuntu-22.04
location: fsn1
ssh_keys:
- me@myorganisation
state: present
- name: Create a basic server with additional cloud-init data disabling SSH password authentication
hetzner.hcloud.server:
name: my-server
server_type: cpx22
image: ubuntu-22.04
user_data: |
#cloud-config
ssh_pwauth: false
state: present
- name: Resize an existing server
hetzner.hcloud.server:
name: my-server
server_type: cpx22
upgrade_disk: true
state: present
- name: Ensure the server is absent (remove if needed)
hetzner.hcloud.server:
name: my-server
state: absent
- name: Ensure the server is started
hetzner.hcloud.server:
name: my-server
state: started
- name: Ensure the server is stopped
hetzner.hcloud.server:
name: my-server
state: stopped
- name: Ensure the server is restarted
hetzner.hcloud.server:
name: my-server
state: restarted
- name: Ensure the server is will be booted in rescue mode and therefore restarted
hetzner.hcloud.server:
name: my-server
rescue_mode: linux64
state: restarted
- name: Ensure the server is rebuild
hetzner.hcloud.server:
name: my-server
image: ubuntu-22.04
state: rebuild
- name: Add server to placement group
hetzner.hcloud.server:
name: my-server
placement_group: my-placement-group
force: true
state: present
- name: Remove server from placement group
hetzner.hcloud.server:
name: my-server
placement_group:
state: present
- name: Add server with private network only
hetzner.hcloud.server:
name: my-server
enable_ipv4: false
enable_ipv6: false
private_networks:
- my-network
- 4711
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
hcloud_server dictionary | Экземпляр сервера Возвращается: всегда |
|
backup_window boolean |
Временной интервал (UTC), в течение которого выполняется резервное копирование, или null, если резервное копирование не включено Возвращается: всегда Пример: |
|
created string |
Момент времени создания сервера (в формате ISO-8601) Возвращается: всегда Пример: |
|
datacenter string |
Название центра обработки данных, в котором расположен сервер. Устарело: значение Возвращается: всегда Пример: |
|
delete_protection boolean добавлено в hetzner.hcloud 0.1.0 |
True, если сервер защищён от удаления Возвращается: всегда Пример: |
|
id integer |
Числовой идентификатор сервера Возвращается: всегда Пример: |
|
ipv4_address string |
Публичный IPv4-адрес сервера Возвращается: всегда Пример: |
|
ipv6 string |
IPv6-сеть сервера Возвращается: всегда Пример: |
|
labels dictionary |
Пользовательские метки (пары «ключ — значение») Возвращается: всегда |
|
location string |
Название местоположения сервера Возвращается: всегда Пример: |
|
name string |
Имя сервера Возвращается: всегда Пример: |
|
placement_group string добавлено в hetzner.hcloud 1.5.0 |
Группа размещения сервера Возвращается: всегда Пример: |
|
private_networks list / elements=string |
Список частных сетей, к которым подключён сервер (имя или идентификатор) Возвращается: всегда Пример: |
|
private_networks_info list / elements=dictionary |
Список частных сетей, к которым подключён сервер (словарь с именем и IP-адресом) Возвращается: всегда Пример: |
|
rebuild_protection boolean добавлено в hetzner.hcloud 0.1.0 |
True, если сервер защищён от пересоздания Возвращается: всегда Пример: |
|
rescue_enabled boolean |
True, если включён режим восстановления; при следующей перезагрузке сервер загрузится в систему восстановления Возвращается: всегда Пример: |
|
server_type string |
Название типа сервера Возвращается: всегда Пример: |
|
status string |
Статус сервера Возвращается: всегда Пример: |
root_password string | Пароль root для сервера Возвращается: если сервер создан без ssh_keys Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/hetzner/hcloud/server_module.html