tobias_richter.proxmox

tobias_richter.proxmox

构建状态

此角色负责配置Proxmox虚拟环境的某些部分:

  • lxc模板下载
  • sysctl配置
  • 特殊lxc容器配置(例如,允许在容器中使用zigbee设备,允许在容器中使用tinc vpn)
  • ldap身份验证域
  • zvdump临时目录
  • influxdb监控后端
  • postfix邮件中继配置(用于发送邮件)
  • dns域
  • 名称服务器

需求

此角色需要Ansible 2.7或更高版本。

角色变量

可用的变量如下所示,以及它们的默认值(见 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

定义要提供/下载的模板。

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

定义要配置的sysctl值。

pve_ldap_domains: []
  #- name: "我的名字"
  #  password: "绑定密码"
  #  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

配置ldap身份验证域。

pve_vzdump_tmpdir: /opt/vzdump-tmp

pve_vzdump_tmpdir的路径。

pve_lxc_config: []
#  - id: 111
#    options:
#      # 允许在lxc上创建隧道以进行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:
#      # 允许在容器中使用zigbee设备
#      - 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

自定义lxc配置。查看注释行以获取示例。

# pve_influxdb_port:
# pve_influxdb_host:

配置influxdb监控。

pve_dns_domain: local

配置dns搜索域。

pve_nameserver: 8.8.8.8

配置主名称服务器(默认使用Google)。

示例剧本

此剧本下载Debian 10 / Buster的lxc模板并应用配置,适用于您希望在lxc容器中运行GitLab的情况。

- hosts: pve
  roles:
    - role: tobias_richter.proxmox
      # 准备Debian模板
      pve_templates:
        - debian-10.0-standard_10.0-1_amd64.tar.gz
      # 在lxc容器中运行GitLab时的内核配置 
      pve_sysctl:
        - name: kernel.shmall
          value: 4194304
        - name: kernel.shmmax
          value: 17179869184
关于项目

Ansible Role for managing proxmox.

安装
ansible-galaxy install tobias_richter.proxmox
许可证
apache-2.0
下载
516
拥有者
Expert DevOps Engineer