InfoScale™ Operations Manager 9.0 User's Guide
- Section I. Getting started
- Introducing Arctera InfoScale Operations Manager
- Using the Management Server console
- About selecting the objects
- About searching for objects
- Examples for using Arctera InfoScale Operations Manager
- Example: Cluster Server troubleshooting using Arctera InfoScale Operations Manager
- Example: Ensuring the correct level of protection for volumes controlled by Storage Foundation
- Example: Improving the availability and the disaster recovery readiness of a service group through fire drills
- Examples: Identifying and reducing storage waste using Arctera InfoScale Operations Manager
- Section II. Managing Arctera InfoScale Operations Manager
- Managing user access
- Creating an Organization
- Modifying the name of an Organization
- Setting up fault monitoring
- Creating rules in a perspective
- Editing rules in a perspective
- Deleting rules in a perspective
- Enabling rules in a perspective
- Disabling rules in a perspective
- Suppressing faults in a perspective
- Using reports
- Running a report
- Subscribing for a report
- Sending a report through email
- Managing user access
- Section III. Managing hosts
- Overview
- Working with the uncategorized hosts
- Managing File Replicator (VFR) operations
- Managing disk groups and disks
- Creating disk groups
- Importing disk groups
- Adding disks to disk groups
- Resizing disks in disk groups
- Renaming disks in disk groups
- Splitting disk groups
- Moving disk groups
- Joining disk groups
- Initializing disks
- Replacing disks
- Recovering disks
- Bringing disks online
- Setting disk usage
- Evacuating disks
- Running or scheduling Trim
- Managing volumes
- Creating Storage Foundation volumes
- Encrypting existing volumes
- Deleting volumes
- Moving volumes
- Renaming volumes
- Adding mirrors to volumes
- Removing the mirrors of volumes
- Creating instant volume snapshots
- Creating space optimized snapshots for volumes
- Creating mirror break-off snapshots for volumes
- Dissociating snapshots
- Reattaching snapshots
- Resizing volumes
- Restoring data from the snapshots of volumes
- Refreshing the snapshot of volumes
- Configuring a schedule for volume snapshot refresh
- Adding snapshot volumes to a refresh schedule
- Removing the schedule for volume snapshot refresh
- Setting volume usage
- Enabling FastResync on volumes
- Managing file systems
- Creating file systems
- Defragmenting file systems
- Unmounting non clustered file systems from hosts
- Mounting non clustered file systems on hosts
- Unmounting clustered file systems
- Mounting clustered file systems on hosts
- Remounting file systems
- Checking file systems
- Creating file system snapshots
- Remounting file system snapshot
- Mounting file system snapshot
- Unmounting file system snapshot
- Removing file system snapshot
- Monitoring capacity of file systems
- Managing SmartIO
- About managing SmartIO
- Creating a cache
- Modifying a cache
- Creating an I/O trace log
- Analyzing an I/O trace log
- Managing application IO thresholds
- Managing replications
- Configuring Storage Foundation replications
- Pausing the replication to a Secondary
- Resuming the replication of a Secondary
- Starting replication to a Secondary
- Stopping the replication to a Secondary
- Switching a Primary
- Taking over from an original Primary
- Associating a volume
- Removing a Secondary
- Monitoring replications
- Optimizing storage utilization
- Section IV. Managing high availability and disaster recovery configurations
- Overview
- Managing clusters
- Managing service groups
- Creating service groups
- Linking service groups in a cluster
- Bringing service groups online
- Taking service groups offline
- Switching service groups
- Managing systems
- Managing resources
- Invoking a resource action
- Managing global cluster configurations
- Running fire drills
- Running the disaster recovery fire drill
- Editing a fire drill schedule
- Using recovery plans
- Managing application configuration
- Multi Site Management
- Appendix A. List of high availability operations
- Section V. Monitoring Storage Foundation HA licenses in the data center
- Managing licenses
- About Arctera licensing and pricing
- Assigning a price tier to a host manually
- Creating a license deployment policy
- Modifying a license deployment policy
- Viewing deployment information
- Managing licenses
- Monitoring performance
- About Arctera InfoScale Operations Manager performance graphs
- Managing Business Applications
- About the makeBE script
- Managing extended attributes
- Managing policy checks
- About using custom signatures for policy checks
- Managing Dynamic Multipathing paths
- Disabling the DMP paths on the initiators of a host
- Re-enabling the DMP paths
- Managing CVM clusters
- Managing Flexible Storage Sharing
- Monitoring the virtualization environment
- About discovering the VMware Infrastructure using Arctera InfoScale Operations Manager
- About the multi-pathing discovery in the VMware environment
- About discovering Solaris zones
- About discovering logical domains in Arctera InfoScale Operations Manager
- About discovering LPARs and VIOs in Arctera InfoScale Operations Manager
- About Microsoft Hyper-V virtualization discovery
- Using Web services API
- Arctera InfoScale Operations Manager command line interface
- Appendix B. Command file reference
- Appendix C. Application setup requirements
- Application setup requirements for Oracle database discovery
- Application setup requirements for Oracle Automatic Storage Management (ASM) discovery
- Application setup requirements for IBM DB2 discovery
- Application setup requirements for Sybase Adaptive Server Enterprise (ASE) discovery
- Application setup requirements for Microsoft SQL Server discovery
Examples of performing operations using XPRTLC and cURL
Following are some examples on performing operations using XPRTLC and cURL:
To get metadata for a host:
xprtlc -m POST -b "session id" -l https://domain.example.com:14161/vom/api/meta/server/host
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/meta/server/host
To define an extended attribute named department on object type cluster:
xprtlc -m POST -b "session id" -l https://domain.example.com:14161/vom/api/meta/hadr/cluster /add?name=department
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/meta/hadr/cluster /add?name=department
Adds and displays the extended attribute department for object type cluster in the Management Server console.
To modify an extended attribute named department to Dept_new on object type cluster:
xprtlc -m POST -b "session id" -l https://domain.example.com:14161/vom/api/meta/hadr/cluster /modify?name=department&new_name=Dept_new
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/meta/hadr/cluster /modify?name=department&new_name=Dept_new
To delete an extended attribute named Dept_new on object type cluster:
xprtlc -m POST -b "session id" -l https://domain.example.com:14161/vom/api/meta/hadr/cluster /delete?name=dept_new
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/meta/hadr/cluster /delete?name=dept_new
When you delete an extended attribute, it is not displayed in the Management Server console.
To update the extended attribute value for a host where the extended attribute is location:
xprtlc -m POST -b "session id" -l https://domain.example.com:14161/vom/api/update/server/host /myhost_id?location=1st floor
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/update/server/host /myhost_id?location=1st floor
To filter object disk group whose display type is private:
xprtlc -b "session id" -l https://domain.example.com:14161/vom/api/query/server/host /myhost_id/diskgroup?display_type=private
curl -g -k -b "session id" https://domain.example.com:14161/vom/api/query/server/host /myhost_id/diskgroup?display_type=private
To run a recovery plan:
xprtlc -m POST -b "session id" -l 'https://domain.example.com:14161/vom/api/op/hadr/recoveryplan/ myrplan_id/execute' -d 'payload={"Tasks": [{"task_order":"1", "IS_SKIP":false}, {"task_order":"1", "TIMEOUT":"5"}, {"task_order":"2", "IS_SKIP":false, "TIMEOUT":2}], "OfflineSharedSg":true}' -d 'reason=recovery plan execution for ticket no. 123'
curl -g -k -X POST -b "session id" -l 'https://domain.example.com:14161/vom/api/op/hadr/recoveryplan/ myrplan_id/execute' -d 'payload={"Tasks": [{"task_order":"1", "IS_SKIP":false}, {"task_order":"1","TIMEOUT":5}, {"task_order":"2", "IS_SKIP":false, "TIMEOUT":2}], "OfflineSharedSg":true}' -d 'reason=recovery plan execution for ticket no. 123'
To provision storage using a storage template
xprtlc -b "session id" -m POST -d 'payload={"HostId":"my_host_id", "DiskGroupId":"myDG_id", "VolSize":"vol_size"}' -l 'https://domain.example.com:14161/vom/api/op/server/ template/storage/storage_template_ID/provision'
curl -g -k -X POST -b "session id" -l 'https://domain.example.com:14161/vom/api/op/server/ template/storage/storage_template_ID/provision' -d 'payload={"HostId": {"my_host_id", "DiskGroupId":"myDG_id", "VolSize":"vol_size"}'
To move managed host in the Data Center.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/ op/server/{host_id}/moveto/datacenter/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/ op/server/%7B0002345-5432-4dff-0000-00000000000%7D/moveto/datacenter/
To move managed host from an Organization OE1 to child Organization OE3 of Organization OE2.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/ api/op/server/{host_id}/moveto_oe/OE2,OE3/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/ op/server/%7B0002345-5432-4dff-0000-00000000000%7D/moveto_oe/OE2,OE3/
To move cluster in the Data Center.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/ api/op/hadr/{cluster_id}/moveto/datacenter/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/ hadr/rhelclust-42058/moveto/datacenter/
To move cluster from an Organization OE1 to child Organization OE3 of Organization OE2.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/ api/op/hadr/{cluster_id}/moveto_oe/OE2,OE3/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/ hadr/rhelclust-42058/moveto_oe/OE2,OE3/
To online service group with the parameters force or propogate.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/{force}/{propogate}/online/
Example: Service group online with parameter force
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/true/false/online
Example: Service group online with parameter propogate
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/false/true/online
To offline service group with the parameters force, propogate or probe.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/{force}/{probe}/{propogate}/offline/
Example: Service group offline with parameter force
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/true/false/false/offline
Example: Service group offline operation with the parameters force and probe
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/true/true/false/offline
To switch service group.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/switch/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/switch/
To freeze service group with parameter persistent.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/{persistent}/freeze/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/ op/hadr/servicegroup/x1@linux_clus-00000/true/freeze/
Example: Freeze service group without any parameter
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/ op/hadr/servicegroup/x1@linux_clus-00000/false/freeze/
To unfreeze service group.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/unfreeze/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/ op/hadr/servicegroup/x1@linux_clus-00000/unfreeze/
To clear fault on service group.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/clear/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/clear
To clear the clearadminwait state for service group.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/{fault}/clearadminwait/
Example: Clear the clearadminwait state and the fault
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/true/clearadminwait
Example: Clear the clearadminwait state without clearing the fault
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/false/clearadminwait
To flush service group.
curl -g -k -X POST -b "session id" https://domain.example.com:14161/vom/api/op/ hadr/servicegroup/{service_group_id}/host/{hostname}/flush/
Example
curl -g -k -X POST -b "JSESSIONID=13C8F4E4203BFE96DD6D1LFC69FC7B65;" https://domain.example.com:14161/vom/api/op/hadr/servicegroup/ x1@linux_clus-00000/host/example.com/flush
To fetch the details of a managed host
1. Before you can use the
query
API to fetch the details of a managed host, identify the session ID for the secure API login by using the following command:curl -g -k -d user="userName" -d password="userPassword" -d domain="managementServerID" https://managementServerID:14161/vom/api/login
Specify the appropriate values of the username and password of the CMS.
A sample session ID value is as follows:
{"cookie":"JSESSIONID=2886C4EE175075D72C0AB91A1D9CF846;","current_server_time":"Mon Oct 26 10:57:36 GMT-12:00 2020","max_active_interval":30,"expires_at":"Mon Oct 26 11:27:36 GMT-12:00 2020"}
2. Fetch the host details by using the following command:
curl -g -k -X POST -b "sessionID" https://managementServerID.com:14161/vom/api/query/server/host/
To remove or unconfigure a managed host
Run the following command to use the API to remove or unconfigure a managed host:
curl -g -k -X POST -b "sessionID" https://managementServerID.com:14161/vom/api/op/infra/host/%7bhostID%7d/remove
Note:
The curl command does not support the use of curly brackets, { and }. Replace { with
%7b
and } with%7d
as the corresponding markup text. To be able to use this API with Google Chrome, install the RestMan addon. To be able to use this API with Mozilla FireFox, install the REStClient addon.
Where, domain.example.com is the name of your Management Server, server is the Server perspective, hadr is the Availability perspective, myhost_id is the encoded ID of the host, myDG_id is the encoded ID of the disk group, cluster_id is the encoded ID of the cluster, and myrplan_id is the recovery plan ID.
If "Ask reason for all operations" is enabled under Advanced Authorization in the Management Server perspective, then you need to provide a reason for performing the operation.
Note:
The output of the query URL for an object displays the encoded_id value. You need to use this encoded ID value to update the extended attribute for that object.
Similarly the GET request on an operation URL shows a sample URL for executing the operation.