diff options
author | OpenShift Bot <eparis+openshiftbot@redhat.com> | 2017-06-19 15:18:02 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-19 15:18:02 -0400 |
commit | fabc141055b93d541701c82ce71d31a0a1d1bb6f (patch) | |
tree | 519e0c04df4dd5bebab8ab6dc70b6d13ae77e014 | |
parent | 326d8e530db5f0cfcbc1a77451150699063e900e (diff) | |
parent | d309657b40b71fba2c16aa663397da81e126a2fb (diff) | |
download | openshift-fabc141055b93d541701c82ce71d31a0a1d1bb6f.tar.gz openshift-fabc141055b93d541701c82ce71d31a0a1d1bb6f.tar.bz2 openshift-fabc141055b93d541701c82ce71d31a0a1d1bb6f.tar.xz openshift-fabc141055b93d541701c82ce71d31a0a1d1bb6f.zip |
Merge pull request #4486 from sdodson/etcdv3-clean-install
Merged by openshift-bot
-rw-r--r-- | playbooks/common/openshift-master/config.yml | 15 | ||||
-rw-r--r-- | roles/openshift_master/defaults/main.yml | 1 | ||||
-rw-r--r-- | roles/openshift_master/tasks/main.yml | 20 | ||||
-rw-r--r-- | roles/openshift_master/templates/master.yaml.v1.j2 | 6 |
4 files changed, 20 insertions, 22 deletions
diff --git a/playbooks/common/openshift-master/config.yml b/playbooks/common/openshift-master/config.yml index 429460b2c..70108fb7a 100644 --- a/playbooks/common/openshift-master/config.yml +++ b/playbooks/common/openshift-master/config.yml @@ -27,7 +27,17 @@ - name: Set clean install fact set_fact: - l_clean_install: "{{ not master_config_stat.stat.exists }}" + l_clean_install: "{{ not master_config_stat.stat.exists | bool }}" + + - name: Determine if etcd3 storage is in use + command: grep -Pzo "storage-backend:\n.*etcd3" /etc/origin/master/master-config.yaml -q + register: etcd3_grep + failed_when: false + changed_when: false + + - name: Set etcd3 fact + set_fact: + l_etcd3_enabled: "{{ etcd3_grep.rc == 0 | bool }}" - set_fact: openshift_master_pod_eviction_timeout: "{{ lookup('oo_option', 'openshift_master_pod_eviction_timeout') | default(none, true) }}" @@ -131,7 +141,8 @@ etcd_cert_subdir: "openshift-master-{{ openshift.common.hostname }}" etcd_cert_config_dir: "{{ openshift.common.config_base }}/master" etcd_cert_prefix: "master.etcd-" - r_openshift_master_clean_install: hostvars[groups.oo_first_master.0].l_clean_install + r_openshift_master_clean_install: "{{ hostvars[groups.oo_first_master.0].l_clean_install }}" + r_openshift_master_etcd3_storage: "{{ hostvars[groups.oo_first_master.0].l_etcd3_enabled }}" - role: nuage_master when: openshift.common.use_nuage | bool - role: calico_master diff --git a/roles/openshift_master/defaults/main.yml b/roles/openshift_master/defaults/main.yml index 6a082d71a..2d3ce5bcd 100644 --- a/roles/openshift_master/defaults/main.yml +++ b/roles/openshift_master/defaults/main.yml @@ -1,3 +1,4 @@ --- openshift_node_ips: [] r_openshift_master_clean_install: false +r_openshift_master_etcd3_storage: false diff --git a/roles/openshift_master/tasks/main.yml b/roles/openshift_master/tasks/main.yml index 035c15fef..aed5598c0 100644 --- a/roles/openshift_master/tasks/main.yml +++ b/roles/openshift_master/tasks/main.yml @@ -164,26 +164,6 @@ - restart master api - restart master controllers -- name: Configure master to use etcd3 storage backend on 3.6 clean installs - yedit: - src: /etc/origin/master/master-config.yaml - key: "{{ item.key }}" - value: "{{ item.value }}" - with_items: - - key: kubernetesMasterConfig.apiServerArguments.storage-backend - value: - - etcd3 - - key: kubernetesMasterConfig.apiServerArguments.storage-media-type - value: - - application/vnd.kubernetes.protobuf - when: - - r_openshift_master_clean_install - - openshift.common.version_gte_3_6 - notify: - - restart master - - restart master api - - restart master controllers - - include: set_loopback_context.yml when: openshift.common.version_gte_3_2_or_1_2 diff --git a/roles/openshift_master/templates/master.yaml.v1.j2 b/roles/openshift_master/templates/master.yaml.v1.j2 index 1935d9592..6c26e5092 100644 --- a/roles/openshift_master/templates/master.yaml.v1.j2 +++ b/roles/openshift_master/templates/master.yaml.v1.j2 @@ -139,6 +139,12 @@ kubernetesMasterConfig: - v1 {% endif %} apiServerArguments: {{ openshift.master.api_server_args | default(None) | to_padded_yaml( level=2 ) }} +{% if r_openshift_master_etcd3_storage or ( r_openshift_master_clean_install and openshift.common.version_gte_3_6 ) %} + storage-backend: + - etcd3 + storage-media-type: + - application/vnd.kubernetes.protobuf +{% endif %} controllerArguments: {{ openshift.master.controller_args | default(None) | to_padded_yaml( level=2 ) }} masterCount: {{ openshift.master.master_count if openshift.master.cluster_method | default(None) == 'native' else 1 }} masterIP: {{ openshift.common.ip }} |