86e3506ae6
The current way to setup the etc cluster is messy and buggy. - It checks for cluster is healthy before the cluster is even created. - The unit files are started on handlers, not in the task, so you mess with "flush handlers". - The join_member.yml is not used. - etcd events cluster is not configured for kubeadm - remove duplicate runs between running the role on etcd nodes and k8s nodes
58 lines
1.5 KiB
YAML
58 lines
1.5 KiB
YAML
---
|
|
- name: restart etcd
|
|
command: /bin/true
|
|
notify:
|
|
- Backup etcd data
|
|
- etcd | reload systemd
|
|
- reload etcd
|
|
- wait for etcd up
|
|
|
|
- name: restart etcd-events
|
|
command: /bin/true
|
|
notify:
|
|
- etcd | reload systemd
|
|
- reload etcd-events
|
|
- wait for etcd-events up
|
|
|
|
- import_tasks: backup.yml
|
|
|
|
- name: etcd | reload systemd
|
|
command: systemctl daemon-reload
|
|
|
|
- name: reload etcd
|
|
service:
|
|
name: etcd
|
|
state: restarted
|
|
when: is_etcd_master
|
|
|
|
- name: reload etcd-events
|
|
service:
|
|
name: etcd-events
|
|
state: restarted
|
|
when: is_etcd_master
|
|
|
|
- name: wait for etcd up
|
|
uri:
|
|
url: "https://{% if is_etcd_master %}{{ etcd_address }}{% else %}127.0.0.1{% endif %}:2379/health"
|
|
validate_certs: no
|
|
client_cert: "{{ etcd_cert_dir }}/member-{{ inventory_hostname }}.pem"
|
|
client_key: "{{ etcd_cert_dir }}/member-{{ inventory_hostname }}-key.pem"
|
|
register: result
|
|
until: result.status is defined and result.status == 200
|
|
retries: 10
|
|
delay: 5
|
|
|
|
- name: wait for etcd-events up
|
|
uri:
|
|
url: "https://{% if is_etcd_master %}{{ etcd_address }}{% else %}127.0.0.1{% endif %}:2381/health"
|
|
validate_certs: no
|
|
client_cert: "{{ etcd_cert_dir }}/member-{{ inventory_hostname }}.pem"
|
|
client_key: "{{ etcd_cert_dir }}/member-{{ inventory_hostname }}-key.pem"
|
|
register: result
|
|
until: result.status is defined and result.status == 200
|
|
retries: 10
|
|
delay: 5
|
|
|
|
- name: set etcd_secret_changed
|
|
set_fact:
|
|
etcd_secret_changed: true
|