Skip to content

Commit

Permalink
Update versions for release 3.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
swartzn committed Jan 31, 2023
1 parent f52fa83 commit cbd6ef0
Show file tree
Hide file tree
Showing 8 changed files with 39 additions and 38 deletions.
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
NetApp E-Series BeeGFS Collection
=================================
NetApp has [partnered with ThinkParQ](https://blog.netapp.com/solution-support-for-beegfs-and-e-series/) (the company behind [BeeGFS](https://blog.netapp.com/beegfs-for-beginners/)) to deliver high performing, highly scalable, yet cost effective storage solutions. The Ansible roles in this collection automate deploying BeeGFS on E-Series as described in NetApp's deployment guides and technical reports. This enables delivery of end-to-end storage solutions using Infrastructure as Code (IaC).
NetApp has [partnered with ThinkParQ](https://blog.netapp.com/solution-support-for-beegfs-and-e-series/) (the company behind [BeeGFS](https://blog.netapp.com/beegfs-for-beginners/)) to deliver high performing, highly scalable, yet cost effective storage solutions. The Ansible roles in this collection automate deploying BeeGFS on E-Series as described in NetApp's deployment guides and technical reports. This enables delivery of end-to-end storage solutions using Infrastructure as Code (IaC).

The roles in this collection make it easy to get started [automating BeeGFS and E-Series](https://blog.netapp.com/deploying-beegfs-eseries), providing copy-and-update example inventory files and playbooks. Roles are designed and developed for specific BeeGFS major releases and either a high availability (HA) or non-HA mode of operation. If support is added for a new version of BeeGFS it will be implemented as a new role to avoid backwards compatibility issues.

Expand All @@ -25,5 +25,4 @@ BSD-3-Clause
Maintainer Information
------------------
- Nathan Swartz (@ndswartz)
- Joe McCormick (@iamjoemccormick)
- Tracy Cummins (@tracycummins)
- Joe McCormick (@iamjoemccormick)
6 changes: 3 additions & 3 deletions galaxy.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
namespace: "netapp_eseries"
name: "beegfs"
version: "3.0.1"
version: "3.1.0"
readme: "README.md"
authors:
- "Joe McCormick (@iamjoemccormick)"
Expand All @@ -16,8 +16,8 @@ tags:
- beegfs
- ha
dependencies:
"netapp_eseries.santricity": '>=1.3.1'
"netapp_eseries.host": ">=1.2.0"
"netapp_eseries.santricity": '>=1.4.0'
"netapp_eseries.host": ">=1.3.0"
repository: "https://github.com/netappeseries/beegfs/"
documentation: ""
homepage: "https://github.com/netappeseries/beegfs/"
Expand Down
2 changes: 1 addition & 1 deletion meta/runtime.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
requires_ansible: '>=2.10'
requires_ansible: '>=2.13'
2 changes: 1 addition & 1 deletion roles/beegfs_ha_7_2/meta/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ galaxy_info:
description: Configures a highly available BeeGFS parallel file system with NetApp E-Series storage systems.
company: NetApp
license: BSD-3-Clause
min_ansible_version: 2.10
min_ansible_version: 2.13
platforms:
- name: EL
versions:
Expand Down
2 changes: 1 addition & 1 deletion roles/beegfs_ha_7_3/meta/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ galaxy_info:
description: Configures a highly available BeeGFS parallel file system with NetApp E-Series storage systems.
company: NetApp
license: BSD-3-Clause
min_ansible_version: 2.10
min_ansible_version: 2.13
platforms:
- name: EL
versions:
Expand Down
50 changes: 25 additions & 25 deletions roles/beegfs_ha_common/docs/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@
Ensure the following conditions are met:
- Ansible control node has the following installed:
- Python 3.6 or later
- The Ansible version above may have a minimum required Python version
- The Ansible version above may have a minimum required Python version
- NetApp E-Series Ansible Collections:
- netapp_eseries.santricity 1.3.1 or later.
- netapp_eseries.host 1.2 or later.
- netapp_eseries.santricity 1.4.0 or later.
- netapp_eseries.host 1.3 or later.
- Python (pip) packages installed:
- ipaddr
- netaddr
Expand All @@ -55,10 +55,10 @@ Build the inventory and playbook files for on your BeeGFS cluster requirements.
For security reasons these passwords should not be stored in plain text and, instead, should use [Ansible Vault](https://docs.ansible.com/ansible/latest/user_guide/vault.html).

There are two ways to build the necessary files:
1. Define the inventory and run the `create_inventory_structure.yml` playbook from the `getting_started/beegfs_ha_latest` folder. This is the recommended
1. Define the inventory and run the `create_inventory_structure.yml` playbook from the `getting_started/beegfs_ha_latest` folder. This is the recommended
way to get started with the BeeGFS HA role.
* Refer to the readme from [beegfs_ha_latest getting_started project](../../../getting_started/beegfs_ha_latest/README.md)
for details.
* Refer to the readme from [beegfs_ha_latest getting_started project](../../../getting_started/beegfs_ha_latest/README.md)
for details.
2. Create the inventory and playbook using the examples and variables found in the below sections.

Once all the files are created, then run the playbook.
Expand All @@ -68,8 +68,8 @@ Once all the files are created, then run the playbook.
<a name="example-playbook-inventory-grouphost-variables"></a>
## Example Playbook, Inventory, Group/Host Variables

This section contains an example of how to layout the playbook and inventory files. The variables used in the inventory
files are not exhaustive, see additional variables from under [Role Variables](role_variables.md) or other NetApp
This section contains an example of how to layout the playbook and inventory files. The variables used in the inventory
files are not exhaustive, see additional variables from under [Role Variables](role_variables.md) or other NetApp
E-Series Ansible Collections ([santricity](https://galaxy.ansible.com/netapp_eseries/santricity), [host](https://galaxy.ansible.com/netapp_eseries/host)).

<a name="example-beegfs-ha-playbook-file"></a>
Expand Down Expand Up @@ -101,12 +101,12 @@ This file would typically be created as `inventory.yml`:
all:
vars:
ansible_python_interpreter: /usr/bin/python3

children:
eseries_storage_systems: # BeeGFS HA E-Series storage group
hosts:
eseries_storage_system_c1:
eseries_storage_system_c2:
eseries_storage_system_c2:
eseries_storage_system_c3:

ha_cluster: # BeeGFS HA (Pacemaker) cluster group
Expand Down Expand Up @@ -147,8 +147,8 @@ Any variable supported by the netapp_eseries.santricity collection can be set in

This file would be created as `group_vars/eseries_storage_systems.yml`:

### eseries_storage_systems Ansible group inventory file.
# Place all default/common variables for NetApp E-Series Storage Systems here:
### eseries_storage_systems Ansible group inventory file.
# Place all default/common variables for NetApp E-Series Storage Systems here:
ansible_connection: local
eseries_system_password: <PASSWORD>
eseries_validate_certs: false
Expand All @@ -166,14 +166,14 @@ This file would be created as `group_vars/eseries_storage_systems.yml`:

This file would be created as `group_vars/ha_cluster.yml`:

### ha_cluster Ansible group inventory file.
### ha_cluster Ansible group inventory file.
# Place all default/common variables for BeeGFS HA cluster resources below.

### Cluster node defaults
ansible_ssh_user: root
ansible_become_password: <PASSWORD>

# If the following options are specified, then Ansible will automatically reboot nodes when necessary for changes to take effect:
# If the following options are specified, then Ansible will automatically reboot nodes when necessary for changes to take effect:
eseries_common_allow_host_reboot: true
eseries_common_reboot_test_command: "! systemctl status eseries_nvme_ib.service || systemctl --state=active,exited | grep eseries_nvme_ib.service"

Expand All @@ -185,33 +185,33 @@ This file would be created as `group_vars/ha_cluster.yml`:
resource-stickiness: 15000
cluster-ipc-limit: 5500

# The following variables should be adjusted depending on the desired configuration:
# The following variables should be adjusted depending on the desired configuration:
beegfs_ha_cluster_name: hacluster # BeeGFS HA cluster name.
beegfs_ha_cluster_username: hacluster # BeeGFS HA cluster username.
beegfs_ha_cluster_password: hapassword # BeeGFS HA cluster username's password.
beegfs_ha_cluster_password_sha512_salt: randomSalt # BeeGFS HA cluster username's password salt.
beegfs_ha_mgmtd_floating_ip: 100.127.101.0 # BeeGFS management service IP address.
beegfs_ha_alert_email_list: ["[email protected]"] # E-mail recipient list for notifications when BeeGFS HA
# resources change or fail. Often a distribution list
# resources change or fail. Often a distribution list
# for the team responsible for managing the cluster.
beegfs_ha_alert_conf_ha_group_options:
mydomain: <SEARCH_DOMAIN> # This parameter specifies the local internet domain name. This is optional when the
# cluster nodes have fully qualified hostnames (i.e. host.example.com)

### Fencing configuration:
# OPTION 1: To enable fencing using APC Power Distribution Units (PDUs):
# OPTION 1: To enable fencing using APC Power Distribution Units (PDUs):
beegfs_ha_fencing_agents:
fence_apc:
- ipaddr: <PDU_IP_ADDRESS>
login: <PDU_USERNAME>
passwd: <PDU_PASSWORD>
pcmk_host_map: "<HOSTNAME>:<PDU_PORT>,<PDU_PORT>;<HOSTNAME>:<PDU_PORT>,<PDU_PORT>"

# OPTION 2: To enable fencing using the Redfish APIs provided by the Lenovo XCC (and other BMCs):
# OPTION 2: To enable fencing using the Redfish APIs provided by the Lenovo XCC (and other BMCs):
redfish: &redfish
username: <BMC_USERNAME>
password: <BMC_PASSWORD>
ssl_insecure: 1 # If a valid SSL certificate is not available specify “1”.
ssl_insecure: 1 # If a valid SSL certificate is not available specify “1”.

beegfs_ha_fencing_agents:
fence_redfish:
Expand Down Expand Up @@ -277,7 +277,7 @@ This file would be created as `group_vars/mgmt.yml`:
- name: <STORAGE POOL> # Shared storage pools must be defined exactly the same with the exception of volumes each time.
raid_level: raid1
criteria_drive_count: 4
common_volume_configuration:
common_volume_configuration:
segment_size_kb: 128
volumes:
- size: 1
Expand Down Expand Up @@ -340,9 +340,9 @@ A file for each storage resources would be created as `group_vars/stor_<number>.
volumes: # See the performance tuning defaults section of [BeeGFS HA Defaults](../defaults/main.yml) for
# comprehensive list of options.
- size: 21.50
owning_controller: <OWNING CONTROLLER>
owning_controller: <OWNING CONTROLLER>
- size: 21.50
owning_controller: <OWNING CONTROLLER>
owning_controller: <OWNING CONTROLLER>

<a name="example-host_vars-inventory-files"></a>
### Example host_vars Inventory Files
Expand All @@ -360,14 +360,14 @@ A file for each storage systems would be created as `host_vars/<hostname>.yml` (

# Define NVMe over InfiniBand ports.
eseries_controller_nvme_ib_port:
controller_a:
controller_a:
- # Ordered list of IPv4 addresses for controller A starting with channel 1
controller_b:
- # Ordered list of IPv4 addresses for controller B starting with channel 1

# Define InfiniBand iSER ports
eseries_controller_ib_iser_port:
controller_a:
controller_a:
- # Ordered list of IPv4 addresses for controller A starting with channel 1
controller_b:
- # Ordered list of IPv4 addresses for controller B starting with channel 1
Expand Down Expand Up @@ -398,7 +398,7 @@ A file for each nodes would be created as `host_vars/<hostname>.yml` (i.e., hos
## General Notes

- All BeeGFS cluster nodes need to be available.
- Fencing agents should be used to ensure failed nodes are definitely down.
- Fencing agents should be used to ensure failed nodes are definitely down.
- WARNING: If `beegfs_ha_cluster_crm_config_options['stonith-enabled']` is set to false then fencing agent will not be configured!
- For details on configuring different fencing agents, see [Configuring Fencing in a High Availability Cluster](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_high_availability_clusters/assembly_configuring-fencing-configuring-and-managing-high-availability-clusters).
- Uninstall functionality will remove required BeeGFS 7.2 packages. This means that there will be no changes made to the kernel development/NTP/chrony packages whether they previously existed or not.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,19 +9,21 @@ supporting.

- [Support Matrix](#support-matrix)
- [Table of Contents](#table-of-contents)
- [Supported BeeGFS and Operating System](#supported-beegfs-and-operating-system)
- [Tested BeeGFS and Operating System](#tested-beegfs-and-operating-system)
- [Additional Notes](#additional-notes)
- [Supported Storage System](#supported-storage-system)
- [Additional Notes](#additional-notes-1)
- [Supported Fence Agent](#supported-fence-agent)
- [Additional Notes](#additional-notes-2)

<a name="supported-beegfs-and-operating-system"></a>
## Supported BeeGFS and Operating System
<a name="tested-beegfs-and-operating-system"></a>
## Tested BeeGFS and Operating System

| BeeGFS Component | BeeGFS Version | Operating System |
| ---------------------- |----------------|--------------------------------------------------|
| BeeGFS Server services | 7.2.6 | RedHat 8.4 (kernel 4.18.0-305.25.1.el8_4.x86_64) |
| BeeGFS Server services | 7.2.8 | RedHat 8.4 (kernel 4.18.0-305.25.1.el8_4.x86_64) |
| BeeGFS Server services | 7.3.2 | RedHat 8.4 (kernel 4.18.0-305.25.1.el8_4.x86_64) |

<a name="additional-notes"></a>
### Additional Notes
Expand Down
2 changes: 1 addition & 1 deletion roles/beegfs_ha_common/meta/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ galaxy_info:
description: Configures a highly available BeeGFS parallel file system with NetApp E-Series storage systems.
company: NetApp
license: BSD-3-Clause
min_ansible_version: 2.10
min_ansible_version: 2.13
platforms:
- name: EL
versions:
Expand Down

0 comments on commit cbd6ef0

Please sign in to comment.