diff options
-rw-r--r-- | chaos-at-home/k8s-chtest.yml | 2 | ||||
-rw-r--r-- | dan/k8s-emc.yml | 2 | ||||
-rw-r--r-- | roles/kubernetes/addons/cert-manager/tasks/main.yml | 38 | ||||
-rw-r--r-- | roles/kubernetes/addons/metrics-server/defaults/main.yml | 2 | ||||
-rw-r--r-- | roles/kubernetes/addons/metrics-server/tasks/main.yml | 38 | ||||
-rw-r--r-- | roles/kubernetes/addons/openebs-zfs/tasks/main.yml | 72 |
6 files changed, 84 insertions, 70 deletions
diff --git a/chaos-at-home/k8s-chtest.yml b/chaos-at-home/k8s-chtest.yml index 01ba7db8..1de7e574 100644 --- a/chaos-at-home/k8s-chtest.yml +++ b/chaos-at-home/k8s-chtest.yml @@ -30,6 +30,6 @@ - import_playbook: ../common/kubernetes-cluster-cleanup.yml - name: install addons - hosts: _kubernetes_primary_controlplane_node_ + hosts: _kubernetes_nodes_ roles: - role: kubernetes/addons/metrics-server diff --git a/dan/k8s-emc.yml b/dan/k8s-emc.yml index 08d99341..549b7a63 100644 --- a/dan/k8s-emc.yml +++ b/dan/k8s-emc.yml @@ -33,7 +33,7 @@ - import_playbook: ../common/kubernetes-cluster-cleanup.yml - name: install addons - hosts: _kubernetes_primary_controlplane_node_ + hosts: _kubernetes_nodes_ roles: - role: kubernetes/addons/metrics-server - role: kubernetes/addons/openebs-zfs diff --git a/roles/kubernetes/addons/cert-manager/tasks/main.yml b/roles/kubernetes/addons/cert-manager/tasks/main.yml index f739a5b7..e34085e1 100644 --- a/roles/kubernetes/addons/cert-manager/tasks/main.yml +++ b/roles/kubernetes/addons/cert-manager/tasks/main.yml @@ -1,21 +1,25 @@ --- -- name: create base directory for cert-manager addon - file: - path: /etc/kubernetes/addons/cert-manager - state: directory +- name: deploy metrics-server addon + run_once: true + delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}" + block: + - name: create base directory for cert-manager addon + file: + path: /etc/kubernetes/addons/cert-manager + state: directory -- name: copy config for cert-manager - template: - src: "config.{{ kubernetes_cert_manager_version }}.yml.j2" - dest: /etc/kubernetes/addons/cert-manager/config.yml + - name: copy config for cert-manager + template: + src: "config.{{ kubernetes_cert_manager_version }}.yml.j2" + dest: /etc/kubernetes/addons/cert-manager/config.yml -- name: check if cert-manager is already installed - check_mode: no - command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/cert-manager/config.yml - failed_when: false - changed_when: false - register: kube_cert_manager_diff_result + - name: check if cert-manager is already installed + check_mode: no + command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/cert-manager/config.yml + failed_when: false + changed_when: false + register: kube_cert_manager_diff_result -- name: install cert-manager onto the cluster - when: kube_cert_manager_diff_result.rc != 0 - command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/cert-manager/config.yml + - name: install cert-manager onto the cluster + when: kube_cert_manager_diff_result.rc != 0 + command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/cert-manager/config.yml diff --git a/roles/kubernetes/addons/metrics-server/defaults/main.yml b/roles/kubernetes/addons/metrics-server/defaults/main.yml new file mode 100644 index 00000000..2e7e78e2 --- /dev/null +++ b/roles/kubernetes/addons/metrics-server/defaults/main.yml @@ -0,0 +1,2 @@ +--- +# kubernetes_metrics_server_version: 0.6.1 diff --git a/roles/kubernetes/addons/metrics-server/tasks/main.yml b/roles/kubernetes/addons/metrics-server/tasks/main.yml index 87c57346..79bf1cf1 100644 --- a/roles/kubernetes/addons/metrics-server/tasks/main.yml +++ b/roles/kubernetes/addons/metrics-server/tasks/main.yml @@ -1,21 +1,25 @@ --- -- name: create base directory for metrics-server addon - file: - path: /etc/kubernetes/addons/metrics-server - state: directory +- name: deploy metrics-server addon + run_once: true + delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}" + block: + - name: create base directory for metrics-server addon + file: + path: /etc/kubernetes/addons/metrics-server + state: directory -- name: copy config for metrics-server - template: - src: "components.{{ kubernetes_metrics_server_version }}.yml.j2" - dest: /etc/kubernetes/addons/metrics-server/config.yml + - name: copy config for metrics-server + template: + src: "components.{{ kubernetes_metrics_server_version }}.yml.j2" + dest: /etc/kubernetes/addons/metrics-server/config.yml -- name: check if metrics-server is already installed - check_mode: no - command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/metrics-server/config.yml - failed_when: false - changed_when: false - register: kube_metrics_server_diff_result + - name: check if metrics-server is already installed + check_mode: no + command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/metrics-server/config.yml + failed_when: false + changed_when: false + register: kube_metrics_server_diff_result -- name: install metrics-server onto the cluster - when: kube_metrics_server_diff_result.rc != 0 - command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/metrics-server/config.yml + - name: install metrics-server onto the cluster + when: kube_metrics_server_diff_result.rc != 0 + command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/metrics-server/config.yml diff --git a/roles/kubernetes/addons/openebs-zfs/tasks/main.yml b/roles/kubernetes/addons/openebs-zfs/tasks/main.yml index 577eef6d..d1c47ef5 100644 --- a/roles/kubernetes/addons/openebs-zfs/tasks/main.yml +++ b/roles/kubernetes/addons/openebs-zfs/tasks/main.yml @@ -1,42 +1,46 @@ --- -- name: create base directory for openebs-zfs addon - file: - path: /etc/kubernetes/addons/openebs-zfs - state: directory +- name: deploy metrics-server addon + run_once: true + delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}" + block: + - name: create base directory for openebs-zfs addon + file: + path: /etc/kubernetes/addons/openebs-zfs + state: directory -- name: copy config for openebs-zfs - template: - src: "zfs-operator.{{ kubernetes_openebs_zfs_version }}.yml.j2" - dest: /etc/kubernetes/addons/openebs-zfs/config.yml + - name: copy config for openebs-zfs + template: + src: "zfs-operator.{{ kubernetes_openebs_zfs_version }}.yml.j2" + dest: /etc/kubernetes/addons/openebs-zfs/config.yml -- name: check if openebs-zfs is already installed - check_mode: no - command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/config.yml - failed_when: false - changed_when: false - register: kube_openebs_zfs_config_diff_result + - name: check if openebs-zfs is already installed + check_mode: no + command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/config.yml + failed_when: false + changed_when: false + register: kube_openebs_zfs_config_diff_result -- name: install openebs-zfs onto the cluster - when: kube_openebs_zfs_config_diff_result.rc != 0 - command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/config.yml + - name: install openebs-zfs onto the cluster + when: kube_openebs_zfs_config_diff_result.rc != 0 + command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/config.yml -- name: copy storageclasses config for openebs-zfs - loop: "{{ kubernetes_openebs_zfs_storage_classes | dict2items }}" - loop_control: - label: "{{ item.key }}" - template: - src: "storageclass.yml.j2" - dest: "/etc/kubernetes/addons/openebs-zfs/sc-{{ item.key }}.yml" + - name: copy storageclasses config for openebs-zfs + loop: "{{ kubernetes_openebs_zfs_storage_classes | dict2items }}" + loop_control: + label: "{{ item.key }}" + template: + src: "storageclass.yml.j2" + dest: "/etc/kubernetes/addons/openebs-zfs/sc-{{ item.key }}.yml" -- name: check if openebs-zfs storageclass already exists - loop: "{{ kubernetes_openebs_zfs_storage_classes | list }}" - check_mode: no - command: "kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml" - failed_when: false - changed_when: false - register: kube_openebs_zfs_sc_diff + - name: check if openebs-zfs storageclass already exists + loop: "{{ kubernetes_openebs_zfs_storage_classes | list }}" + check_mode: no + command: "kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml" + failed_when: false + changed_when: false + register: kube_openebs_zfs_sc_diff -- name: install/update storageclasses for openebs-zfs - loop: "{{ kube_openebs_zfs_sc_diff.results | selectattr('rc', 'ne', 0) | map(attribute='item') }}" - command: "kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml" + - name: install/update storageclasses for openebs-zfs + loop: "{{ kube_openebs_zfs_sc_diff.results | selectattr('rc', 'ne', 0) | map(attribute='item') }}" + command: "kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml" |