sandeeplocharla opened a new pull request, #12563:
URL: https://github.com/apache/cloudstack/pull/12563

   …ary StoragePool with ONTAP storage
   
   Co-authored-by: Rajiv Jain <[email protected]>
   
   ### Description
   # NetApp ONTAP Storage Plugin - Design Specification
   
   ## Introduction
   
   This document describes in brief the design and implementation of the NetApp 
ONTAP storage plugin for Apache CloudStack. The plugin enables CloudStack to 
use NetApp ONTAP as a primary storage provider.
   
   ## ONTAP Terminology
   
   | Term | Description |
   |------|-------------|
   | SVM | Storage Virtual Machine - a logical storage container that provides 
data access to clients |
   | FlexVolume | A logical volume that can grow or shrink within an aggregate |
   | Aggregate | A collection of physical disks that provides storage for 
volumes |
   | LIF | Logical Interface - a network interface for client access 
(Management LIF for admin, Data LIF for storage traffic) |
   | iGroup | Initiator Group - a collection of host initiator IQNs used for 
iSCSI access control |
   | Export Policy | A set of rules that define NFS client access to volumes |
   
   ## Scope
   
   ### Current Implementation
   
   The following operations are currently implemented:
   
   | Operation | Description |
   |-----------|-------------|
   | Create Primary Storage Pool | Creates a FlexVolume on ONTAP and registers 
it as a primary storage pool in CloudStack |
   | Delete Primary Storage Pool | Removes the storage pool from CloudStack and 
deletes the FlexVolume from ONTAP |
   | Attach Cluster/Zone | Creates access groups (iGroups for iSCSI, export 
policies for NFS) and connects hosts |
   | Enable/Disable Storage Pool | Enables or disables the storage pool for use 
|
   | Enter/Cancel Maintenance | Places storage pool in maintenance mode or 
brings it back online |
   
   ### Supported Configurations
   
   | Configuration | Supported Values |
   |---------------|------------------|
   | Hypervisor | KVM |
   | ONTAP Platform | Unified |
   | Protocols | NFS 3.0, iSCSI |
   | Storage Pool Scope | Cluster, Zone |
   
   ## Storage Pool Lifecycle
   
   ### Create Storage Pool
   
   1. Validate input parameters (SVM, protocol, credentials)
   2. Connect to ONTAP and verify SVM state and protocol enablement
   3. Create FlexVolume on ONTAP
   4. Register storage pool in CloudStack
   
   ### Attach to Cluster/Zone
   
   1. Identify eligible hosts in the scope
   2. Create access group (iGroup or export policy)
   3. Connect each host to the storage pool
   
   ### Delete Storage Pool
   
   1. Delete access groups from ONTAP
   2. Delete FlexVolume from ONTAP
   3. Remove storage pool from CloudStack
   
   ## Configuration Parameters
   
   Parameters are passed via URL in semicolon-separated key=value format:
   
   | Parameter | Description                  |
   |-----------|------------------------------|
   | `username` | ONTAP admin username         |
   | `password` | ONTAP admin password         |
   | `managementLIF` | ONTAP cluster management IP  |
   | `svmName` | Storage Virtual Machine name |
   | `protocol` | `NFS3` or `ISCSI`            |
   | `isDisaggregated` | Must be `false` for now      |
   
   
   <!--- 
******************************************************************************* 
-->
   <!--- NOTE: AUTOMATION USES THE DESCRIPTIONS TO SET LABELS AND PRODUCE 
DOCUMENTATION. -->
   <!--- PLEASE PUT AN 'X' in only **ONE** box -->
   <!--- 
******************************************************************************* 
-->
   
   ### Types of changes
   
   - [ ] Breaking change (fix or feature that would cause existing 
functionality to change)
   - [X] New feature (non-breaking change which adds functionality)
   - [ ] Bug fix (non-breaking change which fixes an issue)
   - [ ] Enhancement (improves an existing feature and functionality)
   - [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
   - [ ] Build/CI
   - [ ] Test (unit or integration test code)
   
   ### Feature/Enhancement Scale or Bug Severity
   
   #### Feature/Enhancement Scale
   
   - [X] Major
   - [ ] Minor
   
   #### Bug Severity
   
   - [ ] BLOCKER
   - [ ] Critical
   - [X] Major
   - [ ] Minor
   - [ ] Trivial
   
   ### How Has This Been Tested?
   
   1. **Management Server Operations:**
       - Added a new zone using the Management server UI.
       - Verified functionality of core and advanced zone types.
   
   2. **Primary Storage Pool Operations:**
       - **Create:** Verified creation of primary storage pool.
       - **Delete:** Verified deletion of primary storage pool.
       - **Enable/Disable:** Tested enabling and disabling the storage pool.
       - **Maintenance Mode:** Verified entering and exiting maintenance mode.
       - **Cancel Maintenance:** Ensured maintenance cancellation works.
   
   #### Testing Environment:
   - The test setup was conducted on an Ubuntu VM with the following components 
installed and configured:
       - Management server
       - Cloudstack agent and KVM
       - NFS server
       - iSCSI initiator
   - Testing has been done currently with a single host.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to