proxmox_ve

enix.proxmox_ve

Роль для развертывания и настройки Proxmox VE на unix-хостах с использованием Ansible. Эта роль тесно связана с использованием enix, настраивая локальные LVM-тома, ISCSI-мультипутевые соединения и т. д. Поэтому она может быть нерелевантна для всех, однако каждый шаг можно настроить, и она может быть использована независимо.

Требования

Поддерживаемые системы:

  • Debian 10 "Buster"
  • Debian 11 "Bullseye"
  • Debian 12 "Bookworm"

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

Эта роль уже содержит почти все доступные параметры по умолчанию. Вы можете переопределить их в переменных ваших хостов/групп, в вашем инвентаре или в вашем плейбуке. Смотрите аннотированные значения по умолчанию в defaults/main.yml для помощи в настройке. Все предоставленные переменные начинаются с proxmox_ve__.

  • proxmox_ve__force_reboot - :warning: Осторожно :warning:. В случае серьезных изменений конфигурации это приведет к автоматической перезагрузке хоста. значение по умолчанию: false.
  • proxmox_ve__enterprise - включить или нет подписку на корпоративную версию Proxmox VE. значение по умолчанию: false.
  • proxmox_ve__disable_smt - отключить SMT (Hyperthreading) как опцию загрузки ядра. Смотрите [https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html#smt-control] для подробностей о связанных уязвимостях. значение по умолчанию: false.
  • proxmox_ve__net_ovs - включить конфигурацию сети OpenVswitch на хосте, значение по умолчанию: false.
  • proxmox_ve__net_template - шаблон, используемый для конфигурации /etc/network/interfaces на хосте, значение по умолчанию: interfaces.j2. Путь можно изменить или переопределить в вашем плейбуке. Шаблон по умолчанию предоставляет только базовую конфигурацию моста.
  • proxmox_ve__storage_lvm - описание хранения LVM для инициализации и настройки в Proxmox. пример конфигурации выше.
  • proxmox_ve__storage_lvm_options - параметры для изменения в lvm.conf. значение по умолчанию: none.
  • proxmox_ve__lvm_global_filter - глобальный фильтр LVM. значение по умолчанию: [ "r|/dev/zd.*|", "r|/dev/mapper/pve-.*|" "r|/dev/mapper/.*-(vm|base)--[0-9]+--disk--[0-9]+|"].
  • proxmox_ve__storage_iscsi - описание iSCSI-хранилища для настройки в Proxmox. пример конфигурации выше.
  • proxmox_ve__storage_iscsi_options - параметры для изменения в iscsid.conf. значение по умолчанию:
proxmox_ve__storage_iscsi_options:
  - option: node.session.timeo.replacement_timeout
    value: 10
    state: present
  • proxmox_ve__spv_user - имя пользователя с ролью PVEAuditor для мониторинга. значение по умолчанию: prometheus@pve
  • proxmox_ve__spv_password - пароль для пользователя мониторинга. Если не задан, пользователь не создается.
  • proxmox_ve__storage_iscsi_multipath_template - файл шаблона для настройки мультипути.
  • proxmox_ve__migration_secure - определяет уровень безопасности миграций. Смотрите [https://pve.proxmox.com/wiki/Manual:_datacenter.cfg]. значение по умолчанию: true.
  • proxmox_ve__cluster_ip - IP-адрес для кластеризации Proxmox. Это изменит IP-адрес узла в /etc/hosts. значение по умолчанию: ansible_default_ipv4.address.

Зависимости

  • Нет

Использование

Клонируйте этот репозиторий в вашу директорию ролей:

$ git clone https://gitlab.enix.org/ansible/ansible-proxmox_ve.git roles/proxmox_ve

Или используйте Ansible galaxy requirements.yml

# общая роль
- src: enix.proxmox_ve
  name: proxmox_ve

И добавьте ее в роли вашего плейбука:

- hosts: all
  roles:
    - role: enix.proxmox_ve
      proxmox_ve__storage_iscsi:
        - name: iscsi-storage
          portal: 192.168.0.1
          target: iqn.2015-11.com.storage:iscsi.12315132
          volumes:
            - name: bigvolume
              wwid: 3600c0ff0003bb7fcb730e75a01000000
      proxmox_ve__storage_lvm:
        - name: "localvm"
          devices:
            - /dev/md12
          pesize: "128"
          shared: 0
        - name: "iscsilvm"
          devices:
            - /dev/mapper/bigvolume
          pesize: "256"
          shared: 1
      proxmox_ve__storage_lvm_options:
        - option: issue_discards
          value: 0

Вы также можете использовать роль как плейбук. Вам будет предложено выбрать, какие хосты нужно настроить, и вы сможете дополнительно настроить плейбук, используя --extra-vars.

$ ansible-playbook -i inventory --extra-vars='{...}' main.yml

Предстоящие задачи

  • автоматическое добавление хостов в кластеры
  • управление пользователями и учетными данными

История изменений

3.1.0

Добавлена поддержка конкретного IP кластера.

3.0.0

Добавлена поддержка Debian Bookworm и ветки Proxmox VE 8.x.

2.8.0

Добавлена опция proxmox_ve__migration_secure для отключения механизма безопасной миграции, если это необходимо.

2.7.0

Добавлена опция proxmox_ve__storage_lvm_options для настройки параметров в lvm.conf.

2.6.0

Добавлена поддержка Proxmox 7.0 / BullsEye

2.5.0

Добавлено создание пользователя с ролью мониторинга в кластере

2.4.1

Обновлен файл multipath.conf по умолчанию для соответствия изменениям в debian buster (find_mulitpaths)

2.4.0

Обновлен глобальный фильтр LVM до нового значения по умолчанию 6.1 Исправления устаревших функций

2.3.0

Исправлены проблемы с LVM Добавлены параметры конфигурации iSCSI

2.2.0

Добавлена опция proxmox_ve__disable_smt

2.1.1

Переключение на enix.deb имя роли

2.1.0

Позволяет переопределять глобальный фильтр LVM Добавлена конфигурация /etc/hosts

2.0.0

Теперь включает функцию автоматической перезагрузки хоста и правильное управление хранилищем

1.0.0

Первая версия, которая включает базовую конфигурацию хранения.

Лицензия

GPLv2

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

Лорен Корбес laurent.corbes@enix.fr - http://www.enix.fr

О проекте

Ansible role to deploy proxmox VE software

Установить
ansible-galaxy install enix/ansible-proxmox-ve
Лицензия
Unknown
Загрузки
376
Владелец
Enix