sllut
作者sllut2021-12-22 12:07
系统工程师, IPS

PowerVC 2.0 API之旅-1.获取token

字数 2098阅读 1025评论 0赞 1

PowerVC 是基于 OpenStack 构建而成高级虚拟化和云管理产品,可针对运行在 IPS K1 Power Systems 上面的 AIX 、 i 及 Linux 虚拟机 (VM) 提供简单的虚拟化管理和云部署支持。该产品旨在基于 K1 Power Systems 服务器构建私有云功能,并提高管理员生产力。它可以通过更高级别的云协调器与云环境进一步集成。

PowerVC 旨在简化 Power Systems 环境中的虚拟资源管理。其优势在于通过简单的安装和配置即可快速部署,可节省时间,降低 IT 成本,并加速实现价值;通过直观的用户界面可节省正式培训成本,且用户无需具备专业技能即可轻松使用;资源池和安置策略可提高资源利用率,从而节省大量成本并降低对 IT 的依赖性;主机分组功能允许用户基于策略对整个外包资源池中的每个子集实施单独控制; Dynamic Resource Optimizer 可基于策略对主机组中的活动工作负载实施自动均衡。

PowerVC 的 API 为北向接口。我们可以通过调用 PowerVC API 的方式来管理 PowerVC 上的虚拟化资源。 鉴于 PowerVC 服务基于 REST API 的特性,因此有多种兼容的客户端编程语言和开发平台。换句话说,如果客户端实现遵循基于 HTTP rest 的协议,那么客户端是与 PowerVC 兼容的。

在使用 PowerVC API 之前,需要先获取 PowerVC 的 Tokens 。我们以 POST 方式为例,获取的方式如下:

POST https://:5000/v3/auth/tokens

headers 和 body 的格式如下:

headers=
    {'Content-Type': 'application/json',
    'Vary': 'X-Auth-Token, X-Subject-Token',
    'Accept': 'application/json'
}

body=
{
     "auth": {
        "scope": {
            "project": {
                 "domain": {
                     "name": "Default"
                 },
                 "name": "ibm-default"
             }
         },
         "identity": {
             "password": {
                 "user": {
                     "domain": {
                         "name": "Default"
                     },
                     "password": "mypassword",
                     "name": "myuserid"
                 }
             },
             "methods": [
                 "password"
             ]
         }
     }
}

下面我们找环境做一个简单的测试,

[root@powervc2 ~]# curl -X POST https://172.16.103.200:5000/v3/auth/tokens \\
-H 'content-type: application/json' \\
-d '{"auth": {"scope": {"project": {"domain": {"name": "Default"},"name": "ibm-default"}},"identity": {"password": {"user": {"domain": {"name": "Default"},"password": "rootroot","name": "root"}},"methods": ["password"]}}}'  \\
-vk

PowerVC API 返回信息如下:

其中 x-subject-token 对应的值

“ gAAAAABhwpTIOHaLfyCufC7lfVnRpNwJfcDM0QXIE_qjqnSV-AXKdKveYnxyiEmuULgm6XsejoUhcqR6lNWEFshq2T7rXWykKasL9YZbapYPHE0Ke_DOWrI47tvQM2kjlBVz5KeSTx19rs_VRa2lR0yyVVuWWfpEhrAbVJD5e_uWZSFp3aZsX6k ” 就是 PowerVC API 的 Token 。有了此信息后,我们就可以去查询以及管理相应的 VM 资源了。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广