vROPS中虚拟机对象的ID为resourceID,跟vCenter中虚拟机的UUID是不一致的,因此想要将vROPS中的虚拟机和vCenter中的虚拟机对应肯定不能靠虚拟机名称,而是一定要靠UUID。
下面的示例显示如何通过vROPS API获取虚拟机在vCenter中的UUID
步骤1,获取vROPS Token
URL: https://vrops.vmware.com/suite-api/api/auth/token/acquire
Method: POST
Content-Type: application/json
Accept: application/json
Body: {"username":"admin","password":"VMware1!"}
Response:
{ "token": "4971b55f-68aa-47a0-a351-19fa751d59cb::5c1db8e3-90ec-44f4-87f7-ad986f358ca6", "validity": 1556219805813, "expiresAt": "Friday, April 26, 2019 3:16:45 AM CST", "roles": [] }
步骤2,获取虚拟机UUID
URL: https://vrops.dev-pso.com/suite-api/api/resources?name=000-001-OS-P003
Method: GET
Authorization: vRealizeOpsToken {{token}}
Accept: application/json
Response:
{ "pageInfo": { "totalCount": 1, "page": 0, "pageSize": 1000 }, "links": [ { "href": "/suite-api/api/resources?name=000-001-OS-P003&page=0&pageSize=1000", "rel": "SELF", "name": "current" }, { "href": "/suite-api/api/resources?name=000-001-OS-P003&page=0&pageSize=1000", "rel": "RELATED", "name": "first" }, { "href": "/suite-api/api/resources?name=000-001-OS-P003&page=0&pageSize=1000", "rel": "RELATED", "name": "last" } ], "resourceList": [ { "creationTime": 1555486851466, "resourceKey": { "name": "000-001-OS-P003", "adapterKindKey": "VMWARE", "resourceKindKey": "VirtualMachine", "resourceIdentifiers": [ { "identifierType": { "name": "VMEntityInstanceUUID", "dataType": "STRING", "isPartOfUniqueness": false }, "value": "50229f5c-74e6-9e0a-c3f4-a1d104e6fbe9" // vmUUID, 和VC中VM的virtualMachine.ConfigInfo.instanceUUID是一致的 }, { "identifierType": { "name": "VMEntityName", "dataType": "STRING", "isPartOfUniqueness": false }, "value": "000-001-OS-P003" }, { "identifierType": { "name": "VMEntityObjectID", "dataType": "STRING", "isPartOfUniqueness": true }, "value": "vm-601" }, { "identifierType": { "name": "VMEntityVCID", "dataType": "STRING", "isPartOfUniqueness": true }, "value": "e55e5bf7-06f7-4a77-9fb5-d16bcc4d5ecc" } ] }, "resourceStatusStates": [ { "adapterInstanceId": "e9e24f83-a735-4e8c-a974-0d01a2d9d681", "resourceStatus": "DATA_RECEIVING", "resourceState": "STARTED", "statusMessage": "" } ], "resourceHealth": "RED", "resourceHealthValue": 25, "dtEnabled": true, "badges": [ { "type": "HEALTH", "color": "RED", "score": 25 }, { "type": "CAPACITY_REMAINING", "color": "GREEN", "score": 66.13910915503129 }, { "type": "COMPLIANCE", "color": "GREY", "score": -1 }, { "type": "TIME_REMAINING", "color": "GREEN", "score": 366 }, { "type": "RISK", "color": "GREEN", "score": 0 }, { "type": "EFFICIENCY", "color": "GREEN", "score": 100 }, { "type": "WORKLOAD", "color": "GREEN", "score": 33.4913158416748 } ], "relatedResources": [], "links": [ { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93", "rel": "SELF", "name": "linkToSelf" }, { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93/relationships", "rel": "RELATED", "name": "relationsOfResource" }, { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93/properties", "rel": "RELATED", "name": "propertiesOfResource" }, { "href": "/suite-api/api/alerts?resourceId=40394dc8-2828-4277-85ef-15727e9c0e93", "rel": "RELATED", "name": "alertsOfResource" }, { "href": "/suite-api/api/symptoms?resourceId=40394dc8-2828-4277-85ef-15727e9c0e93", "rel": "RELATED", "name": "symptomsOfResource" }, { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93/statkeys", "rel": "RELATED", "name": "statKeysOfResource" }, { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93/stats/latest", "rel": "RELATED", "name": "latestStatsOfResource" }, { "href": "/suite-api/api/resources/40394dc8-2828-4277-85ef-15727e9c0e93/properties", "rel": "RELATED", "name": "latestPropertiesOfResource" }, { "href": "/suite-api/api/credentials/", "rel": "RELATED", "name": "credentialsOfResource" } ], "identifier": "40394dc8-2828-4277-85ef-15727e9c0e93" } ] }