12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- ---
- - name: Pull etcd system container
- command: atomic pull --storage=ostree {{ etcd_image }}
- register: pull_result
- changed_when: "'Pulling layer' in pull_result.stdout"
- - name: Set initial Etcd cluster
- set_fact:
- etcd_initial_cluster: >-
- {% for host in etcd_peers | default([]) -%}
- {% if loop.last -%}
- {{ hostvars[host].etcd_hostname }}={{ etcd_peer_url_scheme }}://{{ hostvars[host].etcd_ip }}:{{ etcd_peer_port }}
- {%- else -%}
- {{ hostvars[host].etcd_hostname }}={{ etcd_peer_url_scheme }}://{{ hostvars[host].etcd_ip }}:{{ etcd_peer_port }},
- {%- endif -%}
- {% endfor -%}
- when: etcd_initial_cluster is undefined
- - name: Check etcd system container package
- command: >
- atomic containers list --no-trunc -a -f container=etcd -f backend=ostree
- register: etcd_result
- - name: Unmask etcd service
- systemd:
- name: etcd
- state: stopped
- enabled: no
- masked: no
- daemon_reload: yes
- register: task_result
- failed_when:
- - task_result is failed
- - ('could not' not in task_result.msg|lower)
- when: "'etcd' not in etcd_result.stdout"
- - name: Disable etcd_container
- systemd:
- name: etcd_container
- state: stopped
- enabled: no
- daemon_reload: yes
- register: task_result
- failed_when:
- - task_result is failed
- - ('could not' not in task_result.msg|lower)
- - name: Remove etcd_container.service
- file:
- path: /etc/systemd/system/etcd_container.service
- state: absent
- - name: Systemd reload configuration
- systemd: name=etcd_container daemon_reload=yes
- - name: Install or Update Etcd system container package
- oc_atomic_container:
- name: etcd
- image: "{{ etcd_image }}"
- state: latest
- values:
- - ETCD_DATA_DIR=/var/lib/etcd
- - ETCD_LISTEN_PEER_URLS={{ etcd_listen_peer_urls }}
- - ETCD_NAME={{ etcd_hostname }}
- - ETCD_INITIAL_CLUSTER={{ etcd_initial_cluster }}
- - ETCD_LISTEN_CLIENT_URLS={{ etcd_listen_client_urls }}
- - ETCD_INITIAL_ADVERTISE_PEER_URLS={{ etcd_initial_advertise_peer_urls }}
- - ETCD_INITIAL_CLUSTER_STATE={{ etcd_initial_cluster_state }}
- - ETCD_INITIAL_CLUSTER_TOKEN={{ etcd_initial_cluster_token }}
- - ETCD_ADVERTISE_CLIENT_URLS={{ etcd_advertise_client_urls }}
- - ETCD_CA_FILE={{ etcd_ca_file }}
- - ETCD_CERT_FILE={{ etcd_cert_file }}
- - ETCD_KEY_FILE={{ etcd_key_file }}
- - ETCD_PEER_CA_FILE={{ etcd_peer_ca_file }}
- - ETCD_PEER_CERT_FILE={{ etcd_peer_cert_file }}
- - ETCD_PEER_KEY_FILE={{ etcd_peer_key_file }}
- - ETCD_TRUSTED_CA_FILE={{ etcd_ca_file }}
- - ETCD_PEER_TRUSTED_CA_FILE={{ etcd_peer_ca_file }}
- - 'ADDTL_MOUNTS=,{"type":"bind","source":"/etc/","destination":"/etc/","options":["rbind","rw","rslave"]},{"type":"bind","source":"/var/lib/etcd","destination":"/var/lib/etcd/","options":["rbind","rw","rslave"]}'
- - name: Ensure etcd datadir ownership for the system container
- file:
- path: "{{ etcd_data_dir }}"
- state: directory
- mode: 0700
- owner: root
- group: root
- recurse: True
|