-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathdnsmasq.conf
52 lines (45 loc) · 1.59 KB
/
dnsmasq.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
strict-order
# bind-dynamic
#bogus-priv
resolv-file=/etc/resolv.conf.ori
#dhcp-ignore=tag:!known
#dhcp-fqdn
#log-queries
except-interface=lo
interface=eth0
#dhcp-lease-max=81
#log-dhcp
server=/{{ cluster }}.{{ domain }}/
domain={{ cluster }}.{{ domain }},{{ baremetal_cidr }}
host-record=api-int.{{ cluster }}.{{ domain }},{{ api_ip }}
host-record=api.{{ cluster }}.{{ domain }},{{ api_ip }}
address=/apps.{{ cluster }}.{{ domain }}/{{ ingress_ip }}
{% if disconnected %}
host-record=registry.{{ cluster }}.{{ domain }},{{ installer_ip }}
{% endif %}
{% set total_number = namespace(value=0) %}
{% for spoke in spokes %}
{% set spoke_name = spoke.name %}
{% set virtual_nodes_number = spoke.get('virtual_nodes', 0) %}
{% set nodes = spoke.get("baremetal_nodes", []) %}
{% if spoke.get('ctlplanes', 1) == 1 %}
{% if nodes|length > 0 and 'ip' in nodes[0] %}
{% set sno_ip = nodes[0].ip %}
{% elif static_ips|length > ctlplanes + workers + total_number.value %}
{% set sno_ip = static_ips[ctlplanes + workers + total_number.value] %}
{% else %}
{% set sno_ip = None %}
{% endif %}
{% set spoke_api_ip = sno_ip %}
{% set spoke_ingress_ip= sno_ip %}
{% else %}
{% set spoke_api_ip = spoke.get('api_ip') %}
{% set spoke_ingress_ip= spoke.get('ingress_ip') %}
{% endif %}
{% if spoke_api_ip != None and spoke_ingress_ip != None %}
host-record=api-int.{{ spoke_name }}.{{ domain }},{{ spoke_api_ip }}
host-record=api.{{ spoke_name }}.{{ domain }},{{ spoke_api_ip }}
address=/apps.{{ spoke_name }}.{{ domain }}/{{ spoke_ingress_ip }}
{% endif %}
{% set total_number.value = total_number.value + virtual_nodes_number %}
{% endfor %}