diff options
Diffstat (limited to 'playbooks/common/openshift-cluster/redeploy-certificates')
| -rw-r--r-- | playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml | 93 | ||||
| -rw-r--r-- | playbooks/common/openshift-cluster/redeploy-certificates/etcd.yml | 90 | 
2 files changed, 54 insertions, 129 deletions
| diff --git a/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml b/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml index 3a8e32ed1..3da22bce6 100644 --- a/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml +++ b/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml @@ -13,26 +13,13 @@  - name: Backup existing etcd CA certificate directories    hosts: oo_etcd_to_config -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"    tasks: -  - name: Determine if CA certificate directory exists -    stat: -      path: "{{ etcd_ca_dir }}" -    register: etcd_ca_certs_dir_stat -  - name: Backup generated etcd certificates -    command: > -      tar -czf {{ etcd_conf_dir }}/etcd-ca-certificate-backup-{{ ansible_date_time.epoch }}.tgz -      {{ etcd_ca_dir }} -    args: -      warn: no -    when: etcd_ca_certs_dir_stat.stat.exists | bool -  - name: Remove CA certificate directory -    file: -      path: "{{ etcd_ca_dir }}" -      state: absent -    when: etcd_ca_certs_dir_stat.stat.exists | bool +  - include_role: +      name: etcd +      tasks_from: backup_ca_certificates +  - include_role: +      name: etcd +      tasks_from: remove_ca_certificates  - name: Generate new etcd CA    hosts: oo_first_etcd @@ -62,52 +49,14 @@  - name: Distribute etcd CA to etcd hosts    hosts: oo_etcd_to_config -  vars: -    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"    tasks: -  - name: Create a tarball of the etcd ca certs -    command: > -      tar -czvf {{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz -        -C {{ etcd_ca_dir }} . -    args: -      creates: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" -      warn: no -    delegate_to: "{{ etcd_ca_host }}" -    run_once: true -  - name: Retrieve etcd ca cert tarball -    fetch: -      src: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" -      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" -      flat: yes -      fail_on_missing: yes -      validate_checksum: yes -    delegate_to: "{{ etcd_ca_host }}" -    run_once: true -  - name: Ensure ca directory exists -    file: -      path: "{{ etcd_ca_dir }}" -      state: directory -  - name: Unarchive etcd ca cert tarballs -    unarchive: -      src: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/{{ etcd_ca_name }}.tgz" -      dest: "{{ etcd_ca_dir }}" -  - name: Read current etcd CA -    slurp: -      src: "{{ etcd_conf_dir }}/ca.crt" -    register: g_current_etcd_ca_output -  - name: Read new etcd CA -    slurp: -      src: "{{ etcd_ca_dir }}/ca.crt" -    register: g_new_etcd_ca_output -  - copy: -      content: "{{ (g_new_etcd_ca_output.content|b64decode) + (g_current_etcd_ca_output.content|b64decode) }}" -      dest: "{{ item }}/ca.crt" -    with_items: -    - "{{ etcd_conf_dir }}" -    - "{{ etcd_ca_dir }}" +  - include_role: +      name: etcd +      tasks_from: distribute_ca +    vars: +      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +      etcd_sync_cert_dir: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}" +      etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}"  - include: ../../openshift-etcd/restart.yml    # Do not restart etcd when etcd certificates were previously expired. @@ -118,17 +67,13 @@  - name: Retrieve etcd CA certificate    hosts: oo_first_etcd -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"    tasks: -  - name: Retrieve etcd CA certificate -    fetch: -      src: "{{ etcd_conf_dir }}/ca.crt" -      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" -      flat: yes -      fail_on_missing: yes -      validate_checksum: yes +  - include_role: +      name: etcd +      tasks_from: retrieve_ca_certificates +    vars: +      etcd_sync_cert_dir: hostvars['localhost'].g_etcd_mktemp.stdout +      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"  - name: Distribute etcd CA to masters    hosts: oo_masters_to_config diff --git a/playbooks/common/openshift-cluster/redeploy-certificates/etcd.yml b/playbooks/common/openshift-cluster/redeploy-certificates/etcd.yml index 16f0edb06..48a5a13ac 100644 --- a/playbooks/common/openshift-cluster/redeploy-certificates/etcd.yml +++ b/playbooks/common/openshift-cluster/redeploy-certificates/etcd.yml @@ -2,73 +2,53 @@  - name: Backup and remove generated etcd certificates    hosts: oo_first_etcd    any_errors_fatal: true -  roles: -    - role: etcd_common -      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -  post_tasks: -    - name: Determine if generated etcd certificates exist -      stat: -        path: "{{ etcd_conf_dir }}/generated_certs" -      register: etcd_generated_certs_dir_stat -    - name: Backup generated etcd certificates -      command: > -        tar -czf {{ etcd_conf_dir }}/etcd-generated-certificate-backup-{{ ansible_date_time.epoch }}.tgz -        {{ etcd_conf_dir }}/generated_certs -      args: -        warn: no -      when: etcd_generated_certs_dir_stat.stat.exists | bool -    - name: Remove generated etcd certificates -      file: -        path: "{{ item }}" -        state: absent -      with_items: -        - "{{ etcd_conf_dir }}/generated_certs" +  tasks: +  - include_role: +      name: etcd +      tasks_from: backup_generated_certificates +  - include_role: +      name: etcd +      tasks_from: remove_generated_certificates  - name: Backup and removed deployed etcd certificates    hosts: oo_etcd_to_config    any_errors_fatal: true -  roles: -    - role: etcd_common +  tasks: +  - include_role: +      name: etcd +      tasks_from: backup_server_certificates +    vars:        r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -  post_tasks: -    - name: Backup etcd certificates -      command: > -        tar -czvf /etc/etcd/etcd-server-certificate-backup-{{ ansible_date_time.epoch }}.tgz -        {{ etcd_conf_dir }}/ca.crt -        {{ etcd_conf_dir }}/server.crt -        {{ etcd_conf_dir }}/server.key -        {{ etcd_conf_dir }}/peer.crt -        {{ etcd_conf_dir }}/peer.key -      args: -        warn: no  - name: Redeploy etcd certificates    hosts: oo_etcd_to_config    any_errors_fatal: true +  roles: +  - role: openshift_etcd_facts    tasks: -    - include_role: -        name: etcd -        tasks_from: server_certificates -      vars: -        etcd_certificates_redeploy: true -        etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" -        etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" -        etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" -        openshift_ca_host: "{{ groups.oo_first_master.0 }}" -        r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +  - include_role: +      name: etcd +      tasks_from: server_certificates +    vars: +      etcd_certificates_redeploy: true +      etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" +      etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" +      etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" +      openshift_ca_host: "{{ groups.oo_first_master.0 }}" +      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"  - name: Redeploy etcd client certificates for masters    hosts: oo_masters_to_config    any_errors_fatal: true    roles: -    - role: openshift_etcd_facts -    - role: openshift_etcd_client_certificates -      etcd_certificates_redeploy: true -      etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" -      etcd_cert_subdir: "openshift-master-{{ openshift.common.hostname }}" -      etcd_cert_config_dir: "{{ openshift.common.config_base }}/master" -      etcd_cert_prefix: "master.etcd-" -      openshift_ca_host: "{{ groups.oo_first_master.0 }}" -      openshift_master_count: "{{ openshift.master.master_count | default(groups.oo_masters | length) }}" -      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -      when: groups.oo_etcd_to_config is defined and groups.oo_etcd_to_config +  - role: openshift_etcd_facts +  - role: openshift_etcd_client_certificates +    etcd_certificates_redeploy: true +    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" +    etcd_cert_subdir: "openshift-master-{{ openshift.common.hostname }}" +    etcd_cert_config_dir: "{{ openshift.common.config_base }}/master" +    etcd_cert_prefix: "master.etcd-" +    openshift_ca_host: "{{ groups.oo_first_master.0 }}" +    openshift_master_count: "{{ openshift.master.master_count | default(groups.oo_masters | length) }}" +    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +    when: groups.oo_etcd_to_config is defined and groups.oo_etcd_to_config | 
