/
uninstall_tb.yml
118 lines (108 loc) · 5.6 KB
/
uninstall_tb.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
---
# Switch from three or five to cluster one node for PowerFlex version 3.6
- name: Login to primary MDM node of PowerFlex version 3.x
ansible.builtin.command: scli --login --username {{ username }} --password "{{ password }}"
run_once: true
register: powerflex_tb_login_output
changed_when: powerflex_tb_login_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_scli_version[0] == '3'
- name: Switch cluster mode from three nodes to one node
ansible.builtin.command: |
scli --switch_cluster_mode --cluster_mode "1_node" --remove_slave_mdm_ip
"{{ powerflex_tb_mdm_secondary_ip }}" --remove_tb_ip "{{ powerflex_tb_primary_ip }}"
run_once: true
register: powerflex_tb_cluster_to_one_output
changed_when: powerflex_tb_cluster_to_one_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_mdm_cluster_mode[0] == "3_node" and powerflex_tb_scli_version[0] == '3'
- name: Switch cluster mode from five nodes to one node
ansible.builtin.command: |
scli --switch_cluster_mode --cluster_mode "1_node" --remove_slave_mdm_ip
"{{ powerflex_tb_mdm_secondary_ip }}","{{ powerflex_tb_mdm_tertiary_ip }}" --remove_tb_ip "{{ powerflex_tb_primary_ip }}","{{ powerflex_tb_secondary_ip }}"
run_once: true
register: powerflex_tb_cluster_to_one_output
changed_when: powerflex_tb_cluster_to_one_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_mdm_cluster_mode[0] == "5_node" and powerflex_tb_scli_version[0] == '3'
# Switch from three or five to cluster one node for PowerFlex version 4.5
- name: Generate login certificate for PowerFlex version 4.x
block:
- name: Generate login certificate using management_system_ip
ansible.builtin.command: >
scli --generate_login_certificate --management_system_ip {{ hostname }} --username {{ username }} --password {{ password }}
--p12_path /opt/emc/scaleio/mdm/cfg/cli_certificate.p12 --p12_password {{ password }} --insecure
run_once: true
register: powerflex_tb_generate_login_certificate
changed_when: powerflex_tb_generate_login_certificate.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_scli_version[0] >= '4'
rescue:
- name: Generate login certificate using primary_mdm_ip
ansible.builtin.command: >
scli --generate_login_certificate --management_system_ip {{ powerflex_tb_primary_ip }} --username {{ username }}
--password {{ password }} --p12_path /opt/emc/scaleio/mdm/cfg/cli_certificate.p12 --p12_password {{ password }} --insecure
run_once: true
register: powerflex_tb_generate_login_certificate_mdm_ip
changed_when: powerflex_tb_generate_login_certificate_mdm_ip.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_scli_version[0] >= '4'
- name: Login to MDM for PowerFlex version 4.x
ansible.builtin.command: scli --login --p12_path /opt/emc/scaleio/mdm/cfg/cli_certificate.p12 --p12_password {{ password }}
run_once: true
register: powerflex_tb_login_output
changed_when: powerflex_tb_login_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_scli_version[0] >= '4'
- name: Switch cluster mode from three nodes to one node
ansible.builtin.command: |
scli --switch_cluster_mode --cluster_mode "1_node" --remove_secondary_mdm_ip
"{{ powerflex_tb_mdm_secondary_ip }}" --remove_tb_ip "{{ powerflex_tb_primary_ip }}"
run_once: true
register: powerflex_tb_cluster_three_to_one_output
changed_when: powerflex_tb_cluster_three_to_one_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_mdm_cluster_mode[0] == "3_node" and powerflex_tb_scli_version[0] >= '4'
- name: Switch cluster mode from five nodes to one node
ansible.builtin.command: |
scli --switch_cluster_mode --cluster_mode "1_node" --remove_secondary_mdm_ip
"{{ powerflex_tb_mdm_secondary_ip }}","{{ powerflex_tb_mdm_tertiary_ip }}" --remove_tb_ip "{{ powerflex_tb_primary_ip }}","{{ powerflex_tb_secondary_ip }}"
run_once: true
register: powerflex_tb_cluster_five_to_one_output
changed_when: powerflex_tb_cluster_five_to_one_output.rc == 0
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_mdm_cluster_mode[0] == "5_node" and powerflex_tb_scli_version[0] >= '4'
# Remove the standby MDMs
- name: Remove primary tb from standby mdm
ansible.builtin.command: scli --remove_standby_mdm --remove_mdm_ip "{{ powerflex_tb_primary_ip }}"
run_once: true
register: powerflex_tb_remove_primary_tb_output
changed_when: powerflex_tb_remove_primary_tb_output.rc == 0
ignore_errors: true
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
- name: Remove secondary tb from standby mdm
ansible.builtin.command: scli --remove_standby_mdm --remove_mdm_ip "{{ powerflex_tb_secondary_ip }}"
run_once: true
register: powerflex_tb_remove_secondary_tb_output
changed_when: powerflex_tb_remove_secondary_tb_output.rc == 0
ignore_errors: true
delegate_to: "{{ powerflex_tb_mdm_primary_hostname }}"
when: powerflex_tb_secondary_ip is defined
- name: Uninstall package
register: powerflex_tb_uninstall_output
environment:
I_AM_SURE: "{{ i_am_sure | int }}"
ansible.builtin.package:
name: "{{ item }}"
state: "absent"
with_items:
- EMC-ScaleIO-mdm
when: ansible_distribution in ("RedHat", "CentOS", "SLES")
- name: Uninstall deb package
register: powerflex_tb_uninstall_output
ansible.builtin.apt:
name: "{{ item }}"
state: absent
with_items:
- EMC-ScaleIO-mdm
when: ansible_distribution == "Ubuntu"