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"
}
]
}

vROPS中获取虚拟机在VC中的UUID的更多相关文章

  1. asp.net 类库中获取session c#类中获取session

    asp.net  类库中获取session c#类中获取session 1. 先引入命名空间 using System.Web; using System.Web.SessionState; 在使用H ...

  2. 从O365中获取users到D365中 使用flow

    在我上篇blog中讲解到了怎么用代码把O365 users 获取到D365中. 从O365中获取users到D365中 这几天一直在研究flow, 发现flow可以更简单的完成这个功能. 一开始没有考 ...

  3. spring boot拦截器中获取request post请求中的参数

    最近有一个需要从拦截器中获取post请求的参数的需求,这里记录一下处理过程中出现的问题. 首先想到的就是request.getParameter(String )方法,但是这个方法只能在get请求中取 ...

  4. spring中获取dao或对象中方法的实例化对象

    spring中获取dao的中方法的实例化对象: //获取应用上下文对象 ApplicationContext ctx = new ClassPathXmlApplicationContext(&quo ...

  5. java中获取两个时间中的每一天

    引入下面方法即可: /** * 获取两个时间中的每一天 * @param bigtimeStr 开始时间 yyyy-MM-dd * @param endTimeStr 结束时间 yyyy-MM-dd ...

  6. ASP.NET中获取Repeater模板列中LinkButton按钮事件中获取ID等

    前台页面中: <asp:Repeater ID="repComment" runat="server">            <ItemTe ...

  7. C++ 中获取 可变形參函数中的參数

    #include <iostream> #include <stdarg.h> using namespace std; int ArgFunc(const char * st ...

  8. javascript中获取字符串或数组中元素的索引

    有些时候,我们需要知道一个字符串中字符的位置,或者一个数组中元素的位置,这是就需要对该变量进行迭代操作. 对于数组,有两个方法indexOf和findIndex() , 需要注意的是,findInde ...

  9. Java代码中获取配置文件(config.properties)中内容的两种方法

    方法千千万,本人暂时只总结了两种方法. (1)config.properties中的内容如图 在applicationContext.xml中配置 <!-- 引入配置文件 --> < ...

随机推荐

  1. 面试之二:Redis是单线程还是多线程?以及处理模型。

      Redis是单线程还是多线程?以及处理模型. 线程:单线程 处理模型:参考书<Redis 设计与实现>P151-152 ![](https://ws1.sinaimg.cn/large ...

  2. JS中的call、apply、bind 用法解疑

    JS中的caller  arguments.callee  call  apply  bind方法 一.call()和apply()方法 1.方法定义 call方法: 语法:call([thisObj ...

  3. QBC检索和本地SQL检索

    细说QBC:QBC(Query By Criteria) 查询:这种方式比较面向对象方式,因为是面向对象,所以查询时参数名就是所查询的类的属性名并不是数据库的表的列名重点是有三个描述条件的对象:Res ...

  4. 阿里云OSS分片上传DEMO

    分片传输规则 1.不能超过10000片,2.每片必须大于100KB using System; using System.Collections.Generic; using System.Compo ...

  5. 【Python Programe】使用Python发送语音验证

    使用Python向手机发送语音验证码,需要工具有: virtualenv 创建独立运行环境 Twilio 帐号去调用相应的API Twilio 的python库,5.7.0版本 1.使用 virtua ...

  6. UNION DISTINCT

    w同结构表读写合并. DROP PROCEDURE IF EXISTS w_ww_amzasin; DELIMITER /w/ CREATE PROCEDURE w_ww_amzasin() BEGI ...

  7. 前端开发 - JavaScript - 上

    1.js引入 <!DOCTYPE html> <html lang="cn"> <head> <meta charset="UT ...

  8. python重建二叉树

    # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None ...

  9. 解决shell脚本参数传递含有空格的问题

    有这样一个py文件,需要传一个字典作为参数: import json import sys def parse_params(data): json_data = json.loads(data[1] ...

  10. 数据结构-平衡二叉树 旋转过程平衡因子分析 c和java代码实现对比

    平衡二叉搜索树(Self-balancing binary search tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且 ...