ricsanfre.dnsmasq
Rola Ansible: dnsmasq
Zainstaluj i skonfiguruj lekką usługę DHCP i serwer DNS, dnsmasq, na systemie Linux.
Wymagania
Brak.
Zmienne roli
Dostępne zmienne są wymienione poniżej wraz z wartościami domyślnymi (patrz defaults\main.yaml)
Interfejs hosta i adres IP, na którym nasłuchuje Dnsmasq:
dnsmasq_interface: ''
dnsmasq_listen_address: ''
Wartości domyślne są puste. Rola uzyskuje informacje o interfejsie i adresie IP z zebranego stanu. Jeśli serwer ma więcej niż jeden interfejs, określ wartości dla tych zmiennych.
Lokalna nazwa domeny:
dnsmasq_domain_name: example.ricsanfre.com
Serwery DNS upstream (do przekazywania zapytań DNS):
dnsmasq_upstream_dns_servers:
  - 80.58.61.250
  - 80.58.61.254
Zakres adresów IP do dzierżawy DHCP:
dnsmasq_dhcp_range: '10.0.0.32,10.0.0.128'
Domyślnie dodawane są do rekordów konfiguracyjnych DHCP i DNS z hostów w inwentarzu (wszystkie hosty = grupa all).
Zmienne: ip, mac i hostname muszą być dodane do hostów w inwentarzu:
hosts:
  all:
    children:
      cluster:
        hosts:
          server1:
            hostname: server1
            ip: 10.0.0.11
            mac: dc:a6:32:9c:29:b9
          server2:
            hostname: server2
            ip: 10.0.0.12
            mac: e4:5f:01:2d:fd:19
          server3:
            hostname: server3
            ip: 10.0.0.13
            mac: e4:5f:01:2f:49:05
Dodatkowe rekordy DHCP i DNS można dodać za pomocą następujących zmiennych:
dnsmasq_additional_dhcp_hosts: {}
dnsmasq_additional_dhcp_hosts:
  ethernet_switch:
    desc: "Przełącznik Ethernet"
    mac: 94:a6:7e:7c:c7:69
    ip: 10.0.0.2
dnsmasq_additional_dns_hosts: {}
dnsmasq_additional_dns_hosts:
  ntp_server:
    desc: "Serwer NTP"
    hostname: ntp
    ip: 10.0.0.1
  dns_server:
    desc: "Serwer DNS"
    hostname: dns
    ip: 10.0.0.1
Włącz usługę TFTP i określ folder główny TFTP
dnsmasq_enable_tftp: false
dnsmasq_tftp_root: /srv/tftp
Dodatkową konfigurację można określić, dodając na końcu pliku konfiguracyjnego dnsmasq
dnsmasq_additional_conf: []
dnsmasq_additional_conf: |-
        # Włączanie Netboot
        dhcp-boot=pxelinux.0
        dhcp-match=set:efi-x86_64,option:client-arch,7
        dhcp-boot=tag:efi-x86_64,bootx64.efi
Zależności
Brak
Przykład Playbook
---
- name: Dnsmasq
  hosts: host
  vars:
    - additional_dhcp_hosts:
        ethernet_switch:
          desc: "Przełącznik Ethernet"
          mac: 94:a6:7e:7c:c7:69
          ip: 10.0.0.2
    - additional_dns_hosts:
        ntp_server:
          desc: "Serwer NTP"
          hostname: ntp
          ip: 10.0.0.1
        dns_server:
          desc: "Serwer DNS"
          hostname: dns
          ip: 10.0.0.1
  roles:
    - role: ricsanfre.dnsmasq
Licencja
MIT/BSD
Informacje o autorze
Ricardo Sanchez (ricsanfre)
ansible-galaxy install ricsanfre.dnsmasq