SAN fabric registration
The SAN Fabric Registration APIs let you specify SAN fabrics and Fibre Channel switches to be managed by PowerVC, and work with those fabrics and switches.
- Options for SAN Fabric Registration APIs
- Register a SAN fabric or switch
- Remove a managed SAN fabric
- Edit a managed SAN fabric
- View all SAN fabrics that are managed
- View details of a managed fabric
- View details of all managed SAN fabrics
Options for SAN Fabric Registration APIs
Method | URI | Description |
---|---|---|
POST |
|
Registers or adds a SAN fabric. |
DELETE |
|
Unregisters or removes a managed SAN fabric. |
PUT |
|
Updates or edits a managed SAN fabric. |
GET |
|
Lists all SAN fabrics that are managed. |
GET |
|
Shows the details of a managed SAN fabric. |
GET |
|
Shows the details of all managed SAN fabrics. |
Register a SAN fabric or switch
This operation adds a SAN fabric to the list that is managed by PowerVC. This API takes configuration attributes for the zone driver in the request body as input and registers the fabric or switch with PowerVC.
For pluggable storage devices and fabrics, the IP address is not shown in the PowerVC user interface.
- Response codes
-
- Normal Response Code: OK (200)
- Error Response Codes: Bad Request (400), Server Error (500)
- Request parameters
-
Table 2. Parameters in the request for SAN fabric registration Name Style Type Description access_ip
2body
string
IP address or the host name to connect to the switch or storage controller.
user_id
2body
string
User ID for connecting to the switch or storage controller.
password
2body
string
Password for connecting to the switch or storage controller.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_type
body
string
The type of SAN fabric. Supported values are: generic,
brocade,
andcisco
.fabric_display_name
body
string
Optional: User-specified name to give to the switch. The value defaults to resolved host short name.
virtual_fabric_id
body
string
Virtual fabric ID. This property uniquely identifies the Brocade fabric. Required when registering virtual Brocade fabrics.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
zone_driver
1body
string
Python Class Name for the Cinder Zone Driver for the fabric.
zoning_policy
body
string
Zoning policy types. The following are the supported values:- 'initiator-target'
- Creates a zone with one initiator and one target.
- 'initiator'
- Creates a zone with one initiator and all of the target WWPNs for the storage provider.
- 'initiator-vfc'
- Creates a zone with the active and migration initiators, along with the targets for the storage provider.
configuration_properties
1body
object
Optional: Driver-specific properties for the configuration file. Specify additional configuration options by using the pattern
.mysection:prop_name
:prop_value
auto_add_host_key
body
Boolean
Optional value. Whether to auto-accept or add the SSH fingerprint for the system (if the fingerprint is not yet trusted or is different from the previously trusted fingerprint) or to fail with a 403 response code so that the SSH fingerprint can be verified. Default value is
True
.1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics. To specify this information, use
configuration_properties
.Example of registering a PowerVC supported fabric:{"fabric": { "registration": { "access_ip": "1.2.3.4", "user_id": "superuser", "password": "passw0rd", "fabric_display_name": "My Fabric 1" "fabric_type": "brocade" "zoning_policy": "initiator" } } }
Example of registering Brocade Virtual Fabric:{"fabric": { "registration": { "access_ip": "1.2.3.4", "user_id": "superuser", "password": "passw0rd", "fabric_display_name": "My Fabric 1", "fabric_type": "brocade", "zoning_policy": "initiator", "virtual_fabric_id": "1" } } }
Example of registering a pluggable fabric:{"fabric": { "registration": { "fabric_type": "generic", "fabric_display_name": "My Fabric 1", "zone_driver": "cinder.zonemanager. drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver", "zoning_policy": "initiator", "configuration_properties": { "fc_fabric_user": "admin", "fc_fabric_password": "passw0rd", "fc_fabric_address": "192.168.1.110", "zone_name_prefix":... } } } }
- Response body
-
Table 3. Parameters in the response for SAN fabric registration Name Style Type Description access_ip
2body
string
IP address or the host name that is used to connect to the switch.
user_id
2body
string
User ID that is used for connecting to the switch.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_type
body string Required: The type of SAN fabric. Supported values are: generic,
brocade,
andcisco
.fabric_display_name
body
string
User-specified name given to the switch.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
fabric_name
body
string
Internally generated unique name of the registered fabric.
zone_driver
1body
string
Required: Python Class Name for the Cinder Zone Driver for the fabric.
zoning_policy
body
string
Zoning policy types. Supported values are 'initiator-target' and 'initiator'.
registered_at
body
string
The date and time that the SAN fabric was registered with PowerVC.
auto_add_host_key
body
Boolean
Optional value. Whether to auto-accept or add the SSH fingerprint for the system (if the fingerprint is not yet trusted or is different from the previously trusted fingerprint) or to fail with a 403 response code so that the SSH fingerprint can be verified. Default value is
True
.1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics.
Example response when registering a PowerVC supported fabric:{"fabric": { "registration": { "access_ip": "1.2.3.4", "user_id": "superuser", "fabric_name": "A", "fabric_display_name": "My Fabric 1" "fabric_type": "brocade" "zoning_policy": "initiator" } } }
Example response when registering a pluggable fabric:{"host": { "registration": { "fabric_type": "generic", "fabric_display_name": "My Fabric 1", "fabric_name": "A", "zone_driver": "cinder.zonemanager.drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver", "registered_at": "2013-10-19T16:06:53Z" "zoning_policy": "initiator" } } }
Remove a managed SAN fabric
This operation unregisters a managed SAN fabric so that it is no longer managed by PowerVC. This API takes the fabric name in the URI as input and takes no request body. The API does not return any response body.
- Response codes
-
- Normal Response Code: No Content (204)
- Error Response Codes: Bad Request (400), Not Found (404), Server Error (500)
Edit a managed SAN fabric
This operation updates the registration information for a SAN fabric that is managed by PowerVC. This API takes the name of the fabric for which you want to change the attributes in the URI and the attributes that you want to change in the body as input. The response body contains the attributes that are updated by the request.
- Response codes
-
- Normal Response Code: OK (200)
- Error Response Codes: Bad Request (400), Not Found (404), Server Error (500)
- Request parameters
-
Table 4. Parameters in the request for updating a managed SAN fabric Name Style Type Description access_ip
2body
string
IP address or the host name to connect to the switch.
user_id
2body
string
User ID for connecting to the switch.
password
2body
string
Password for connecting to the switch.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_display_name
body
string
User-specified name to give to the switch. The value defaults to resolved host short name.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
configuration_properties
1body
object
Driver-specific properties for the configuration file. Specify additional configuration options by using the pattern
.mysection:prop_name
:prop_value
auto_add_host_key
body
Boolean
Optional value. Whether to auto-accept or add the SSH fingerprint for the system (if the fingerprint is not yet trusted or is different from the previously trusted fingerprint) or to fail with a 403 response code so that the SSH fingerprint can be verified. Default value is
True
.1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics. To specify this information, use
configuration_properties
.All the attributes in the request body are optional. You can update all the attributes or any one of the attributes. Example of updating a PowerVC supported fabric:{"registration": { "access_ip": "1.2.3.4", "user_id": "superuser", "password": "passw0rd", "fabric_display_name": "My Fabric 1" } }
Example of updating a pluggable fabric:{ "registration": { "fabric_display_name": "My Fabric 1", "configuration_properties": { "fc_fabric_user": "admin", "fc_fabric_password": "passw0rd" } } }
- Response body
-
Table 5. Parameters in the response for updating a managed SAN fabric Name Style Type Description access_ip
2body
string
IP address or the host name that is used to connect to the switch.
user_id
2body
string
User ID that is used for connecting to the switch.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_display_name
body
string
User-specified name given to the switch.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
fabric_name
body
string
Internally generated unique name of the registered fabric.
auto_add_host_key
body
Boolean
Optional value. Whether to auto-accept or add the SSH fingerprint for the system (if the fingerprint is not yet trusted or is different from the previously trusted fingerprint) or to fail with a 403 response code so that the SSH fingerprint can be verified. Default value is
True
.1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics.
Example response when updating a PowerVC supported fabric:{"fabric": "A", "registration": { "access_ip": "1.2.3.4", "user_id": "superuser", "fabric_display_name": "My Fabric 1" } }
Example response when updating a pluggable fabric:{"host": { "registration": { "fabric_display_name": "My Fabric 1", } } }
View all SAN fabrics that are managed
This operation lists the basic information about all of the SAN fabrics that are managed by PowerVC. This API takes no input in the request body and returns the name and display name of each fabric that is managed by PowerVC in the response body.
- Response codes
-
- Normal Response Code: OK (200)
- Error Response Codes: Server Error (500)
- Response body
-
Table 6. Parameters in the response body for viewing all the managed SAN fabrics Name Style Type Description fabric_name
body
string
Internally generated unique name of the registered fabric.
{"fabrics": [ {"fabric_name": "A", "fabric_display_name": "My Fabric 1"}, {"fabric_name": "B", "fabric_display_name": "My Fabric 2"}, ....] }
View details of a managed fabric
This operation shows detailed information about one of the fabrics that is managed by PowerVC. This API takes the fabric name in the URI as input and contains no request body. The API returns the IP address and credential information of the fabric in the response body.
- Response codes
-
- Normal Response Code: OK (200)
- Error Response Codes: Not Found (404), Server Error (500)
- Response body
-
Table 7. Parameters in the response for viewing details of a managed fabric Name Style Type Description access_ip
2body
string
IP address or the host name that is used to connect to the switch.
user_id
2body
string
User ID that is used for connecting to the switch.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_type
body
string
Required: The type of SAN fabric. The only supported value is generic
fabric_display_name
body
string
User-specified name given to the switch.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
fabric_name
2body
string
Internally generated unique name of the registered fabric.
zone_driver
1body
string
Required: Python Class Name for the Cinder Zone Driver for the fabric.
registered_at
body
string
The date and time that the SAN fabric was registered with PowerVC.
1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics.
Example response when viewing the details of a managed SAN fabric (PowerVC supported):{"fabric": { "registration": { "fabric_name": "A", "fabric_display_name": "My Fabric 1", "access_ip": "1.2.3.4", "user_id": "superuser" "fabric_type": "brocade" } } }
Example response when viewing the details of a managed fabric (pluggable):{"host": { "registration": { "fabric_type": "generic", "fabric_display_name": "My Fabric 1", "zone_driver": "cinder.zonemanager. drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver", "registered_at": "2013-10-19T16:06:53Z" } } }
View details of all managed SAN fabrics
This operation shows detailed information about all the fabrics that are managed by PowerVC. This API takes no input in the request body and returns the IP address and credentials information about the fabrics in the response body.
- Response codes
-
- Normal Response Code: OK (200)
- Error Response Codes: Server Error (500)
- Response body
-
Table 8. Parameters in the response body for viewing details of all managed fabrics Name Style Type Description access_ip
2body
string
IP address or the host name that is used to connect to the switch.
user_id
2body
string
User ID that is used for connecting to the switch.
port
body
string
Optional (For Cisco switches only): The SSH port used to connect to a Cisco switch. By default, the value is 22.
fabric_type
body string Required: The type of SAN fabric. The only supported value is generic
fabric_display_name
body
string
User-specified name given to the switch.
vsan
body
string
For Cisco switches only: The virtual SAN to be used.
fabric_name
2body
string
Internally generated unique name of the registered fabric.
registered_at
body
string
The date and time that the SAN fabric was registered with PowerVC.
zone_driver
1body
string
Required: Python Class Name for the Cinder Zone Driver for the fabric.
zoning_policy
body
string
Zoning policy types.
1: Used for pluggable fabrics only. 2: Not used for pluggable fabrics.
Example response when viewing details of all managed SAN fabrics (PowerVC supported):{"fabrics": [ { "registration": { "fabric_name": "A", "fabric_display_name": "My Fabric 1", "access_ip": "1.2.3.4", "user_id": "superuser" "fabric_type": "brocade" } { "registration": { "fabric_name": "B",...] }
Example response when viewing details of all managed fabrics (pluggable):{"host": { "registration": { "fabric_type": "generic", "fabric_display_name": "My Fabric 1", "zone_driver": "cinder.zonemanager. drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver", "registered_at": "2013-10-19T16:06:53Z" } } }