-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
19 changed files
with
635 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,196 @@ | ||
# powerflex_sdt | ||
|
||
Role to manage the installation and uninstallation of Powerflex SDT. | ||
|
||
## Table of contents | ||
|
||
* [Requirements](#requirements) | ||
* [Ansible collections](#ansible-collections) | ||
* [Role Variables](#role-variables) | ||
* [Examples](#examples) | ||
* [Usage instructions](#usage-instructions) | ||
* [Author Information](#author-information) | ||
|
||
## Requirements | ||
|
||
``` | ||
ansible | ||
python | ||
``` | ||
|
||
## Ansible collections | ||
|
||
Collections required to use the role. | ||
|
||
``` | ||
dellemc.powerflex | ||
``` | ||
|
||
## Role Variables | ||
|
||
<table> | ||
<thead> | ||
<tr> | ||
<th>Name</th> | ||
<th>Required</th> | ||
<th>Description</th> | ||
<th>Choices</th> | ||
<th>Type</th> | ||
<th>Default Value</th> | ||
</tr> | ||
</thead> | ||
<tbody> | ||
<tr> | ||
<td>hostname</td> | ||
<td>true</td> | ||
<td>IP or FQDN of the PowerFlex gateway.</td> | ||
<td></td> | ||
<td>str</td> | ||
<td>10.1.1.1</td> | ||
</tr> | ||
<tr> | ||
<td>username</td> | ||
<td>true</td> | ||
<td>The username of the PowerFlex gateway.</td> | ||
<td></td> | ||
<td>str</td> | ||
<td>admin</td> | ||
</tr> | ||
<tr> | ||
<td>password</td> | ||
<td>true</td> | ||
<td>The password of the PowerFlex gateway.</td> | ||
<td></td> | ||
<td>str</td> | ||
<td>password</td> | ||
</tr> | ||
<tr> | ||
<td>port</td> | ||
<td>false</td> | ||
<td>Port</td> | ||
<td></td> | ||
<td>int</td> | ||
<td>443</td> | ||
</tr> | ||
<tr> | ||
<td>validate_certs</td> | ||
<td>false</td> | ||
<td>If C(false), the SSL certificates will not be validated.<br>Configure C(false) only on personally controlled sites where self-signed certificates are used.</td> | ||
<td></td> | ||
<td>bool</td> | ||
<td>false</td> | ||
</tr> | ||
<tr> | ||
<td>timeout</td> | ||
<td>false</td> | ||
<td>Timeout</td> | ||
<td></td> | ||
<td>int</td> | ||
<td>120</td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_common_file_install_location</td> | ||
<td>true</td> | ||
<td>Location of installation and rpm gpg files to be installed. | ||
<br>The required, compatible installation software package based on the operating system of the node. | ||
<br>The files can be downloaded from the Dell Product support page for PowerFlex software.</td> | ||
<td></td> | ||
<td>str</td> | ||
<td>/var/tmp</td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_sdt_discovery_port</td> | ||
<td>false</td> | ||
<td>Port used by the NVMe hosts for discovery. Set to 1 in order to indicate no use of discovery port.</td> | ||
<td></td> | ||
<td>int</td> | ||
<td>8009</td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_sdt_nvme_port</td> | ||
<td>false</td> | ||
<td>Port used by the NVMe hosts</td> | ||
<td></td> | ||
<td>int</td> | ||
<td>4420</td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_sdt_protection_domain</td> | ||
<td>true</td> | ||
<td>The name of the protection domain to which the SDT will be added. | ||
</td> | ||
<td></td> | ||
<td>str</td> | ||
<td></td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_sdt_state</td> | ||
<td>false</td> | ||
<td>State of the SDT.</td> | ||
<td>present, absent</td> | ||
<td>str</td> | ||
<td>present</td> | ||
</tr> | ||
<tr> | ||
<td>powerflex_sdt_storage_port</td> | ||
<td>false</td> | ||
<td>Port assigned to the SDT.</td> | ||
<td></td> | ||
<td>int</td> | ||
<td>12200</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
|
||
## Examples | ||
---- | ||
``` | ||
- name: "Install and configure powerflex SDT" | ||
ansible.builtin.import_role: | ||
name: "powerflex_sdt" | ||
vars: | ||
hostname: "{{ hostname }}" | ||
username: "{{ username }}" | ||
password: "{{ password }}" | ||
validate_certs: "{{ validate_certs }}" | ||
port: "{{ port }}" | ||
powerflex_sdt_protection_domain: domain1 | ||
powerflex_sdt_storage_port: 12200 | ||
powerflex_sdt_nvme_port: 4420 | ||
powerflex_sdt_discovery_port: 8009 | ||
powerflex_sdt_state: present | ||
- name: "Uninstall powerflex SDT" | ||
ansible.builtin.import_role: | ||
name: "powerflex_sdt" | ||
vars: | ||
hostname: "{{ hostname }}" | ||
username: "{{ username }}" | ||
password: "{{ password }}" | ||
validate_certs: "{{ validate_certs }}" | ||
port: "{{ port }}" | ||
powerflex_sdt_state: 'absent' | ||
``` | ||
|
||
## Usage instructions | ||
---- | ||
### To install all dependency packages, including SDT, on node: | ||
- PowerFlex 4.5: | ||
``` | ||
ansible-playbook -i inventory site_powerflex45.yml | ||
``` | ||
|
||
### To uninstall SDT: | ||
- PowerFlex 4.5: | ||
``` | ||
ansible-playbook -i inventory uninstall_powerflex45.yml | ||
``` | ||
|
||
Sample playbooks and inventory can be found in the playbooks directory. | ||
|
||
## Author Information | ||
------------------ | ||
|
||
Dell Technologies | ||
Yuhao Liu ([email protected]) 2024 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
file_glob_name: sdt | ||
i_am_sure: 1 | ||
powerflex_sdt_state: present | ||
powerflex_sdt_storage_port: 12200 | ||
powerflex_sdt_nvme_port: 4420 | ||
powerflex_sdt_discovery_port: 8009 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
--- | ||
argument_specs: | ||
main: | ||
short_description: Role to manage the installation and uninstallation of Powerflex SDT. | ||
description: | ||
- Role to manage the installation and uninstallation of Powerflex SDT. | ||
options: | ||
hostname: | ||
required: true | ||
type: str | ||
description: IP or FQDN of the PowerFlex gateway. | ||
username: | ||
required: true | ||
type: str | ||
description: The username of the PowerFlex gateway. | ||
password: | ||
required: true | ||
type: str | ||
description: The password of the PowerFlex gateway. | ||
port: | ||
type: int | ||
description: Port of the PowerFlex gateway. | ||
default: 443 | ||
validate_certs: | ||
description: | ||
- If C(false), the SSL certificates will not be validated. | ||
- Configure C(false) only on personally controlled sites where self-signed certificates are used. | ||
type: bool | ||
default: false | ||
timeout: | ||
description: Timeout. | ||
type: int | ||
default: 120 | ||
powerflex_common_file_install_location: | ||
description: | ||
- Location of installation and rpm gpg files to be installed. | ||
- The required, compatible installation software package based on the operating system of the node. | ||
- The files can be downloaded from the Dell Product support page for PowerFlex software. | ||
type: str | ||
default: /var/tmp | ||
powerflex_sdt_discovery_port: | ||
description: | ||
- Port used by the NVMe hosts for discovery. Set to 1 in order to indicate no use of discovery port. | ||
type: int | ||
default: 8009 | ||
powerflex_sdt_nvme_port: | ||
description: | ||
- Port used by the NVMe hosts | ||
type: int | ||
default: 4420 | ||
powerflex_sdt_protection_domain: | ||
required: true | ||
description: | ||
- The name of the protection domain to which the SDT will be added. | ||
type: str | ||
powerflex_sdt_state: | ||
description: | ||
- Specifies the state of SDT. | ||
type: str | ||
choices: ['absent', 'present'] | ||
default: present | ||
powerflex_sdt_storage_port: | ||
description: | ||
- Port assigned to the SDT | ||
type: int | ||
default: 12200 |
Oops, something went wrong.