Install netmagis
- postgresql server and database (not managed here), can use pgsql variable
netmagis_default_domain
('localdomain') Default netmagis domain …netmagis_http_host
('netmagis.localdomain')pgsql
({}) - dicthost
: db hostport
(5432): database portuser
: db userpasswd
: db passwd
netmagis_rootusers
(['admin']) Admin usersnetmagis_socket
('unix:/var/run/fcgiwrap/netmagis.sock') Socket between netmagis daemon and nginxnetmagis_zonesdir
('/var/netmagis/dnsmaster') Zones directorynetmagis_dhcpd_file
('/var/netmagis/dhcpd-gen.conf') dhcpd file generatednetmagis_dhcpd_failover
('') string added to dhcp pools for ISC DHCPD failover mechanismnetmagis_dhcpd_check_cmd
('/usr/sbin/service isc-dhcpd configtest') dhcpd config checknetmagis_dhcpd_cmd
('/usr/sbin/service isc-dhcpd restart') dhcpd reload commandnetmagis_zonecmd
('/usr/local/sbin/nsd-control reload') zones reload commandnetmagis_cron_user
('root') crons usernetmagis_cron_dns
('{{ prefix }}/sbin/mkzones') program to run for zones generationnetmagis_cron_dhcp
('{{ prefix }}/sbin/mkdhcp') program to run for dhcpd config generationprefix
(/usr) use /usr/local here on freebsd
- nginx
- dhcpd
- nsd
Simple one:
- hosts: magis
roles:
- netmagis
vars:
pgsql: { host: 'mydbhost', port: '5432', user: 'magis', passwd: 'NetMagisPassword' }
netmagis_http_host: 'netmagis.univ.fr'
netmagis_default_domain: 'test.univ.fr'
sysadmin_mail: netmagis@univ.fr
nsd_patterns:
- { name: magismaster, notify: [ "192.0.2.3 NOKEY", "198.51.100.2 NOKEY" ], provide-xfr: [ "192.0.2.3 NOKEY", "198.51.100.2 NOKEY" ] }
nsd_zones:
- { name: 'niceusers.univ.fr.', masters: ['192.0.2.3'], pattern: magismaster }
- { name: 'others.univ.fr.', masters: ['192.0.2.3'], pattern: magismaster }
BSD
Geoffroy Desvernay for Ecole Centrale de Marseille