|
APIs in Category: host-service |
API version 5.0 |
host-service-authorize |
Host Service is a component that runs either on a VMware VCenter server (or a host that has connectivity to it) or Microsoft Hyper-V parent partition. |
| host-service-authorize | [top] |
Authorize a newly registered Host Service. Authorizing a Host Service will allow Host Service to start communicating with DataFabric Manager server, until then Host Service will not be operational. On successful authorization a baseline discovery job is initiated on the Host Service to discover the virtual server inventory information managed by Host Service.
This API requires DFM.HostService.Authorize capability on the Host Service or at global level.
Input Name Range Type Description host-service-name-or-id obj-name-or-id
FQDN or IP address or Object Identifier of the Host Service. run-discovery boolean
optional
After authorization if discovery should be started for the HS. Default value is true. Output Name Range Type Description job-id integer
optional
Identifier of the of job created to discover the virtual inventory information managed by the Host Service. The job-id will be returned only if run-discovery is true. Range: [1..2^31-1]
Errno Description EINTERNALERROR EHS_ALREADY_AUTHORIZED EACCESSDENIED EDATABASEERROR
| host-service-configure | [top] |
Configure options in Host Service registry. Options include storage system and VCenter server credentials and DataFabric Manager server endpoints for communication.
Input Name Range Type Description dfm-server-ip-address string
optional
IP address of DataFabric Manager Server machine that the Host Service should use for communication, useful in scenarios where DataFabric Manager Server host is configured with multiple IP addresses. If not specified, all the AF_INET interfaces on the machine are enumerated and the first valid address is used. host-service-name-or-id obj-name-or-id
Name or Id of Host Service registered with DataFabric Manager service on which the configuration needs to be performed. storage-systems-configuration storage-system-configuration[]
optional
Configuration settings for storage systems that needs to be set on the host service. vcenter-ip-address string
optional
IP address of the VCenter server host. If not specified, it is assumed that VCenter and Host Service are located on the same host and IP address of the Host Service is used. vcenter-password string
optional
VCenter user password, this is required by SMVI plugin to communicate with VCenter Server. This field is applicable only if the Host Service has SMVI plugin. vcenter-username string
optional
VCenter user name, this is required by SMVI plugin to communicate with VCenter Server. This field is applicable only if the Host Service has SMVI plugin. Output Name Range Type Description job-id integer
Id of job created to configure host service. Range: [1..2^31-1]
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR
| host-service-discover | [top] |
Start a discovery job on the Host Service. This will refresh the virtual inventory information cached in the DataFabric Manager database.
Input Name Range Type Description host-service-name-or-id obj-name-or-id
FQDN or IP address or Object Identifier of the Host Service. resource-name-or-id obj-name-or-id
optional
If specified, the discovery operation is performed in the context of specified virtual infrastructure object i.e only the attributes of the resource and its relationship with other virtual infrastructure objects are fetched from the Host Service and updated. For example if the resource-name-or-id is set to a specific hypervisor, then only the information associated with the hypervisor and objects under it like the virtual machines hosted on it is retrieved and updated. Refer to resource-type typedef description for the list of virtual object types. resource-type string
optional
This field is used to specify the type of the virtual infrastructure object specified in resource-name-or-id. This can be used to eliminate ambiguity in case there is a clash in the object name across different virtual infrastructure object types. track-progress boolean
optional
If 'true', then a job-id is returned to track progress of discovery operation, useful when the discovery operation is initiated by a user. This field is set to false when invoked by Host Service when performing discovery in the background. Default value: true Output Name Range Type Description job-id integer
optional
Id of job created to discover resources, returned only if track-progress is 'true'. Range: [1..2^31-1]
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR EACCESSDENIED
| host-service-list-info-iter-end | [top] |
Ends iteration to list registered Host Services
Input Name Range Type Description tag string
Tag from a previous host-service-list-info-iter-start.
Errno Description EINVALIDTAG
| host-service-list-info-iter-next | [top] |
Get the specified Host Service records after the call to host-service-list-info-iter-start.
Input Name Range Type Description maximum integer
Maximum number of records to be received. Range: [1..2^31-1] tag string
Tag from a previous host-service-list-info--start Output Name Range Type Description host-services host-service-info[]
List of host services records integer
The number of records actually returned. Range: [1..2^31-1]
Errno Description EDATABASEERROR EINTERNALERROR EACCESSDENIED
| host-service-list-info-iter-start | [top] |
Start iteration to list Host Services registered with DataFabric Manager.
Input Name Range Type Description include-deleted boolean
validate
optional
If present and true, Host Services marked as deleted in the database are also returned. A Host Service is marked as deleted when it is un-registered from DataFabric Manager. Default value : false. obj-name-or-id obj-name-or-id
optional
Name or Identifier of the object for which the host services need to be listed. The allowed object types for this arguement are:
- Resource Group
- Host Service
Output Name Range Type Description records integer
Number of records available in the list. Range: [1..2^31-1] tag string
Tag to be used for subsequent iteration calls.
Errno Description EDATABASEERROR EINTERNALERROR EACCESSDENIED
| host-service-modify | [top] |
Set host service specific options in DataFabric Manager database.
Input Name Range Type Description access-protocol string
optional
Communication protocol used to access the Host Service. Possible values : 'http', 'https' admin-port integer
optional
Port number that administrative services of Host Service are bound to. Range: [1..2^31-1] host-service-name-or-id obj-name-or-id
Name or Identifier of Host Service. ip-address ip-address
optional
IP address used to access Host Service. mgmt-port integer
optional
Port number that management services of Host Service are bound to. Range: [1..2^31-1] update-service-port integer
optional
Port number that update service is bound to. Range: [1..2^31-1]
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR EOBJECTNOTFOUND
| host-service-package-delete | [top] |
Delete a host service package from DataFabric Manager.
Input Name Range Type Description package-name-or-id obj-name-or-id
Name or id of the package.
Errno Description EDATABASEERROR EINTERNALERROR EACCESSDENIED
| host-service-package-list | [top] |
List host service packages in DataFabric Manager.
Input Name Range Type Description package-name-or-id obj-name-or-id
optional
Name or id of the package. Output Name Range Type Description host-service-packages host-service-package-info[]
List of host service packages in DataFabric Manager.
Errno Description EDATABASEERROR EINTERNALERROR EACCESSDENIED
| host-service-register | [top] |
Register a new Host Service with DataFabric Manager Server. Newly deployed Host Services need to be registered and authorized in DataFabric Manager Server, this enables management of virtual server infrastructure hosted on Data ONTAP systems using service catalogs. The registration process retrieves the SSL certificate presented by the Host Service, and sets the Host Service status to "Pending Authorization" state. On confirming the validity of the certificate host-service-authorize API must be invoked to make the Host Service operational.
Input Name Range Type Description admin-port integer
optional
Admin port configured for the Host Service. DataFabric Manager tries to establish SSL connection on this port to fetch the Host Service SSL certificate. Default value : 8699 dfm-server-ip-address ip-address
optional
IP address of the DataFabric Manager Server host. The Host Service will communicate with Datafabric Manager Server over this IP Address. mgmt-port integer
optional
Management port of the host service agent. Default value : 8799 name-or-ip-address string
FQDN or the IP address of the Host Service machine. suppress-registered-error boolean
optional
If set to true, the EOBJECTEXISTS error condition is suppressed and identifier assigned to existing Host Service is returned in host-service-id element. Default value : false. Output Name Range Type Description host-service-id obj-id
Object identifier assigned to the registered host service. is-authorized boolean
If host service is authorized to access DataFabric Manager services, this will be true. is-hyperv-cluster-host-service boolean
true, if the host service manages the virtual machines in Hyper-V cluster.
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR EOBJECTEXISTS EHOSTADDNOTRESOLVED EHS_REGISTER_ERROR
| host-service-storage-system-list-info-iter-end | [top] |
Ends iteration to list storage system for a host service agent.
Input Name Range Type Description tag string
Tag from a previous host-service-storage-system-list-info-iter-start.
Errno Description EINVALIDTAG
| host-service-storage-system-list-info-iter-next | [top] |
Get list of storage systems after the call to host-service-storage-system-list-info-iter-start.
Input Name Range Type Description maximum integer
The index of the last record to be received Range: [1..2^31-1] tag string
Tag from a previous call to host-service-storage-system-list-info-iter-start Output Name Range Type Description records integer
The number of records actually returned. Range: [1..2^31-1] storage-systems storage-system-info[]
List of storage systems that are present in the given host service's configuration.
Errno Description EDATABASEERROR EINTERNALERROR EACCESSDENIED
| host-service-storage-system-list-info-iter-start | [top] |
List storage systems configured in the Host Service registry.
Input Name Range Type Description host-service-name-or-id obj-name-or-id
Name or Id of the Host Service registered with DataFabric Manager service. Output Name Range Type Description records integer
Number of records available in the list Range: [1..2^31-1] tag string
Tag to be used for subsequent iteration calls.
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR
| host-service-unregister | [top] |
Un-Register a Host Service from DataFabric Manager Server. All the Virtual Server inventory objects will will be marked as deleted once the Host Service is unregistered. The API will fail (with EHS_UNREGISTER_ERROR) in case a Virtual Machine or Datastore (in VMware case) managed by the host service is a member of a dataset.
Input Name Range Type Description force boolean
optional
If true, the operation will proceed even if there are datasets configured with virtual machines managed by the host service. After un-registration the virtual machines will not show up as dataset members. The host service can be registered back with host-service-register API, the virtual machines would then show up again as dataset members. Default value is false. host-service-name-or-id obj-name-or-id
Name or Object Id or IP address of the Host Service.
Errno Description EINTERNALERROR EDATABASEERROR EINVALIDINPUTERROR EHS_UNREGISTER_ERROR
| Element definition: host-service-info | [top] |
Information about a host service.
Name Range Type Description admin-port integer
Admin port of the Host Service. Range: [1..2^31-1] deleted-by string
The user who deleted the Host Service. deleted-timestamp integer
The time and date when the Host Service was deleted. Range: [1..2^64-1] host-service-id obj-id
Object Identifier of the Host Service. host-service-ip-address string
IP address of the host where Host Service is installed host-service-name string
FQDN address of the host where Host Service is installed host-service-plugins host-service-plugin-info[]
plugins information configured on the host service host-service-status string
Status of the Host Service. Valid values are : 'up', 'down' and 'unknown'. host-service-version string
host service version is-authorized boolean
Indicates if host service registration authorized. false value indicates that the host service is registered but not yet authorized by the Dafabric Manager administrator. All the operations on host service like dicovery, configuration, backup and restore of virtual machine data are not allowed until the host service is authorized. last-discovery-status string
Status of the last discovery operation performed on the Host Service. Valid values are : 'unknown','failed', and 'ok' mgmt-port integer
Management port of the Host Service. Range: [1..2^31-1] needs-upgrade string
Valid values are : 'unknown', 'yes','no', and 'running' 'yes' if a new version of Host Service package is registered with DataFabric Manager server and the current version of the Host Service is older than the newly registered Host Service package.
'unknown': if the upgrade required status can not be determined 'no': if there are no later packages added to DFM 'running' : if an upgrade is already in progresstimezone-info timezone-info
Timezone of the host, where the Host Service is installed. Returns an empty string, if Host Service does not return valid timezone. Currently valid time zones can be listed by timezone-list-info-iter. update-service-port integer
Port number on which update service is running. Range: [1..2^31-1] update-service-version string
Version of the update service.
| Element definition: host-service-package-info | [top] |
Information about host service package.
Name Range Type Description package-id integer
Object Id of host service package. package-name string
Name of the host service package. package-version string
Version of the package.
| Element definition: ip-address | [top] |
IP address in string format. The length of this string cannot be more than 40 characters.
[none]
| Element definition: obj-id | [top] |
Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed to be 0, which is interpreted as a null value, e.g., a reference to no object at all. The ID for a DFM object is always assigned by the system; the user is never allowed to assign an ID to an object. Therefore, an input element of type obj-id is always used to refer to an existing object by its ID. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.
If the value of an obj-id input element does not match the ID of any existing DFM object of the specified type or types, then typically the ZAPI fails with error code EOBJECTNOTFOUND. A ZAPI may deviate from this general rule, for example, it may return a more specific error code. In either case, the ZAPI specification must document its behavior.
[none]
| Element definition: obj-name-or-id | [top] |
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI type string. An obj-name-or-id must contain between 1 and 64 characters, and must conform to one of the following formats: Elements of type obj-name-or-id are used only as inputs to ZAPIs. The value must match either the name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.
- It must have the format of an obj-name, or
- It must be the decimal numeric string form of a positive integer whose value is in the range [1..2^31 - 1].
- In case of application resources from the Host Service, this field can contain unique identifier assigned to the object by the Host Service e.g. for a Virtual Machine, it can be a GUID of the VM. One exception is when such unique identifier is a decimal numeric string containing only digits from 0 through 9. In that case, you cannot use such identifier as obj-name-or-id input.
If the format of an obj-name-or-id input element does not conform, or the value does not match the name or ID of an existing object, then generally the ZAPI documents that it fails with error code EOBJECTNOTFOUND. A ZAPI may return more specific error codes. In such cases, the ZAPI specification must document its behavior.
If a ZAPI can accept a null value (e.g. reference to no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null value.
[none]
| Element definition: storage-system-configuration | [top] |
storage system configuration.
Name Range Type Description login-protocol string
optional
Protocol that host service needs to use when calling ONTAP APIs on the storage systems. Value values are 'http', 'https' and 'rpc'. If not specified, Default is 'https'. push-credentials boolean
Push credentials stored in DataFabric Manager database to the host service. storage-system-name-or-id obj-name-or-id
Name or Id of the storage system.
| Element definition: storage-system-info | [top] |
Information about a storage system.
Name Range Type Description access-protocol string
optional
Protocol used by host service to communicate with the storage system. Valid values are : http, https, rpc login-status-from-dfm string
optional
Indicates if DFM has the valid credentials for storage system. Possible values are : 'good', 'bad', 'unknown'. login-status-from-hs string
optional
Indicates if host service has the valid credentials for storage system. Possible values are : 'good', 'bad', 'unknown'. ndmp-cred-status-from-dfm string
optional
Indicates if DFM has the valid NDMP credential for storage system. Possible values are : 'good', 'bad', 'unknown'. ndmp-username string
optional
ndmp username. storage-system-id obj-id
Object Identifier of the storage system in DataFabric Manager. storage-system-ip-address string
optional
IP address of the storage system. storage-system-name obj-name
optional
Name of the storage system. storage-system-status string
optional
Status of storage system. Possbile valus are 'up', 'down', 'unknown'. storage-system-type string
optional
storage system type. Possbile valus are 'filer', 'vfiler', 'unknown'. storage-system-username string
optional
login name in case of 'filer'.
| Element definition: host-service-plugin-info | [top] |
Name Range Type Description plugin-type string
Type of Host Service plugin. plugin-version string
Version of the Host Service plugin.
| Element definition: obj-id | [top] |
Identification number (ID) for a DFM object. This typedef is an alias for the builtin ZAPI type integer. Object IDs are unsigned integers in the range [1..2^31 - 1]. In some contexts, an object ID is also allowed to be 0, which is interpreted as a null value, e.g., a reference to no object at all. The ID for a DFM object is always assigned by the system; the user is never allowed to assign an ID to an object. Therefore, an input element of type obj-id is always used to refer to an existing object by its ID. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.
If the value of an obj-id input element does not match the ID of any existing DFM object of the specified type or types, then typically the ZAPI fails with error code EOBJECTNOTFOUND. A ZAPI may deviate from this general rule, for example, it may return a more specific error code. In either case, the ZAPI specification must document its behavior.
[none]
| Element definition: obj-name | [top] |
Name of a DFM object. This typedef is an alias for the built in ZAPI type string. An object name must conform to the following format: The behavior of a ZAPI when it encounters an error involving an obj-name input element depends on how the ZAPI uses the input element. Here are the general rules:
- It must contain between 1 and 64 characters.
- It may start with any character and may contain any combination of characters, except that it may not consist solely of decimal digits ('0' through '9').
- In some contexts, a name may be the empty string (""), which is interpreted as a null value, e.g., a reference to no object at all.
A ZAPI may deviate from these general rules, for example, it may return more specific error codes. In such cases, the ZAPI specification must document its behavior.
- If the input name element is used to create a new object with the given name, or rename an existing object to that name, and the name does not conform to the above format, then the ZAPI fails with error code EINVALIDINPUTERROR. Note that because EINVALIDINPUTERROR is such a common error code, ZAPI specifications are not required to document cases when they may return it.
- If the input name element is used to refer to an existing object with that name, and there is no object with that name, then the ZAPI fails with error code EOBJECTNOTFOUND. Generally the ZAPI specification documents cases when it may return this error code.
If an input name element is used to refer to an existing object, then the ZAPI specification must specify which DFM object type (e.g. data set, host, DP policy, etc.) is allowed. Some ZAPIs allow the object to be one of several different types. See the description of obj-full-name for examples of valid input formats.
Note that there is no requirement that all object names must be unique. However, the names for some specific types of objects are constrained such that no two objects of that type may have the same name. For example, this constraint applies to datasets, DP schedules, and DP policies. This means that no two datasets may have the same name, but a dataset may have the same name as a DP schedule or DP policy.
In general, object names are compared in a case-insensitive manner. This means that, for example, "MyObject" and "MYOBJECT" are considered to be the same name for purposes of: creating new objects, renaming existing objects, or looking up an object by name. On the other hand, ZAPIs that return an obj-name generally do not change the capitalization at all. For example, if an object's name has been set to "MyObject", then list iteration ZAPIs that return the object's name return it as "MyObject" rather than "MYOBJECT" or "myobject".
ZAPIs that operate on obj-name values and do not follow these general rules about case sensitivity must document the rules that they do follow.
One important exception to these general rules is that volumes, qtrees, OSSV directories, SRM paths, interfaces, FCP targets and FC switch ports all have case-sensitive names. When looking up objects of these types by name, the case must match the object name.
[none]
| Element definition: obj-name-or-id | [top] |
Name or internal ID of a DFM object. This typedef is an alias for the builtin ZAPI type string. An obj-name-or-id must contain between 1 and 64 characters, and must conform to one of the following formats: Elements of type obj-name-or-id are used only as inputs to ZAPIs. The value must match either the name or internal ID of an existing DFM object. The ZAPI must specify the object's DFM object type (e.g. dataset, host, DP policy, etc.). Some ZAPIs allow the object to be one of several different types.
- It must have the format of an obj-name, or
- It must be the decimal numeric string form of a positive integer whose value is in the range [1..2^31 - 1].
- In case of application resources from the Host Service, this field can contain unique identifier assigned to the object by the Host Service e.g. for a Virtual Machine, it can be a GUID of the VM. One exception is when such unique identifier is a decimal numeric string containing only digits from 0 through 9. In that case, you cannot use such identifier as obj-name-or-id input.
If the format of an obj-name-or-id input element does not conform, or the value does not match the name or ID of an existing object, then generally the ZAPI documents that it fails with error code EOBJECTNOTFOUND. A ZAPI may return more specific error codes. In such cases, the ZAPI specification must document its behavior.
If a ZAPI can accept a null value (e.g. reference to no object at all) for such an element, then the element is declared optional, and the absence of the input element represents a null value.
[none]
| Element definition: timezone-info | [top] |
Information about a time zone.
Name Range Type Description timezone-name string
Name of time zone.