diff --git a/roles/network_plugin/calico/rr/tasks/main.yml b/roles/network_plugin/calico/rr/tasks/main.yml index 02cfce152..2447718a2 100644 --- a/roles/network_plugin/calico/rr/tasks/main.yml +++ b/roles/network_plugin/calico/rr/tasks/main.yml @@ -47,6 +47,25 @@ notify: restart calico-rr - name: Calico-rr | Configure route reflector + command: |- + {{ bin_dir }}/etcdctl \ + --endpoints={{ etcd_access_addresses }} \ + --cert={{ etcd_cert_dir }}/admin-{{ groups['etcd'][0] }}.pem \ + --key={{ etcd_cert_dir }}/admin-{{ groups['etcd'][0] }}-key.pem \ + put /calico/bgp/v1/rr_v4/{{ rr_ip }} \ + '{ + "ip": "{{ rr_ip }}", + "cluster_id": "{{ cluster_id }}" + }' + environment: + ETCDCTL_API: 3 + retries: 4 + delay: "{{ retry_stagger | random + 3 }}" + delegate_to: "{{groups['etcd'][0]}}" + when: + - calico_version | version_compare("v3.0.0", ">=") + +- name: Calico-rr | Configure route reflector (legacy) command: |- {{ bin_dir }}/etcdctl \ --peers={{ etcd_access_addresses }} \ @@ -60,6 +79,8 @@ retries: 4 delay: "{{ retry_stagger | random + 3 }}" delegate_to: "{{groups['etcd'][0]}}" + when: + - calico_version | version_compare("v3.0.0", "<") - meta: flush_handlers