Everyone likes to talk about automation.
One feels a great sense of accomplishment when you can breakdown a set of distinct manual tasks and create a macro task. You can even get extra bonus points if you can delegate the macro task to the individual(s) who rely on the outcome to create value for their business.
Did I mention that the macro task needs to be secure, safe and reliable too? What about auditing, reporting and the elusive idempotent pattern of running the task? An idempotent element describes something that can be operated on multiple times, and will always yield the same result. That’s why we see verbs like “present” and “absent” describe a desired state of an element. If an operator wants an element “present”, the operator really won’t care if the element is there already – or needs to be created. The idempotent behavior of the system should figure it out for the operator.
Infrastructure-as-Code
The norm of change
In the ever-changing paradigm of infrastructure management, it’s becoming inevitably more important to keep track of changes. As most respectable automation systems today leverage human-readable data serialization formats such as YAML or JSON, using industry standard source control management (SCM), such as Git, is becoming more prominent.
These principles are often referred to as infrastructure-as-code, and allow changes to any system under management to be peer-reviewed and approved before the configuration is applied. It’s the ultimate compromise to allow developers and application owners control their own destiny – but not without operations having the final say, approval, and ultimately taking responsibility for the change. Simply put, a clean cut separation of concerns between business needs is needed while de-risking manual and error-prone system configurations.
Partnership enables customers to deploy and manage their own Storage estate
HPE Nimble Storage Content Collection for Ansbile
Ansible is an idempotent IT automation platform where Hewlett Packard Enterprise today introduces the HPE Nimble Storage Content Collection for Ansible. A content collection is a set of modules for Ansible that manipulates resources on a Nimble array. Red Hat Ansible Tower is a commercial offering which enables enterprises to delegate the most daunting IT management tasks to their workforce, which in turn offload IT staff to work on more valuable projects for their respective businesses. The HPE Nimble Storage Content Collection for Ansible is a fully certified solution for Red Hat Ansible Tower, and the joint partnership allows customers to confidently deploy and manage their HPE Nimble Storage estate with Ansible Tower. The content collection is also available for the Open Source version of Ansible, and is also supported by HPE.
Capabilities available immediately
For the initial release of the content collection, the scope of tasks are limited to the most common daily runtime operations of a HPE Nimble Storage array, such as provisioning and managing volumes, snapshots and clones. Tasks also include managing other aspects of the array, such as users, performance policies, hardware and network configuration.
Module | Description |
hpe_nimble_access_control_record | Manage arrays |
hpe_nimble_array | Manage iSCSI CHAP users |
hpe_nimble_chap_user | Manage disks and media |
hpe_nimble_disk | Manage encryption settings |
hpe_nimble_encryption | Manage fibre channel configuration |
hpe_nimble_fc | Manage the array group |
hpe_nimble_group | Query and collect information of any resource from an array |
hpe_nimble_info | Manage initiator groups |
hpe_nimble_initiator_group | Manage network configuration |
hpe_nimble_network | Manage replication partners |
hpe_nimble_partner | Manage performance policies |
hpe_nimble_performance_policy | Manage storage pools |
hpe_nimble_pool | Manage protection schedules |
hpe_nimble_protection_schedule | Manage protection templates |
hpe_nimble_protection_template | Manage shelves |
hpe_nimble_shelf | Manage snapshot collections |
hpe_nimble_snapshot_collection | Manage volume snapshots |
hpe_nimble_snapshot | Manage volume snapshots |
hpe_nimble_user | Manage array users |
hpe_nimble_user_policy | Manage array user policies |
hpe_nimble_volume | Manage volumes |
hpe_nimble_volume_collection | Manage volume collections |
List of modules provided in the content collection.
We can expect the HPE Nimble Storage Content Collection for Ansible to become as comprehensive as the HPE Nimble Storage SDK for Python, which ultimately relies on the feature-rich REST API of the array and support for upcoming NimbleOS releases.
Supported environments
Since Ansible Content Collections are a relatively new concept in Ansible, only later versions of Ansible are supported.
Minimum Ansible host requirements for HPE Nimble Storage Content Collection for Ansible version 1.0.0:
- Ansible 2.9 or later
- Python 3.6 or later
- HPE Nimble Storage SDK for Python
NimbleOS 5.0.10 or later is required on the arrays being managed by Ansible.
What are my next steps?
The HPE Nimble Storage Content Collection for Ansible is available immediately, either through Ansible Galaxy or Red Hat Automation Hub.
- Rate and follow the content collection on Ansible Galaxy
- Access the documentation on Ansible Automation Hub (Red Hat Ansible customers only) or through the content collection GitHub Pages
- Source code and issue tracking available on GitHub
- Introductory tutorial available on HPE Developer Community blog
- Sign up to the HPE DEV Slack community and meet the team, we’re in #NimbleStorage
Your feedback is always most welcome, and all channels are open. The team is eager to hear about your use cases and success stories as you move your business towards “automate all the things”.
Watch this space for further updates