tobias_richter.proxmox

tobias_richter.proxmox

Estado de Construcción

Este rol se encarga de configurar algunas partes del entorno virtual de Proxmox:

  • descarga de plantillas lxc
  • configuración de sysctl
  • configuraciones especiales de contenedores lxc (ej. permitir stick zigbee en el contenedor, permitir vpn tinc en el contenedor)
  • dominios de autenticación ldap
  • directorio temporal de zvdump
  • backend de monitoreo para influxdb
  • configuración de relay de correo postfix para enviar correos
  • dominio dns
  • servidor de nombres

Requisitos

Este rol requiere Ansible 2.7 o superior.

Variables del Rol

Las variables disponibles se enumeran a continuación, junto con sus valores predeterminados (ver defaults/main.yml):

pve_templates: []
  #- debian-10.0-standard_10.0-1_amd64.tar.gz
  #- ubuntu-18.04-standard_18.04.1-1_amd64.tar.gz

Define las plantillas que se van a aprovisionar / descargar.

pve_sysctl: []
  #- name: kernel.shmall
  #  value: 4194304
  #- name: kernel.shmmax
  #  value: 17179869184

Define los valores de sysctl a configurar.

pve_ldap_domains: []
  #- name: "Mi nombre"
  #  password: "contraseña de enlace"
  #  server: "ldap.corp"
  #  bind_dn: "uid=ldapbind,ou=users,dc=ldap,dc=corp"
  #  base_dn: "ou=users,dc=ldap,dc=corp"
  #  user_attr: "uid"
  #  default: 1
  #  secure: 1

Configura dominios de autenticación ldap.

pve_vzdump_tmpdir: /opt/vzdump-tmp

Ruta al directorio temporal de pve_vzdump.

pve_lxc_config: []
#  - id: 111
#    options:
#      # permitir creación de túneles en lxc para VPN
#      - name: lxc.cgroup.devices.allow
#        value: "c 10:200 rwm"
#        state: absent
#      - name: lxc.cap.keep
#        value: "sys_module mknod"
#        state: absent
#      - name: lxc.mount.entry
#        value: /dev/net/tun dev/net/tun none bind,create=file
#  - id: 117
#    options:
#      # permitir stick zigbee en contenedor
#      - name: lxc.cgroup.devices.allow
#        value: "c 166:* rwm"
#        state: present
#      - name: lxc.mount.entry
#        value: /dev/ttyACM0 dev/ttyACM0 none bind,optional,create=file

Configuraciones personalizadas de lxc. Ver líneas comentadas para ejemplos.

# pve_influxdb_port:
# pve_influxdb_host:

Configura monitoreo para influxdb.

pve_dns_domain: local

Configura el dominio de búsqueda dns.

pve_nameserver: 8.8.8.8

Configura el servidor de nombres primario (google es el predeterminado).

Ejemplo de Playbook

Este playbook descarga la plantilla lxc para Debian 10 / Buster y aplica configuraciones cuando deseas ejecutar gitlab en un contenedor lxc.

- hosts: pve
  roles:
    - role: tobias_richter.proxmox
      # preparar plantilla de debian
      pve_templates:
        - debian-10.0-standard_10.0-1_amd64.tar.gz
      # configuraciones del kernel para gitlab al ejecutarse en contenedor lxc 
      pve_sysctl:
        - name: kernel.shmall
          value: 4194304
        - name: kernel.shmmax
          value: 17179869184
Acerca del proyecto

Ansible Role for managing proxmox.

Instalar
ansible-galaxy install tobias_richter.proxmox
Licencia
apache-2.0
Descargas
516
Propietario
Expert DevOps Engineer