filviu.hetzner_installimage

Ansible Роль: Установка Hetzner Installimage

Настройка выделенного сервера Hetzner с выбранной операционной системой и опциональным полным шифрованием диска.

Предупреждения

Все данные на сервере будут стерты.

Требования

  • Знать IP сервера.
  • Сервер должен быть перезагружен в режиме восстановления. Или заказан с режимом восстановления, если он новый.
  • При заказе или активации режима восстановления убедитесь, что вы выбрали все ключи, которые хотите использовать для входа в загрузочную среду, где можно ввести пароль шифрования.

Переменные Роли

Смотрите defaults/main.yml:

hetzner_installimage_cryptpassword: "пароль"

hetzner_installimage_disks:
  - "/dev/nvme0n1"
  - "/dev/nvme1n1"

# создать EFI раздел
# более новые машины, такие как EX-53, похоже, требуют этого
hetzner_installimage_esp: true

hetzner_installimage_swraid: 1
hetzner_installimage_swraidlevel: 1

hetzner_installimage_hostname: "custom"

hetzner_installimage_image: "/root/images/Debian-1010-buster-64-minimal.tar.gz"

# список публичных ssh-ключей, разрешенных для входа в среду BusyBox для ввода пароля шифрования и загрузки сервера
# если не указано, используются ключи, использовавшиеся при активации режима восстановления (или заказе машины, если она новая)
#
#hetzner_installimage_sshkeys: 
#  - "ключ1"

Пример Плейбука

# hetzner-installimage.yml
---
- hosts: all

  roles:
    - role: filviu.hetzner_installimage
      hetzner_installimage_image: "/root/images/Debian-1010-buster-64-minimal.tar.gz"

Если вас устраивают значения по умолчанию или вы добавили их в свой плейбук hetzner-installimage.yml, вы можете запустить что-то вроде:

ansible-playbook -i "1.2.3.4," -u root -e "hetzner_installimage_cryptpassword=MY_SECURE_PASS" hetzner-installimage.yml

чтобы избежать сохранения вашего пароля шифрования (очистите историю bash) и добавления машины в ваш инвентарь. В качестве альтернативы вы можете добавить пароль в зашифрованном виде в плейбук.

Если вам редко нужно настраивать машины с sata дисками вместо nvme (по умолчанию) и вместо создания отдельного плейбука вы можете переопределить список дисков в командной строке:

ansible-playbook -i "1.2.3.4," -u root -e "hetzner_installimage_cryptpassword=MY_SECURE_PASS" -e '{"hetzner_installimage_disks":["/dev/sda","/dev/sdb"]}' hetzner-installimage.yml

Заметки

  • Убедитесь, что вы знаете, как и можете разблокировать свой сервер после перезагрузки (т.е. у вас не будут включены приватные VLAN в минимальной среде, вам нужно разрешить порт 22 ssh на публичном интерфейсе от файрвола Hetzner Robot, если вы его используете и т.д.)
  • Вам не нужно добавлять сервер в ваш инвентарь ansible.
  • Вы либо определяете переменную ssh-ключей, либо комментируете ее. Если вы определяете ее и она пустая, роль не выполнится или вы не сможете войти, чтобы загрузить сервер.
  • Без подсказок! Убедитесь, что вы сохранили пароль, используете правильные SSH ключи и что сервер загружен в режиме восстановления и не содержит никаких необходимых вам данных.
  • Проверено только с Debian 10 и 11. Должно работать и с Ubuntu.
  • Debian 10 не поддерживает ключи ED25519!

Лицензия

MIT / BSD

Информация об Авторе

Эта роль была создана Сильвиу Вулканом для удовлетворения собственных потребностей.

О проекте

Hetzner Installimage Setup. Encryption supported.

Установить
ansible-galaxy install filviu.hetzner_installimage
Лицензия
Unknown
Загрузки
17.2k
Владелец
Sysadmin / DevOPS engineer. Probably doing devops before it was fashionable to be named that.