Grab local-IP from specified interface instead
This commit is contained in:
		
							parent
							
								
									c2dcd88420
								
							
						
					
					
						commit
						83507bf027
					
				@ -8,7 +8,8 @@ kubernetes:
 | 
				
			|||||||
    ipv6:
 | 
					    ipv6:
 | 
				
			||||||
      cluster_cidr: fd42::/56
 | 
					      cluster_cidr: fd42::/56
 | 
				
			||||||
      service_cidr: fd43::/112
 | 
					      service_cidr: fd43::/112
 | 
				
			||||||
      nodeip_cidr: fd41::/64
 | 
					
 | 
				
			||||||
 | 
					    nodeIp_interface: <interface to grab nodeIp from>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  control_plane:
 | 
					  control_plane:
 | 
				
			||||||
    dns_name: <control-plane dns-reachable-name>
 | 
					    dns_name: <control-plane dns-reachable-name>
 | 
				
			||||||
 | 
				
			|||||||
@ -49,41 +49,21 @@
 | 
				
			|||||||
    mode: u=rw,g=r,o=r
 | 
					    mode: u=rw,g=r,o=r
 | 
				
			||||||
  notify: restart_containerd
 | 
					  notify: restart_containerd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# todo: Move to netmaker-role as handler?
 | 
				
			||||||
 | 
					- name: Gather facts to get changes
 | 
				
			||||||
 | 
					  ansible.builtin.gather_facts:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- name: Getting nodeIp-data from interface
 | 
				
			||||||
 | 
					  set_fact:
 | 
				
			||||||
 | 
					    nodeip_ipv4: "{{ ansible_facts[ kubernetes.ipPool.nodeIp_interface ].ipv4.address }}"
 | 
				
			||||||
 | 
					    nodeip_ipv6: "{{ ansible_facts[ kubernetes.ipPool.nodeIp_interface ].ipv6[0].address }}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: Set control-plane-dns-endpoint towards local-ip
 | 
					- name: Set control-plane-dns-endpoint towards local-ip
 | 
				
			||||||
  lineinfile:
 | 
					  blockinfile:
 | 
				
			||||||
    dest: /etc/hosts
 | 
					      path: /etc/hosts
 | 
				
			||||||
    line: "{{ ansible_facts.default_ipv6.address }} k8s-control-plane.system.ruekov.eu" 
 | 
					      marker: "# {mark} ANSIBLE MANAGED BLOCK | k8s"
 | 
				
			||||||
 | 
					      block: |
 | 
				
			||||||
- name: Setting network facts..
 | 
					        {{ nodeip_ipv4 }} {{ kubernetes.control_plane.dns_name }}
 | 
				
			||||||
  set_fact:
 | 
					 | 
				
			||||||
    inventory_group_index: "{{ groups['kubernetes'].index(inventory_hostname) }}"
 | 
					 | 
				
			||||||
    ipPool_ipv6_nodeip_cidr_only_prefix:  '{{ kubernetes.ipPool.ipv6.nodeip_cidr | regex_replace ("(?<=:)[0-9a-f]{0,4}(\/[0-9]+)?$","") }}'
 | 
					 | 
				
			||||||
    ipPool_ipv6_nodeip_cidr_cidr:         '{{ kubernetes.ipPool.ipv6.nodeip_cidr | regex_replace ("^.*?\/","") }}'
 | 
					 | 
				
			||||||
    ipPool_ipv4_nodeip_cidr_only_prefix:  '{{ kubernetes.ipPool.ipv4.nodeip_cidr | regex_replace ("(?<=.)[0-9]{0,3}(\/[0-9]+)?$","") }}'
 | 
					 | 
				
			||||||
    ipPool_ipv4_nodeip_cidr_cidr:         '{{ kubernetes.ipPool.ipv4.nodeip_cidr | regex_replace ("^.*?\/","") }}'
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
- name: Setting more network_facts..
 | 
					 | 
				
			||||||
  set_fact:
 | 
					 | 
				
			||||||
    ipPool_ipv6_nodeip: "{{ ipPool_ipv6_nodeip_cidr_only_prefix }}{{ inventory_group_index|int +1 }}"
 | 
					 | 
				
			||||||
    ipPool_ipv4_nodeip: "{{ ipPool_ipv4_nodeip_cidr_only_prefix }}{{ inventory_group_index|int +1 }}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- name: Setup IPv4-Network
 | 
					 | 
				
			||||||
  lineinfile:
 | 
					 | 
				
			||||||
    insertafter: "iface {{ ansible_facts.default_ipv4.interface }} inet .+"
 | 
					 | 
				
			||||||
    dest: "/etc/network/interfaces"
 | 
					 | 
				
			||||||
    line: "    up /usr/sbin/ip addr add {{ ipPool_ipv4_nodeip }} dev {{ ansible_facts.default_ipv4.interface }}"
 | 
					 | 
				
			||||||
  register: setup_network_ipv4
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- name: Setup IPv6-Network
 | 
					 | 
				
			||||||
  lineinfile:
 | 
					 | 
				
			||||||
    insertafter: "iface {{ ansible_facts.default_ipv4.interface }} inet6 .+"
 | 
					 | 
				
			||||||
    dest: "/etc/network/interfaces"
 | 
					 | 
				
			||||||
    line: "    up /usr/sbin/ip -6 addr add {{ ipPool_ipv6_nodeip }} dev {{ ansible_facts.default_ipv4.interface }}"
 | 
					 | 
				
			||||||
  register: setup_network_ipv6
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- name: Force-Reload network-interface
 | 
					 | 
				
			||||||
  command: "ifup --force {{ ansible_facts.default_ipv4.interface }}"
 | 
					 | 
				
			||||||
  when: setup_network_ipv4.changed or setup_network_ipv6.changed
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: Run handlers to reload configurations
 | 
					- name: Run handlers to reload configurations
 | 
				
			||||||
  meta: flush_handlers
 | 
					  meta: flush_handlers
 | 
				
			||||||
 | 
				
			|||||||
@ -13,4 +13,4 @@ tls-san:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
cluster-cidr: {{ kubernetes.ipPool.ipv4.cluster_cidr }},{{ kubernetes.ipPool.ipv6.cluster_cidr }}
 | 
					cluster-cidr: {{ kubernetes.ipPool.ipv4.cluster_cidr }},{{ kubernetes.ipPool.ipv6.cluster_cidr }}
 | 
				
			||||||
service-cidr: {{ kubernetes.ipPool.ipv4.service_cidr }},{{ kubernetes.ipPool.ipv6.service_cidr }}
 | 
					service-cidr: {{ kubernetes.ipPool.ipv4.service_cidr }},{{ kubernetes.ipPool.ipv6.service_cidr }}
 | 
				
			||||||
node-ip:      {{ ipPool_ipv4_nodeip }},{{ ipPool_ipv6_nodeip }}
 | 
					node-ip:      {{ nodeip_ipv4 }},{{ nodeip_ipv6 }}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user