Skip to content
Snippets Groups Projects
Unverified Commit a01d0c04 authored by MatthieuFin's avatar MatthieuFin Committed by GitHub
Browse files

fix: :bug: patch calico node to avoid vxlan tunnel drop (#11097)

if node.projectcalico.org already existe patch node to set asNumber
instead of apply resource to prevent remove of existing fields feed by
calico-node pods

:white_check_mark: Closes: 11096
parent 21e88091
Branches
Tags
No related merge requests found
...@@ -23,6 +23,38 @@ ...@@ -23,6 +23,38 @@
when: when:
- inventory_hostname == groups['kube_control_plane'][0] - inventory_hostname == groups['kube_control_plane'][0]
- name: Calico | Get node for per node peering
command:
cmd: "{{ bin_dir }}/calicoctl.sh get node {{ inventory_hostname }}"
register: output_get_node
when:
- inventory_hostname in groups['k8s_cluster']
- local_as is defined
- groups['calico_rr'] | default([]) | length == 0
delegate_to: "{{ groups['kube_control_plane'][0] }}"
- name: Calico | Patch node asNumber for per node peering
command:
cmd: |-
{{ bin_dir }}/calicoctl.sh patch node "{{ inventory_hostname }}" --patch '{{ patch is string | ternary(patch, patch | to_json) }}'
vars:
patch: >
{"spec": {
"bgp": {
"asNumber": "{{ local_as }}"
},
"orchRefs": [{"nodeName": "{{ inventory_hostname }}", "orchestrator": "k8s"}]
}}
register: output
retries: 0
until: output.rc == 0
delay: "{{ retry_stagger | random + 3 }}"
when:
- inventory_hostname in groups['k8s_cluster']
- local_as is defined
- groups['calico_rr'] | default([]) | length == 0
- output_get_node.rc == 0
- name: Calico | Configure node asNumber for per node peering - name: Calico | Configure node asNumber for per node peering
command: command:
cmd: "{{ bin_dir }}/calicoctl.sh apply -f -" cmd: "{{ bin_dir }}/calicoctl.sh apply -f -"
...@@ -48,6 +80,7 @@ ...@@ -48,6 +80,7 @@
- inventory_hostname in groups['k8s_cluster'] - inventory_hostname in groups['k8s_cluster']
- local_as is defined - local_as is defined
- groups['calico_rr'] | default([]) | length == 0 - groups['calico_rr'] | default([]) | length == 0
- output_get_node.rc != 0
- name: Calico | Configure peering with router(s) at node scope - name: Calico | Configure peering with router(s) at node scope
command: command:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment