-
1 场景说明本贴所写指导适用于华为云Stack ManageOne 6.5.x、8.x版本。从ManageOne的租户模型中,我们了解到一级VDC管理员只能管理其所在的VDC,不能跨VDC管理,如果现网项目中有多个一级VDC,就需要第三方系统保存多个一级VDC管理员账号,存在安全风险且维护困难;此时,可以通过代维管理员,将多个一级VDC加入到指定的代维管理员的代维租户列表,这样第三方系统就可以使用一个账号管理多个一级VDC了;代维管理员实际上是通过置换token的方式,获得对一级VDC的管理权限,一旦代维管理员获得了对一级VDC管理权限,就如同一级VDC管理员一样,可以对一级VDC内的子级VDC、project、用户进行管理,也可以在指定的project中申请资源;若使用代维管理员账号在指定VDC中申请云资源,会占用指定VDC的资源配额;若使用代维管理员账号在指定VDC中删除云资源,会释放指定VDC中占用的资源配额。本帖主要给出如何使用代维管理员账号获得指定VDC、project的管理权限(即指定VDC、project的token),对VDC、project、用户和云资源的管理2 准备工作2.1获取调用接口的IP和域名参考帖子:cid:link_0,获取APIGateway的浮动IP,IAM对外访问域名和运营面对外访问域名。2.2 获取运营管理员账号请联系项目中的华为服务工程师,获取ManageOne运营管理员账号密码。2.3 创建代维管理员(已创建可跳过)6.5.1版本参考如下步骤创建代维管理员:步骤1 使用运营管理员登录ManageOne运营面,依次点击“租户”-->“租户代维”,打开代维租户管理界面,点击“创建代维管理员”,如下图所示:步骤2 在创建代维管理员界面,填写用户名,密码,然后选择需要代维的租户列表,并点击“创建”,如下图所示:8.0版本,请参考如下步骤创建代维管理员步骤1 使用运营管理员登录ManageOne运营面,依次点击“系统”-->“权限管理”-->"用户",打开用户管理界面,点击“创建用户”,如下图所示:步骤2 在创建用户界面中,选择“代维”,填写用户名,密码,然后选择需要代维的租户列表,并点击“创建”,如下图所示:3 接口调用步骤代维管理员置换指定租户、project下的token流程如下:步骤1 获取代维管理员的租户名使用代维管理员用户登录ManageOne运营面,进入“选择代维租户和资源集”页面后,按“F12”(以Chrome浏览器为例),选择“网络”页签,然后刷新页面,在控制台获取到的链接列表中,找到“me”,然后在右侧“预览”页签中,找到“domainName”即代为管理员的租户名。(注:此租户名通常为“audn_”开头,与代维用户代管的租户名不相同)。步骤2 获取代维管理员token接口URI:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Content-Type:application/json;charset=UTF-8Accept:application/json; charset=UTF-8请求体:{ "auth": { "identity": { "methods": ["password"], "password": { "user": { "domain": { "name": "audn_1f7af046-6567-4ec6-93a3-470" }, "name": "XXXXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "audn_1f7af046-6567-4ec6-93a3-470" } } }}这里domain name的值为代维管理员所属的domain的名称,由步骤1获得name和password分别为代维管理员的用户名和密码响应头(Header)示例:Transfer-Encoding →chunked Connection →keep-alive X-Subject-Token →MIIEJSDVVDFASKoZIhvXXXXXXXXXXXXXXXXXXXXXXXXXXXXXcNAQcCZzTOuAZ8这里我们从响应头中获得了代维管理员的token(X-Subject-Token)。响应体(Body)示例:{ "token": { "expires_at": "2022-06-24T02:49:18.402000Z", "methods": [ "password" ], "catalog": [], "domain": { "name": "audn_1f7af046-6567-4ec6-93a3-470", "id": "095543b046514bdbab988d4ad3089a28" }, "roles": [ { "name": "te_admin", "id": "985dc76053f94685a15eafc3cd9f5da2" }, { "name": "mo_agency", "id": "8299bcd6d9464c55a6bf963f0d8e678c" }, { "name": "te_agency", "id": "fc85d26a9db847f293265c8c46e19a2c" }, { "name": "secu_admin", "id": "d9920b033be744f1996d1e84281c94e8" }, { "name": "vdc_adm", "id": "4d0cd24102504767b33fd55d915c55e8" } ], "issued_at": "2022-06-23T02:49:18.402000Z", "user": { "domain": { "name": "audn_1f7af046-6567-4ec6-93a3-470", "id": "095543b046514bdbab988d4ad3089a28" }, "name": "hzp_dw", "id": "ef5dbdcce2a047bb8b10fb69507a5bd1" } }}取响应体中的token.user.id为代为管理员的用户id,此环境为ef5dbdcce2a047bb8b10fb69507a5bd1。步骤3 查询代维管理员代维的租户列表这里我们查询代维管理员详情,获得该代维管理员代维的租户列表,为后续置换token做准备。接口URI:https://{运营侧北向接口对外域名}/rest/vdc/v3.0/agencies/users/{agency_user_id}(此处agency_user_id为步骤2中获得的代维管理员的用户ID)请求方法:GET请求头(这里的token为步骤1中获取的运营管理员token):Content-Type:application/json;charset=UTF-8Accept:application/json; charset=UTF-8X-Auth-Token:MIIEMQYJKoZIhvXXXXXXXXXXXXXXXXXXXXXXXXXXXXXcNAQcCZzTOuXR9请求体:NULL响应体(示例):{ "limit_access": "false", "lock_period": null, "login_config": null, "whiteList": [], "user": { "resource_tenant_id": "", "level": null, "roles": [ { "id": "00000000-0000-0000-0000-000000000004", "name": "agencyManager", "display_name": "Agency Admin", "user_role_type": null, "description": "role_role_view_para_desc_content_agencyMananger_value" } ], "trust_vdc_list": [ { "name": "hzp_vdc", "id": "16ea1a6e341d44e385fb3cb077c3b63f", "description": "", "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "domain_name": "hzp_vdc", "agency_name": "aN_101e3806-761e-4264-ad60-cfca0", "agency_id": "3d65090751424616b93ded9068394e8c" }, { "name": "hzp_vdc_2", "id": "3dd28cba7a28416cbab8b62bfe0f9e02", "description": "", "domain_id": "3dd28cba7a28416cbab8b62bfe0f9e02", "domain_name": "hzp_vdc_2", "agency_name": "aN_5a1067a9-f94d-4bcf-a8be-f9693", "agency_id": "c31134a891bd45feb97861c5d732d1e7" } ], "description": "", "areacode": null, "createAt": null, "enabled": "true", "vdc_id": null, "domain_id": "095543b046514bdbab988d4ad3089a28", "domain_name": "audn_1f7af046-6567-4ec6-93a3-470", "user_type": "0", "display_name": null, "phone": "", "name": "hzp_dw", "id": "ef5dbdcce2a047bb8b10fb69507a5bd1", "email": "" }}trust_vdc_list中所列出的清单即为该代维管理员所代维的租户列表,这里我们需要获取被代维的租户的名称(trust_vdc_list中name的值),租户的ID(trust_vdc_list中domain_id的值)和代维名称(trust_vdc_list中agency_name的值),为后续置换token做准备。 步骤4 查询指定租户中的project列表(可选)若您不需要拥有指定的project中资源的管理权限,这一步可以跳过。接口URI:https://{运营侧北向接口对外域名}/rest/vdc/v3.1/agencies/projects?domain_id={domain_id}(domain_id为被代维的租户的domain ID,由步骤3获取trust_vdc_list中domain_id的值)这里需要使用代维管理员的token,由步骤4获取请求方法:GET请求头:Content-Type:application/json;charset=UTF-8Accept:application/json; charset=UTF-8X-Auth-Token:MIIEJSDVVDFASKoZIhvXXXXXXXXXXXXXXXXXXXXXXXXXXXXXcNAQcCZzTOuAZ8请求体:NULL响应体(示例):{ "total": 3, "projects": [ { "id": "6934bce513274fd9b20955c3db9728f0", "name": "solution-advance-1_hzp_project", "description": "", "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "enabled": true, "tenant_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "is_shared": false, "tenant_name": "hzp_vdc", "create_user_name": "bss_admin", "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "regions": [ { "region_id": "solution-advance-1", "region_name": { "zh_cn": "东莞", "en_us": "东莞" }, "region_status": "normal" } ] }, { "id": "630b7dd529344d56bf38c0a6ecab4fc6", "name": "solution-advance-1_hzp_project2", "description": "", "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "enabled": true, "tenant_id": "bf588c5a-8d05-49bd-a93d-e937286893e5", "is_shared": false, "tenant_name": "hzp_vdc2", "create_user_name": "hzp_admin", "create_user_id": "d0cc23141778469f82854c5269d3d9ee", "regions": [ { "region_id": "solution-advance-1", "region_name": { "zh_cn": "东莞", "en_us": "东莞" }, "region_status": "normal" } ] }, { "id": "51792d0ec2624c98b316fde97956531e", "name": "solution-advance-2_hzp_project", "description": "", "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "enabled": true, "tenant_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "is_shared": false, "tenant_name": "hzp_vdc", "create_user_name": "bss_admin", "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "regions": [ { "region_id": "solution-advance-2", "region_name": { "zh_cn": "华南", "en_us": "华南" }, "region_status": "normal" } ] } ]} 此处我们获得了指定租户下的project列表,我们需要取到project的ID步骤5 获取代维管理员在指定租户、指定project中的token获取代维管理员在指定租户中的token,我们需要用到步骤4中获得的代为管理员的token,步骤3中获得的被代维租户的租户名和代维名称。请求URL: https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头(请求头中token为步骤4中获得的代维管理员token):Accept:application/json Content-Type:application/json;charset=UTF-8 X-Auth-Token:MIIEJSDVVDFASKoZIhvXXXXXXXXXXXXXXXXXXXXXXXXXXXXXcNAQcCZzTOuAZ8请求体样例1(指定租户、指定projet):{ "auth": { "identity": { "methods": ["assume_role"], "assume_role": { "domain_name": "hzp_vdc", "xrole_name": "aN_101e3806-761e-4264-ad60-cfca0" } }, "scope": { "project": { "domain": { "name": "hzp_vdc" }, "name": "solution-advance-1_hzp_project" } } }}使用此请求体置换得到的token,可以对指定的租户中的VDC、用户和project进行管理,还可以管理指定的project中的资源(scope中指定的project)。请求体样例2(指定租户,不指定project):{ "auth": { "identity": { "methods": ["assume_role"], "assume_role": { "domain_name": "hzp_vdc", "xrole_name": "aN_101e3806-761e-4264-ad60-cfca0", "restrict": { "roles": ["secu_admin", "te_admin", "vdc_owner", "vdc_adm", "tag_adm"] } } }, "scope": { "domain": { "name": "hzp_vdc" } } }}使用此请求体置换得到的token,可以对指定的租户中的VDC、用户和project进行管理,不能管理资源。请求体中参数说明如下:methods:获取token的方法,此处我们采用置换token方式,故而取值为:assume_roledomain_name:被代维的租户的租户名,从步骤3获取的trust_vdc_list中name的值xrole_name:代为管理员在指定租户中的代维名称,从步骤3获取的trust_vdc_list中agency_name的值restrict:置换所得的token所拥有的权限,参考样例填写即可scope中的project.domain.name:与domain_name取值相同scope中的project.id:需要代维的project的ID,由步骤4的响应体中获取响应头示例:Content-Type →application/json; charset=utf-8 Transfer-Encoding →chunked Connection →keep-alive X-Subject-Token →MIIFCAYJKoZIhvcNAQcCoIIE+TCCBPUXXXXXgSe63UKRXxi5AxhHv-0U=从响应头中,我们获得了置换的token。如果需要在不同的project中管理资源,需要再次置换token,获得目标project的权限
-
1 VDC模型介绍请参考此链接:cid:link_02 约束条件本文适用于ManageOne 6.5.0及以上版本。3 场景说明本文档用于指导开发者获取租户和用户信息,便于第三方系统同步ManageOne的组织架构以及用户信息(如用户名、电话、email等)。4 租户信息同步目录:4.1 准备工作 4.2 获取管理员token 4.3 Project(资源集/项目) 1. 查询VDC关联的Project 2. 查询用户关联的Project4.1 准备工作正式对接前,请参考如下步骤,获取对应的IP、用户:参考运营侧准备工作帖,获取对接所需要接口文档(主要参考,ManageOne运营面API参考)、运营侧北向接口对外域名:https://bbs.huaweicloud.com/forum/thread-41849-1-1.html联系项目中,华为交付工程师,获取运营管理员账号、密码,或使用已创建的VDC管理员账号。运营管理员可管理所有租户,VDC管理员可管理本级和子级VDC。4.2 获取管理员token请求URL:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Accept:application/jsonContent-Type:application/json;charset=UTF-8请求体:(注:运营管理员的domain name固定为mo_bss_admin,VDC管理员的domain name为租户名。){ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "mo_bss_admin" }, "name": "XXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "mo_bss_admin" } } }}返回的token在响应头中,示例如下:HTTP/1.1 201 CreatedContent-Type: application/json; charset=utf-8Connection: keep-aliveX-Subject-Token: MIIECwYxxxxxxxxxxxxxxxxxxSQ3G2RAj89N+t9GECHGnnGUgkKj7vMesUZ2jEW6EiVYA==X-Subject-Token的值即为我们所需要的token 4.3 Project(资源集/项目)1. 查询VDC关联的ProjectURLGET https://{SC北向接口域名}/rest/vdc/v3.1/vdcs/{vdc_id}/projects?start=0&limit=100其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-100之间,默认值为10。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询指定VDC中资源集集合“接口。)参数类型描述inheritboolean是否查询VDC下所有可见VDC关联的资源集。默认值:falsenamestring模糊搜索所使用的名称字段,长度在1-64之间。sort_dirstring排序方向,取值范围asc,desc。默认值:asc请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 1, "projects": [ { "id": "6aa4d449d6fe4ea68c7cacb1a9803959", "name": "cn-global-205_hzp_project", "description": "", "domain_id": "e1fcb3ba48a64cb2acb5894bcd6d892d", "enabled": true, "tenant_id": "d8e2a487-843b-4309-9d14-e845f593411f", "is_shared": false, "tenant_name": "hzp_vdc", "create_user_id": "b9fd4029af7a4b71a085048b9bbe9072", "create_user_name": "bss_admin", "regions": [ { "region_id": "cn-global-205", "region_name": { "zh_cn": "西安", "en_us": "西安" }, "region_type": null, "region_status": "normal" } ] } ]}其中,id为project Id,name为project名称,domain_id为project所在的租户Id,tenant_id为project所属的VDC Id;tenant_name为project所属的VDC名称;description为project描述;regions为project关联的region信息。2. 查询用户关联的ProjectURLGET https://{SC北向接口域名}/rest/vdc/v3.1/users/{user_id}/projects?start=0&limit=100其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-100之间,默认值为10。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询指定VDC中资源集集合“接口。)参数类型描述inheritboolean是否查询VDC下所有可见VDC关联的资源集。默认值:falsenamestring模糊搜索所使用的名称字段,长度在1-64之间。sort_dirstring排序方向,取值范围asc,desc。默认值:asc请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 1, "projects": [ { "regions": [ { "region_id": "cn-global-205", "region_status": "normal", "region_name": { "zh_cn": "西安", "en_us": "西安" } } ], "id": "6aa4d449d6fe4ea68c7cacb1a9803959", "name": "cn-global-205_hzp_project", "iam_project_name": "cn-global-205_hzp_project", "display_name": "cn-global-205_hzp_project", "description": "", "enabled": true, "domain_id": "e1fcb3ba48a64cb2acb5894bcd6d892d", "tenant_id": "d8e2a487-843b-4309-9d14-e845f593411f", "tenant_name": "hzp_vdc", "level": "1", "role_id": null, "role_name": null, "is_shared": "false" } ]}其中,id为project Id,name为project名称,domain_id为project所在的租户Id,tenant_id为project所属的VDC Id;tenant_name为project所属的VDC名称;description为project描述;regions为project关联的region信息。
-
1 VDC模型介绍请参考此链接:cid:link_02 约束条件本文适用于ManageOne 6.5.0及以上版本。3 场景说明本文档用于指导开发者获取租户和用户信息,便于第三方系统同步ManageOne的组织架构以及用户信息(如用户名、电话、email等)。4 租户信息同步目录:4.1 准备工作 4.2 获取管理员token 4.3 用户 1. 查询用户列表 2. 查询用户详情 4.1 准备工作正式对接前,请参考如下步骤,获取对应的IP、用户:参考运营侧准备工作帖,获取对接所需要接口文档(主要参考,ManageOne运营面API参考)、运营侧北向接口对外域名:https://bbs.huaweicloud.com/forum/thread-41849-1-1.html联系项目中,华为交付工程师,获取运营管理员账号、密码,或使用已创建的VDC管理员账号。运营管理员可管理所有租户,VDC管理员可管理本级和子级VDC。4.2 获取管理员token请求URL:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Accept:application/jsonContent-Type:application/json;charset=UTF-8请求体:(注:运营管理员的domain name固定为mo_bss_admin,VDC管理员的domain name为租户名。){ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "mo_bss_admin" }, "name": "XXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "mo_bss_admin" } } }}返回的token在响应头中,示例如下:HTTP/1.1 201 CreatedContent-Type: application/json; charset=utf-8Connection: keep-aliveX-Subject-Token: MIIECwYxxxxxxxxxxxxxxxxxxSQ3G2RAj89N+t9GECHGnnGUgkKj7vMesUZ2jEW6EiVYA==X-Subject-Token的值即为我们所需要的token 4.3 用户1. 查询用户列表接口约束:运营管理员token可查询全量用户。VDC管理员仅可查询本VDC以及子级VDC的用户。URLGET https://{SC北向接口域名}/rest/vdc/v3.0/users?limit=100&start=0URL常用参数:(完整参数请参考《ManageOne 运营面API参考》)start:分页查询的起始位置,最小值:0 ,最大值:2147483647 ,默认值:0。可选。limit:限制每页显示的条目数量,最小值:1,最大值:100 ,默认值:10。可选。tenant_id:用户归属的VDC ID。可选。name:按照名称或显示名字段模糊搜索。长度:1到128个字符。可选。exact:是否精确匹配,枚举值:true和false,默认值:false。可选。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 1, "users": [ { "enabled": "true", "description": "", "email": "", "areacode": "", "phone": "", "vdc_name": "hzp_vdc", "resource_tenant_id": null, "level": null, "roles": [ { "id": "00000000-0000-0000-0000-000000000001", "name": "vdcServiceManager", "display_name": "VDC Admin", "user_role_type": "0" } ], "display_name": "", "vdc_id": "8c3e288e-49a5-4eab-90a0-47916dac8589", "domain_id": "9b01faf18f454c59a6fd157f0c82e556", "domain_name": "hzp_vdc", "user_type": "0", "name": "hzp_admin", "login_at": "2022-04-18 01:24:27.0", "id": "b7f8bc098f4f4891b93eeff5dcdfc6b5", "create_at": "2022-02-23 06:55:53.0" } ]}其中,id为用户Id,name为用户名称,domain_id为租户Id,vdc_id为所属的VDC Id。2. 查询用户详情接口约束:运营管理员token可查询全量用户。VDC管理员仅可查询本VDC以及子级VDC的用户。URLGET https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}其中,user_id为用户id。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "limit_access": "false", "lock_period": null, "login_config": null, "whiteList": null, "user": { "enabled": "true", "description": "", "email": "", "areacode": null, "phone": "", "projects": [], "ldap_id": null, "level": "1", "resource_tenant_id": null, "roles": [ { "id": "00000000-0000-0000-0000-000000000001", "name": "vdcServiceManager", "display_name": "VDC Admin", "user_role_type": null, "description": "role_role_view_para_desc_content_vdcServiceManager_value" } ], "groups": [ { "id": "8afb852688194e408f4edf4bf8c8a690", "name": "SC_289yUXfSpzD", "description": "", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "role_name": null, "vdc_name": "SC_289OHFUVQdL", "role_id": null, "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444" }, { "id": "cdafab1cfe2e4c129d4878b13e171333", "name": "admin_bc0366f0-3b60-486f-a88e-2a38266dd444", "description": "Default VDC administrator group, having the permission to manage services in the VDC that the user group belongs to and its lower-level VDCs.", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "role_name": "vdcServiceManager", "vdc_name": "SC_289OHFUVQdL", "role_id": "00000000-0000-0000-0000-000000000001", "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444" } ], "display_name": null, "second_verify": "false", "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "domain_name": "SC_289OHFUVQdL", "user_type": "0", "name": "SC_289yUXfSpzD", "login_at": null, "id": "b76fc5607bff4ec094891c930cf3b0de", "tag": "vdc", "top_vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444", "ldap_name": null }, "federation_regions": []}其中,id为用户Id,name为用户名称,domain_id为租户Id,vdc_id为所属的VDC Id。groups为用户绑定的用户组。
-
1 VDC模型介绍请参考此链接:cid:link_02 约束条件本文适用于ManageOne 6.5.0及以上版本。3 场景说明本文档用于指导开发者获取租户和用户信息,便于第三方系统同步ManageOne的组织架构以及用户信息(如用户名、电话、email等)。4 租户信息同步目录:4.1 准备工作 4.2 获取管理员token 4.3 租户/VDC 1. 查询VDC列表 2. 查询VDC详情 4.1 准备工作正式对接前,请参考如下步骤,获取对应的IP、用户:参考运营侧准备工作帖,获取对接所需要接口文档(主要参考,ManageOne运营面API参考)、运营侧北向接口对外域名:https://bbs.huaweicloud.com/forum/thread-41849-1-1.html联系项目中,华为交付工程师,获取运营管理员账号、密码,或使用已创建的VDC管理员账号。运营管理员可管理所有租户,VDC管理员可管理本级和子级VDC。4.2 获取管理员token请求URL:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Accept:application/jsonContent-Type:application/json;charset=UTF-8请求体:(注:运营管理员的domain name固定为mo_bss_admin,VDC管理员的domain name为租户名。){ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "mo_bss_admin" }, "name": "XXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "mo_bss_admin" } } }}返回的token在响应头中,示例如下:HTTP/1.1 201 CreatedContent-Type: application/json; charset=utf-8Connection: keep-aliveX-Subject-Token: MIIECwYxxxxxxxxxxxxxxxxxxSQ3G2RAj89N+t9GECHGnnGUgkKj7vMesUZ2jEW6EiVYA==X-Subject-Token的值即为我们所需要的token4.3 租户/VDC1. 查询VDC列表URLGET https://{SC北向接口域名}/rest/vdc/v3.0/vdcs?start=0&limit=1000其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-1000之间,默认值为20。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询VDC列表“接口。)参数类型描述namestringVDC名称,长度在0-128之间。upper_vdc_idstring上级VDC id。domain_idstring所属租户id。levelint32VDC级别,取值在1-5之间。sort_keystring排序字段,支持按create_at、name字段排序。默认值:name。sort_dirstring排序方向,取值范围asc,desc。默认值:asc。is_domainstring是否为租户,1代表是,0代表不是。query_namestring过滤字段。取值范围domainName,upperVdcName,extraquery_valuestring过滤字段值。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 4, "vdcs": [ { "id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "name": "hzp_vdc", "tag": "vdc", "description": null, "upper_vdc_id": "0", "upper_vdc_name": null, "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 2, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 1, "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "create_user_name": "bss_admin", "create_at": 1650350228000, "utc_create_at": "2022-04-19 06:37:08.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null }, { "id": "bf588c5a-8d05-49bd-a93d-e937286893e5", "name": "hzp_vdc2", "tag": "vdc", "description": "", "upper_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "upper_vdc_name": "hzp_vdc", "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 1, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 2, "create_user_id": "d0cc23141778469f82854c5269d3d9ee", "create_user_name": "hzp_admin", "create_at": 1651040610000, "utc_create_at": "2022-04-27 06:23:30.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null } ]}响应体字段说明如下:id:VDC idname:vdc名称level:vdc级别,取值在1-5之间。description:描述domain_id:租户iddomain_name:租户名create_at/utc_create_at:创建时间upper_vdc_id:上级VDC idupper_vdc_name:上级VDC 名称project_count:project数量top_vdc_id:所在的一级VDC id。2. 查询VDC详情URLGET https://{SC北向接口域名}/rest/vdc/v3.0/vdcs/{vdc_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "vdc": { "id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "name": "hzp_vdc", "tag": "vdc", "description": null, "upper_vdc_id": "0", "upper_vdc_name": null, "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "ecs_used": 0.0, "evs_used": 0.0, "project_count": 0, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 1, "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "create_user_name": "bss_admin", "create_at": 1650321428000, "utc_create_at": null, "domain_name": "hzp_vdc", "ldap_id": null, "process_id": null, "regions": [ { "region_id": "solution-advance-1", "region_name": "{\"zh_cn\":\"东莞\",\"en_us\":\"东莞\"}", "region_type": "private_cloud", "cloud_infras": [ { "cloud_infra_id": "FUSION_CLOUD_solution-advance-1", "cloud_infra_name": "OpenStack_solution-advance-1", "cloud_infra_status": "normal", "cloud_infra_type": "FUSION_CLOUD", "azs": [ { "available_zone": "az0.dc0", "az_name": "华为技术有限公司", "az_status": "normal", "extend_param": "{\"cloud_location\":\"localcloud\"}" } ] } ] } ], "third_type": null, "enterprise_id": null, "mfa_status": "0", "enterprise_project_id": null, "cloud_federation_rate": {}, "cloud_federation_status": false }}响应体字段说明如下:id:VDC idname:vdc名称level:vdc级别,取值在1-5之间。description:描述domain_id:租户iddomain_name:租户名create_at/utc_create_at:创建时间upper_vdc_id:上级VDC idupper_vdc_name:上级VDC 名称project_count:project数量top_vdc_id:所在的一级VDC id。region:区域详情。类型:对象数组。region包含以下字段:region_id:区域idregion_name:区域名称region_type:区域类型cloud_infras:资源池详情。对象类型。cloud_infras包含以下字段:cloud_infra_id:资源池idcloud_infra_name:资源池名称cloud_infra_status:资源池状态cloud_infra_type:资源池类型azs:可用分区详情。类型:对象数组。azs包含以下字段:available_zone:可用分区idaz_name:可用分区名称az_status:可用分区状态。extend_param:拓展参数。
-
1 接口说明从ManageOne 8.2.1版本起,IAM会对OC(运维面)用户进行纳管,第三方可通过SC接口对OC用户进行管理。可用于以下场景:1.客户有自己的统一密码管理系统,需要对OC用户的密码进行管理2.MO已对接第三方统一认证中心,并且有从第三方平台单点登录至OC的需求,此时需要在OC创建相应的用户。2 接口约束1. 支持ManageOne 8.2.1及以上版本2. 当前仅运营管理员(mo_bss_admin)租户下的用户添加OC权限,VDC管理员、代维管理员等其他角色不支持添加OC权限。3 使用指导3.1 准备工作正式对接前,请参考如下步骤,获取对应的IP、用户:参考运营侧准备工作帖,获取对接所需要接口文档(主要参考,ManageOne运营面API参考)、运营侧北向接口对外域名:https://bbs.huaweicloud.com/forum/thread-41849-1-1.html联系项目中,华为交付工程师,获取运营管理员账号、密码.3.2 调用步骤步骤0:获取运营管理员token请求URL:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Accept:application/jsonContent-Type:application/json;charset=UTF-8请求体:(注:运营管理员的domain name固定为mo_bss_admin,以下请求体只需要替换用户名和密码即可。){ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "mo_bss_admin" }, "name": "XXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "mo_bss_admin" } } }}返回的token在响应头中,示例如下:HTTP/1.1 201 CreatedContent-Type: application/json; charset=utf-8Connection: keep-aliveX-Subject-Token: MIIECwYxxxxxxxxxxxxxxxxxxSQ3G2RAj89N+t9GECHGnnGUgkKj7vMesUZ2jEW6EiVYA==X-Subject-Token的值即为我们所需要的token步骤1:查询运营管理员所属的VDCURLGET https://{SC北向接口域名}/rest/vdc/v3.0/vdcs?name=mo_bss_admin请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 1, "vdcs": [ { "id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "name": "mo_bss_admin", "tag": "system", "description": "mo_bss_admin", "upper_vdc_id": "0", "upper_vdc_name": null, "top_vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "extra": null, "ecs_used": 0.0, "evs_used": 0.0, "project_count": 0, "enabled": true, "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "level": 1, "create_user_id": "83cef006b4104f7084fc6ec2095004d7", "create_user_name": "bss_admin", "create_at": 1678128580000, "utc_create_at": "2023-03-06 18:49:40.0", "domain_name": "mo_bss_admin", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null } ]}取id字段为mo_bss_admin的VDC id。 步骤2:创建不带权限的运营管理员用户URLPOST https://{SC北向接口域名}/rest/vdc/v3.2/vdcs/{vdc_id}/users其中,vdc_id通过步骤1获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "user": { "name": "testuser123", "password": "tT123456#" }}user对象中可包含以下参数:name:用户名,只能由英文字母(区分大小写)、数字和特殊字符@._-组成,不能以“op_svc”、“paas_op”或\开头,且不能以\结尾,且不能命名为admin,power_user或guest。长度范围是4到32位。必选。display_name:用户别名,由除">"和"<"之外的字符组成,0-128个字符。可选。password:密码,包含以下四种字符的三种: 大写字母、小写字母、数字、特殊字符(除<和>字符),且必须包含特殊字符,不能包含名字正序或逆序。长度:8到32个字符 。可选。description:描述,不能包含<或者>字符。长度:0到255个字符。可选。email:邮箱,符合邮箱格式,长度:0到64个字符。可选。areacode:国际区号,只能为数字,长度:0到10个字符。可选。phone:手机号,只能为数字,长度:0到32个字符。可选。enabled:用户状态,枚举值:true和false,默认为true。为false时,表示用户处于停用状态。可选。auth_type:用户类型。枚举值:'0','1','2','4',默认值为'0'。为'0'表示本地认证,为'1'表示SAML认证,为'2'表示LDAP认证,为'4'表示OC的API用户。可选。ldap_id:ldap ID。auth_type为1或2时需要填写此参数。可选。响应体示例{ "user": { "id": "a674600f05ad4cb086d5a60c6847e920", "domain_id": "e1fcb3ba48a64cb2acb5894bcd6d892d", "domain_name": "hzp_vdc", "name": "testuser123", "display_name": null, "enabled": true, "description": null, "vdc_id": "d8e2a487-843b-4309-9d14-e845f593411f", "vdc_name": "hzp_vdc", "ldap_id": null, "create_at": 1657358889000, "login_at": 0, "auth_type": "0", "group_count": null, "user_type": null }}其中,取id字段为用户Id。步骤3:查询OC的用户组列表(创建API用户可跳过)URLGET https://{SC北向接口域名}/rest/vdc/v3.2/vdcs/{vdc_id}/groups?start=0&limit=100其中,vdc_id从步骤1获取,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-100之间,默认值为10。可包含如下查询条件:参数类型描述namestring按照名称或显示名字段模糊搜索。长度:1到64个字符。sort_keystring排序字段。枚举值:name。默认值为name。sort_dirstring排序方向。枚举值:desc 和asc,默认值:asc。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 6, "groups": [ { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "279b2ca362cb4a3d99077eef7a386877", "name": "Administrators", "description": "Administrators", "create_at": 1678185136000, "type": "default", "tag": "all" }, { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "e9dc8c8a27d34029aafd8f5fd432b795", "name": "AuditManagers", "description": "AuditManagers", "create_at": 1678185135000, "type": "default", "tag": "all" }, { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "c11519130ea14e9dbb17e1f8ea42fd9d", "name": "NorthUserGroup", "description": "NorthUserGroup", "create_at": 1678185136000, "type": "default", "tag": "sys_adm" }, { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "d30066372a8f40148d9406a7e94d76d7", "name": "ReadOnlyUserGroup", "description": "ReadOnlyUserGroup", "create_at": 1678185136000, "type": "default", "tag": "sys_adm" }, { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "ec23408b124a4f0eb7fe1af69c8261f3", "name": "SecurityAdministrators", "description": "SecurityAdministrators", "create_at": 1678185135000, "type": "default", "tag": "all" }, { "domain_id": "09d95085ad7048dbb157d07fa22e9cd1", "domain_name": "mo_bss_admin", "vdc_id": "8ff07323-defd-4188-b5f7-7c09feb76ced", "vdc_name": "mo_bss_admin", "id": "417f9669e6e246ad9904283b45b508c3", "name": "admin_09d95085ad7048dbb157d07fa22e9cd1", "description": "admin_09d95085ad7048dbb157d07fa22e9cd1 description", "create_at": 1678128577000, "type": "default", "tag": "all" } ]}此处,我们根据“name”字段,过滤得到我们需要的用户组的ID。例如,根据“管理员”用户组的name“Administrators”,可查找到其对应的id为“279b2ca362cb4a3d99077eef7a386877”。ManageOne预置的OC角色请参考下表:角色接口名称(name)说明管理员Administrators拥有除“用户管理”、“查询安全日志”、“查看在线用户”和“查询个人安全日志”之外的所有权限。安全管理员组SecurityAdministrators拥有“用户管理”、“License管理”、“密码管理”、“查看在线用户”、“查询安全日志”和“更新ACL策略”的权限。安全审计员AuditManagers拥有所有日志的查询和管理权限,包括“系统管理 > 日志管理”的权限以及统一日志的“查询权限”和“管理权限”。只读用户组ReadOnlyUserGroup拥有界面查看权限,不具有操作权限。步骤4:将用户加入指定用户组(创建API用户可跳过)URLPUT https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id}/users/{user_id}其中,user_id从步骤2获取,group_id通过步骤3获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无状态码:204(成功)响应体:无至此,拥有OC操作权限的用户就创建完成了。
-
1 VDC模型介绍请参考此链接:cid:link_02 约束条件本文适用于ManageOne 8.1.0及以上版本。3 场景说明自8.0.3版本起,ManageOne加入用户组特性,并支持关联权限。管理员可通过细粒度授权来控制用户能使用的云服务范围,例如限制用户只能使用CCE服务,或给用户只读权限,将用户权限最小化。8.1.0版本后,ManageOne支持通过API管理用户组。4 创建细粒度授权用户目录:4.1 准备工作4.2 创建用户组步骤0:获取管理员token 步骤1:查询VDC列表 步骤2:创建用户组 步骤3:查询VDC下的用户组列表(可选) 4.3 创建VDC用户步骤1:创建不带权限的VDC用户步骤2:将用户加入指定用户组4.4 为指定用户组授权指定资源集步骤1:查询租户下的权限列表步骤2:为指定用户组授权资源集权限4.5 其他接口1. 将用户从指定用户组移除 2. 删除用户组 3. 查询用户绑定的用户组 4. 删除用户4.1 准备工作1. 正式对接前,请参考如下步骤,获取对应的IP、用户:参考运营侧准备工作帖,获取对接所需要接口文档(主要参考,ManageOne运营面API参考)、运营侧北向接口对外域名:https://bbs.huaweicloud.com/forum/thread-41849-1-1.html联系项目中,华为交付工程师,获取运营管理员账号、密码,或使用已创建的VDC管理员账号。运营管理员可管理所有租户,VDC管理员可管理本级和子级VDC。2. 请确保在创建用户前已经完成VDC和Project(资源集)的创建。4.2 创建用户组步骤0:获取管理员token请求URL:https://{IAM对外访问域名}/v3/auth/tokens请求方法:POST请求头:Accept:application/jsonContent-Type:application/json;charset=UTF-8请求体:(注:运营管理员的domain name固定为mo_bss_admin,VDC管理员的domain name为租户名。){ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain": { "name": "mo_bss_admin" }, "name": "XXXX", "password": "XXXXXX" } } }, "scope": { "domain": { "name": "mo_bss_admin" } } }}返回的token在响应头中,示例如下:HTTP/1.1 201 CreatedContent-Type: application/json; charset=utf-8Connection: keep-aliveX-Subject-Token: MIIECwYxxxxxxxxxxxxxxxxxxSQ3G2RAj89N+t9GECHGnnGUgkKj7vMesUZ2jEW6EiVYA==X-Subject-Token的值即为我们所需要的token步骤1:查询VDC列表URLGET https://{SC北向接口域名}/rest/vdc/v3.0/vdcs?start=0&limit=1000其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-1000之间,默认值为20。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询VDC列表“接口。)参数类型描述namestringVDC名称,长度在0-128之间。upper_vdc_idstring上级VDC id。domain_idstring所属租户id。levelint32VDC级别,取值在1-5之间。sort_keystring排序字段,支持按create_at、name字段排序。默认值:name。sort_dirstring排序方向,取值范围asc,desc。默认值:asc。is_domainstring是否为租户,1代表是,0代表不是。query_namestring过滤字段。取值范围domainName,upperVdcName,extraquery_valuestring过滤字段值。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 4, "vdcs": [ { "id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "name": "hzp_vdc", "tag": "vdc", "description": null, "upper_vdc_id": "0", "upper_vdc_name": null, "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 2, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 1, "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "create_user_name": "bss_admin", "create_at": 1650350228000, "utc_create_at": "2022-04-19 06:37:08.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null }, { "id": "bf588c5a-8d05-49bd-a93d-e937286893e5", "name": "hzp_vdc2", "tag": "vdc", "description": "", "upper_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "upper_vdc_name": "hzp_vdc", "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 1, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 2, "create_user_id": "d0cc23141778469f82854c5269d3d9ee", "create_user_name": "hzp_admin", "create_at": 1651040610000, "utc_create_at": "2022-04-27 06:23:30.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null } ]}复制部分响应体字段说明如下: id:VDC idname:vdc名称level:vdc级别,取值在1-5之间。description:描述domain_id:租户iddomain_name:租户名create_at/utc_create_at:创建时间upper_vdc_id:上级VDC idupper_vdc_name:上级VDC 名称project_count:project数量top_vdc_id:所在的一级VDC id。步骤2:创建用户组URLPOST https://{SC北向接口域名}/rest/vdc/v3.2/vdcs/{vdc_id}/groups请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "group": { "description": "123", "name": "vdcuser776" } }参数说明:name:用户组名称,不能以数字开头。只能由英文字母,中文,数字,中划线,下划线组成,且不能命名为admin、power_user、或guest。长度范围是1到64位。必选。description:描述,不能包含<或者>字符。长度:0到255个字符。可选。响应体示例{ "group": { "domain_id": null, "domain_name": null, "vdc_id": null, "vdc_name": null, "id": "a1b428ffe3ff470296813a73276a3bc0", "name": "vdcuser776", "description": "123", "create_at": 0, "type": null, "display_name": "vdcuser776", "vdc_level": 0 }}其中,id为用户组Id;name为用户组名称;display_name为用户组显示名称。相关接口:删除用户组:DELETE https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id},无请求体和响应体,成功状态码204。步骤3:查询VDC下的用户组列表(可选)URLGET https://{SC北向接口域名}/rest/vdc/v3.2/vdcs/{vdc_id}/groups?start=0&limit=100其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-100之间,默认值为10。可包含如下查询条件:参数类型描述namestring按照名称或显示名字段模糊搜索。长度:1到64个字符。sort_keystring排序字段。枚举值:name。默认值为name。sort_dirstring排序方向。枚举值:desc 和asc,默认值:asc。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 2, "groups": [ { "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "domain_name": "hzp_vdc", "vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "vdc_name": "hzp_vdc", "id": "8e2deaa2fb7e4226b3f8b43a2b6bd11b", "name": "admin_d86c3636-c637-4ee6-93ca-16c34b38b5c0", "description": "Default VDC administrator group, having the permission to manage services in the VDC that the user group belongs to and its lower-level VDCs.", "create_at": 1650350228000, "type": "default" }, { "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "domain_name": "hzp_vdc", "vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "vdc_name": "hzp_vdc", "id": "943abaee2ce34fd4ac3c4c4eb9368e05", "name": "test1234", "description": "", "create_at": 1650977723000, "type": "custom" } ]}响应体字段说明: total:总量 groups:用户组详情。对象数组。groups包含如下字段:domain_id:租户ID。domain_name:租户名称。vdc_id:VDC ID。vdc_name:VDC名称。id:用户组ID。name:用户组名称。description:用户组描述信息。create_at:用户组创建时间。type:用户组类型。default:系统预置的用户组;custom:自定义用户组。4.3 创建VDC用户步骤1:创建不带权限的VDC用户注:运营管理员角色用户必须使用运营管理员token才能创建;VDC管理员token仅可在本VDC或子级VDC下创建用户。运营管理员token支持在任意VDC下创建用户。URLPOST https://{SC北向接口域名}/rest/vdc/v3.2/vdcs/{vdc_id}/users其中,vdc_id为用户所属VDC的Id请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "user": { "name": "testuser123", "password": "tT123456#" }}user对象中可包含以下参数:name:用户名,只能由英文字母(区分大小写)、数字和特殊字符@._-组成,不能以“op_svc”、“paas_op”或\开头,且不能以\结尾,且不能命名为admin,power_user或guest。长度范围是4到32位。必选。display_name:用户别名,由除">"和"<"之外的字符组成,0-128个字符。可选。password:密码,包含以下四种字符的三种: 大写字母、小写字母、数字、特殊字符(除<和>字符),且必须包含特殊字符,不能包含名字正序或逆序。长度:8到32个字符 。可选。description:描述,不能包含<或者>字符。长度:0到255个字符。可选。email:邮箱,符合邮箱格式,长度:0到64个字符。可选。areacode:国际区号,只能为数字,长度:0到10个字符。可选。phone:手机号,只能为数字,长度:0到32个字符。可选。enabled:用户状态,枚举值:true和false,默认为true。为false时,表示用户处于停用状态。可选。auth_type:用户类型。枚举值:'0','1','2',默认值为'0'。为'0'表示本地认证,为'1'表示SAML认证,为'2'表示LDAP认证。可选。ldap_id:ldap ID。auth_type不为0时需要填写此参数。可选。响应体示例{ "user": { "id": "a674600f05ad4cb086d5a60c6847e920", "domain_id": "e1fcb3ba48a64cb2acb5894bcd6d892d", "domain_name": "hzp_vdc", "name": "testuser123", "display_name": null, "enabled": true, "description": null, "vdc_id": "d8e2a487-843b-4309-9d14-e845f593411f", "vdc_name": "hzp_vdc", "ldap_id": null, "create_at": 1657358889000, "login_at": 0, "auth_type": "0", "group_count": null, "user_type": null }}其中,id为用户Id。步骤2:将用户加入指定用户组URLPUT https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id}/users/{user_id}其中,user_id需要通过“查询用户”接口获取,group_id需要通过“查询VDC下的用户组列表”接口获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无状态码:204(成功)响应体:无4.4 为指定用户组授权指定资源集步骤1:查询租户下的权限列表URLGET https://{SC北向接口域名}/rest/vdc/v3.0/OS-ROLE/roles/third-party/roles?domain_id={domain_id}其中,domain_id为租户id,可从4.2章节的步骤1获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "system_roles": [ { "id": "985dc76053f94685a15eafc3cd9f5da2", "domain_id": null, "domain_name": null, "name": "te_admin", "display_name": "Tenant Administrator", "flag": null, "catalog": "BASE", "type": "AA", "description_cn": "全部云服务管理员(除IAM管理权限)", "description": "Tenant Administrator (Exclude IAM)", "cloud_platform": "private_cloud", "policy": {"Version":"1.0","Depends":[],"Statement":[{"Effect":"Allow","Action":["*"],"Resource":[]},{"Effect":"Deny","Action":["identity:*"],"Resource":[]}]} }, { "id": "086600a36bc44cb3a5cb9475ddc32da0", "domain_id": null, "domain_name": null, "name": "readonly", "display_name": "Tenant Guest", "flag": null, "catalog": "BASE", "type": "AA", "description_cn": "全部云服务只读权限(除IAM权限)", "description": "Tenant Guest (Exclude IAM)", "cloud_platform": "private_cloud", "policy": {"Version":"1.0","Depends":[],"Statement":[{"Effect":"Allow","Action":["::Get","::List"],"Resource":[]},{"Effect":"Deny","Action":["identity:*"],"Resource":[]}]} }, { "id": "4d0cd24102504767b33fd55d915c55e8", "domain_id": null, "domain_name": null, "name": "vdc_adm", "display_name": "VDC Admin", "flag": null, "catalog": "VDC", "type": "AA", "description_cn": "具有所属VDC及下级VDC的业务管理权限", "description": "Permission to manage services in the VDC that the user group belongs to and its lower-level VDCs", "cloud_platform": "private_cloud", "policy": {"Version":"1.0","Depends":[],"Statement":[{"Effect":"Allow","Action":["moscapp:service*:*","moscapp:resource*:*","moscapp:organization*:*","moscapp:operation*:*","moscapp:application*:*","moscapp:tenant-system*:*","moscapp:personal-center*:*"],"Resource":[]}]} }, { "id": "7c554e7930544a99868465c4954eb5cb", "domain_id": null, "domain_name": null, "name": "vdc_readonly", "display_name": "VDC Readonly", "flag": null, "catalog": "VDC", "type": "AA", "description_cn": "具有对租户中用户、资源集、自运维等的查询权限", "description": "Permission to query information about users and resource sets as well as self-service OM data in the tenant that the user group belongs to", "cloud_platform": "private_cloud", "policy": {"Version":"1.0","Depends":[],"Statement":[{"Effect":"Allow","Action":["moscapp:service*:console","moscapp:service*.list","moscapp:service*.get","moscapp:resource*:console","moscapp:resource*:list","moscapp:resource*:get","moscapp:organization*:console","moscapp:organization*:list","moscapp:organization*:get","moscapp:operation*:console","moscapp:operation*:list","moscapp:operation*:get","moscapp:application*:console","moscapp:application*:list","moscapp:application*:get","moscapp:tenant-system*:console","moscapp:tenant-system*:list","moscapp:tenant-system*:get","moscapp:personal-center*:console","moscapp:personal-center*:list","moscapp:personal-center*:get"],"Resource":[]}]} }, ], "custom_roles": []}其中,取id字段为权限id。例如,vdc只读权限的id为7c554e7930544a99868465c4954eb5cb。步骤2:为指定用户组授权资源集权限URLPUT https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id}/roles其中,group_id为用户组id,从4.2章节的步骤2或步骤3获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例:{ "group": { "action": "add", "roles": [ { "id": "086600a36bc44cb3a5cb9475ddc32da0", "inherit": false, "targets": [ { "id": "6934bce513274fd9b20955c3db9728f0" } ] } ] }}请求参数说明:group包含以下字段:action:操作,取值可为add、delete;roles:角色。对象数组。roles包含以下字段:id:权限id,从步骤1获取。inherit:权限是否继承。targets:授权的目标资源集。对象数组。对象内包含资源集的id字段。4.4 其他接口1. 将用户从指定用户组移除URLDELETE https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id}/users/{user_id}其中,user_id需要通过“查询用户”接口获取,group_id需要通过“查询用户详情”接口获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无状态码:204(成功)响应体:无2. 删除用户组注:删除用户组后会自动解除用户与用户组关联关系,用户权限需重新添加,请谨慎操作。URLDELETE https://{SC北向接口域名}/rest/vdc/v3.2/groups/{group_id}其中,group_id需要通过“查询VDC下的用户组列表”接口获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无状态码:204(成功)响应体:无3. 查询用户绑定的用户组接口约束:运营管理员可查询全量用户。VDC管理员仅可查询本VDC以及子级VDC的用户。URLGET https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}其中,user_id为用户id。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "limit_access": "false", "lock_period": null, "login_config": null, "whiteList": null, "user": { "enabled": "true", "description": "", "email": "", "areacode": null, "phone": "", "projects": [], "ldap_id": null, "level": "1", "resource_tenant_id": null, "roles": [ { "id": "00000000-0000-0000-0000-000000000001", "name": "vdcServiceManager", "display_name": "VDC Admin", "user_role_type": null, "description": "role_role_view_para_desc_content_vdcServiceManager_value" } ], "groups": [ { "id": "8afb852688194e408f4edf4bf8c8a690", "name": "SC_289yUXfSpzD", "description": "", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "role_name": null, "vdc_name": "SC_289OHFUVQdL", "role_id": null, "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444" }, { "id": "cdafab1cfe2e4c129d4878b13e171333", "name": "admin_bc0366f0-3b60-486f-a88e-2a38266dd444", "description": "Default VDC administrator group, having the permission to manage services in the VDC that the user group belongs to and its lower-level VDCs.", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "role_name": "vdcServiceManager", "vdc_name": "SC_289OHFUVQdL", "role_id": "00000000-0000-0000-0000-000000000001", "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444" } ], "display_name": null, "second_verify": "false", "vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444", "domain_id": "7111b7a59bff48fa983a6309fae3d7f7", "domain_name": "SC_289OHFUVQdL", "user_type": "0", "name": "SC_289yUXfSpzD", "login_at": null, "id": "b76fc5607bff4ec094891c930cf3b0de", "tag": "vdc", "top_vdc_id": "bc0366f0-3b60-486f-a88e-2a38266dd444", "ldap_name": null }, "federation_regions": []}其中,id为用户Id,name为用户名称,domain_id为租户Id,vdc_id为所属的VDC Id。groups为用户绑定的用户组。4. 删除用户接口约束:1.删除用户时,需确保该用户没有未完成的审批流程、审批任务、订单。2.运营管理员token可删除任意用户,VDC管理员token仅可删除本VDC或子级VDC下的用户。URLDELETE https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体:无成功状态码:200
-
步骤0:获取运营管理员token参考:cid:link_0步骤1:创建租户/VDCURLPOST https://{SC北向接口域名}/rest/vdc/v3.1/vdcs请求体Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "vdc": { "upper_vdc_id": "0", "name": "testvdc", "description": "", "mfa_status": false }}参数说明:name:VDC名称,长度为1-64位,只能由中文、英文字母(不区分大小写)、数字、下划线组成,且不能以数字、"op_"、"shadow_"开头。upper_vdc_id:上级VDC的Id,若创建一级VDC(租户),则填写0。description:描述,长度在0-255之间,不能包含"<"和">"。mfa_status:该租户下用户是否开启双因子认证,false默认不开启。响应体示例{ "vdc": { "default_project": null, "default_project_name": null, "regions": [], "upper_vdc_id": "0", "name": "testvdc", "description": "", "mfa_status": false, "ldap_id": null, "all_quotas": "1", "processes": null, "third_type": "0", "cloud_federation_rate": null, "enterprise_id": null, "status": false, "tag": "vdc", "enterprise_detail": null, "extra": null, "create_user_name": null, "domain_description": null, "enabled": 1, "domain_id": "6383f8307d2d45efbc3d547c0afe07cc", "domain_name": null, "id": "8c8cca18-2418-4c4e-91ee-b1f848e0de25", "create_user_id": "a56bf873148944dfa0dacadd2e19be50", "is_domain": false, "level": 1, "create_at": 0 }}其中,id为VDC Id,name为VDC名称,domain_id为租户Id,upper_vdc_id为上级VDC Id。步骤2:查询Region列表,授权租户可用的Region、资源池、可用分区URLGET https://{SC北向接口域名}/rest/serviceaccess/v3.0/regions请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 2, "records": [ { "id": "dg-tky-12", "public_region_id": null, "type": "private_cloud", "name": "东莞", "status": "normal", "isLocal": true, "locales": "{\"zh_cn\":\"东莞\",\"en_us\":\"东莞\"}", "cloud_infras": [ { "id": "FUSION_CLOUD_dg-tky-12", "name": "OpenStack_dg-tky-12", "region_id": "dg-tky-12", "type": "FUSION_CLOUD", "version": "8.1", "status": "normal", "access_status": "connected", "description": null, "public_cloud_infra_id": null } ] }, { "id": "dg-tky-13", "public_region_id": null, "type": "private_cloud", "name": "华南Region2", "status": "normal", "isLocal": true, "locales": "{\"zh_cn\":\"华南Region2\",\"en_us\":\"华南Region2\"}", "cloud_infras": [ { "id": "FUSION_CLOUD_dg-tky-13", "name": "OpenStack_dg-tky-13", "region_id": "dg-tky-13", "type": "FUSION_CLOUD", "version": "8.1", "status": "normal", "access_status": "connected", "description": null, "public_cloud_infra_id": null } ] } ]}其中,从响应体中取records.id为region_id(如dg-tky-12),取records.cloud_infras.id为资源池id(如FUSION_CLOUD_dg-tky-12)步骤3:查询资源池下的可用分区列表URLGET https://{SC北向接口域名}/rest/serviceaccess/v3.0/available-zones?cloud_infra_id={cloud_infra_id}其中,cloud_infra_id从步骤2查询结果获取。请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 3, "records": [ { "az_id": "az0.dc1", "region_id": "dg-tky-12", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "name": "华为", "type": "KVM", "status": "normal", "extend_param": "{\"cloud_location\":\"localcloud\"}" }, { "az_id": "az0.dc2", "region_id": "dg-tky-12", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "name": "华为_x86", "type": "KVM", "status": "normal", "extend_param": "{\"cloud_location\":\"localcloud\"}" }, { "az_id": "az0.bms", "region_id": "dg-tky-12", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "name": "华为_BMS", "type": "Ironic", "status": "normal", "extend_param": "{\"cloud_location\":\"localcloud\"}" } ]}其中,取az_id为可用分区id,例如az0.dc1。步骤4:为租户/一级VDC授权Region、资源池、可用分区URLPUT https://{SC北向接口域名}/rest/vdc/v3.1/vdcs/{vdc_id}/regions其中,vdc_id从步骤1中的响应体获取。请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体示例:{ "regions": [ { "region_id": "dg-tky-12", "action": "bind", "cloud_infras": [ { "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "action": "bind", "available_zones": [ { "az_id": "az0.bms", "action": "bind" }, { "az_id": "az0.dc1", "action": "bind" }, { "az_id": "az0.dc2", "action": "bind" } ] } ] }, { "region_id": "dg-tky-13", "action": "bind", "cloud_infras": [ { "cloud_infra_id": "FUSION_CLOUD_dg-tky-13", "action": "bind", "available_zones": [ { "az_id": "az1.dc1", "action": "bind" } ] } ] } ]}如果需要解绑Region、资源池或可用分区,将上述请求体中的action字段的bind值改为unbind即可。状态码:204(成功)响应体:无步骤5:查询云资源池下外部网络列表(非一级VDC可跳过)URLGET https://{SC北向接口域名}/rest/serviceaccess/v3.0/external-networks?cloud_infra_id={cloud_infra_id}其中,cloud_infra_id需要为步骤4已授权的cloud_infra_id。请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "external_networks": [ { "id": "a340cd45-fa9f-41cb-96a8-672507e08f71", "name": "EIP_external_net", "location": null, "group": "group1", "service_availability_zones": [], "service_types": [ "Internet" ], "description": "" }, { "id": "8049223b-ed6a-40fd-b1e7-2d8390b31719", "name": "dummy_external_network", "location": null, "group": "group1", "service_availability_zones": [ "az0.dc2" ], "service_types": [ "Location" ], "description": "" } ], "total": 2}其中,取external_networks.id为外部网络的id,例如a340cd45-fa9f-41cb-96a8-672507e08f71。步骤6:为租户分配外部网络(非一级VDC可跳过)注:新创建的租户不执行此步骤则无法创建VPC、EIPURLPUT https://{SC北向接口域名}/rest/vdc/v3.0/vdcs/external-networks/{network_id}其中,network_id为步骤5的外部网络的id。请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体示例:{ "resource_id": "e030b8e0-621d-4bfd-b66b-212a86341f51", "cloudInfraId": "FUSION_CLOUD_dg-tky-12", "networkName": "external network", "associateAction": true}其中,resource_id为一级VDC的id,从步骤1获取;cloudInfraId为资源池id,为步骤5的url中填写的参数;networkName为网络名称,该值可自定义;associateAction为分配动作,true表示分配,false表示取消分配。步骤7:查询VDC列表(可选)URLGET https://{SC北向接口域名}/rest/vdc/v3.0/vdcs?start=0&limit=1000其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-1000之间,默认值为20。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询VDC列表“接口。)参数类型描述namestringVDC名称,长度在0-128之间。upper_vdc_idstring上级VDC id。domain_idstring所属租户id。levelint32VDC级别,取值在1-5之间。sort_keystring排序字段,支持按create_at、name字段排序。默认值:name。sort_dirstring排序方向,取值范围asc,desc。默认值:asc。is_domainstring是否为租户,1代表是,0代表不是。query_namestring过滤字段。取值范围domainName,upperVdcName,extraquery_valuestring过滤字段值。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "total": 4, "vdcs": [ { "id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "name": "hzp_vdc", "tag": "vdc", "description": null, "upper_vdc_id": "0", "upper_vdc_name": null, "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 2, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 1, "create_user_id": "9d30a3d12bac4d879e9e9fb4274b76ed", "create_user_name": "bss_admin", "create_at": 1650350228000, "utc_create_at": "2022-04-19 06:37:08.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null }, { "id": "bf588c5a-8d05-49bd-a93d-e937286893e5", "name": "hzp_vdc2", "tag": "vdc", "description": "", "upper_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "upper_vdc_name": "hzp_vdc", "top_vdc_id": "d86c3636-c637-4ee6-93ca-16c34b38b5c0", "extra": "{\"manager\":\"\",\"phone\":\"\",\"email\":\"\"}", "project_count": 1, "enabled": true, "domain_id": "16ea1a6e341d44e385fb3cb077c3b63f", "level": 2, "create_user_id": "d0cc23141778469f82854c5269d3d9ee", "create_user_name": "hzp_admin", "create_at": 1651040610000, "utc_create_at": "2022-04-27 06:23:30.0", "domain_name": "hzp_vdc", "ldap_id": null, "third_id": null, "idp_name": null, "third_type": "0", "region_id": null, "enterprise_id": null, "az_id": null, "enterprise_project_id": null } ]}部分响应体字段说明如下: id:VDC idname:vdc名称level:vdc级别,取值在1-5之间。description:描述domain_id:租户iddomain_name:租户名create_at/utc_create_at:创建时间upper_vdc_id:上级VDC idupper_vdc_name:上级VDC 名称project_count:project数量top_vdc_id:所在的一级VDC id。4.4 创建Project步骤1:查询VDC支持的区域URLGET https://{SC北向接口域名}/rest/vdc/v3.1/vdcs/{vdc_id}/regions请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无响应体示例{ "region_num": 1, "vdc_id": "e030b8e0-621d-4bfd-b66b-212a86341f51", "regions": [ { "region_id": "dg-tky-12", "action": null, "name": "{\"zh_cn\":\"东莞\",\"en_us\":\"东莞\"}", "type": "private_cloud", "status": "normal", "cloud_infras": [ { "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "name": "OpenStack_dg-tky-12", "type": "FUSION_CLOUD", "status": "normal", "available_zones": [ { "az_id": "az0.bms", "name": "华为_BMS", "status": "normal", "type": "Ironic", "extend_param": "{\"cloud_location\":\"localcloud\"}", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "quotas": [] }, { "az_id": "az0.dc1", "name": "华为", "status": "normal", "type": "KVM", "extend_param": "{\"cloud_location\":\"localcloud\"}", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "quotas": [] }, { "az_id": "az0.dc2", "name": "华为_x86", "status": "normal", "type": "KVM", "extend_param": "{\"cloud_location\":\"localcloud\"}", "cloud_infra_id": "FUSION_CLOUD_dg-tky-12", "quotas": [] } ], "quotas": [] } ] } ]}其中,取region_id为区域的id,例如dg-tky-12。步骤2:创建ProjectURLPOST https://{SC北向接口域名}/rest/vdc/v3.1/projects请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例:{ "project": { "tenant_id": "e030b8e0-621d-4bfd-b66b-212a86341f51", "name": "dg-tky-12_test_project", "display_name": "", "is_shared": "false", "description": "", "regions": [ { "region_id": "dg-tky-12" } ], "is_bind_external_network": true, "is_support_hws_service": true }}参数说明:tenant_id:填写project所属的vdc_id。与步骤1的url入参相同。必填。regions:绑定的区域id列表。必填。存在如下约束:如果绑定的region超过一个,那么仅支持HUAWEI CLOUD Stack 基础服务(计算、网络、存储),建议只绑定一个区域。name:project(项目/资源集)名称,必填。如果绑定的regions只有1个,名称需要加上“{region_id}_”前缀。is_shared:是否支持共享,true表示支持,false表示不支持。共享VPC的管理员创建VPC和子网并给下级VDC授予访问VPC中网络的权限,当“是否支持共享VPC”选择“是”时,拥有资源集授权的用户可以使用管理员在该资源集创建的VPC和子网,达到跨VDC的用户使用同一VPC的能力,使网络资源合理共享,实现更加灵活方便的管理和监控。选填。is_bind_external_network:是否绑定租户下分配的外部网络,true表示绑定,false表示不绑定。默认为true。选填。is_support_hws_service:资源集是否支持高阶云服务,true表示支持,false表示不支持。默认为false。如果绑定的region超过一个,此处只能填写false。选填。description:资源集描述,长度为0到255位,不能包含“<”和“>”。状态码:成功(201)响应体示例{ "project": { "id": "05713a92a38d45a8b4fa911fa3b9552e" }}注:非本级或上级VDC管理员需要授权才能获得project的操作权限,具体操作可参考“将用户加入指定用户组”、和“为指定用户组授权指定资源集”。步骤3:查询VDC关联的Project(可选)URLGET https://{SC北向接口域名}/rest/vdc/v3.1/vdcs/{vdc_id}/projects?start=0&limit=100其中,start为分页查询的起始位置,取值在0-2147483647之间,默认从0开始, 默认值为0。分页查询时,start需要为limit的整数倍;limit限制每页显示的条目数量,取值在1-100之间,默认值为10。可包含如下查询条件:(下表包含部分查询条件,全部查询条件请参考《ManageOne 运营面API参考.docx》中”查询指定VDC中资源集集合“接口。)参数类型描述inheritboolean是否查询VDC下所有可见VDC关联的资源集。默认值:falsenamestring模糊搜索所使用的名称字段,长度在1-64之间。sort_dirstring排序方向,取值范围asc,desc。默认值:asc请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 1, "projects": [ { "id": "6aa4d449d6fe4ea68c7cacb1a9803959", "name": "cn-global-205_hzp_project", "description": "", "domain_id": "e1fcb3ba48a64cb2acb5894bcd6d892d", "enabled": true, "tenant_id": "d8e2a487-843b-4309-9d14-e845f593411f", "is_shared": false, "tenant_name": "hzp_vdc", "create_user_id": "b9fd4029af7a4b71a085048b9bbe9072", "create_user_name": "bss_admin", "regions": [ { "region_id": "cn-global-205", "region_name": { "zh_cn": "西安", "en_us": "西安" }, "region_type": null, "region_status": "normal" } ] } ]}其中,id为project Id,name为project名称,domain_id为project所在的租户Id,tenant_id为project所属的VDC Id;tenant_name为project所属的VDC名称;description为project描述;regions为project关联的region信息。4.5 创建默认角色用户说明:此接口可创建系统默认角色用户(VDC管理员、VDC业务员、VDC只读管理员),支持租户用户绑定project。ManegeOne 8.0.3及以上版本,使用此接口创建租户用户,会自动创建同名用户组,并将用户与用户组绑定,然后绑定指定project。ManegeOne 8.0.3及以上版本使用此接口只能绑定系统默认角色,不支持细粒度授权特性,如果有此需求,请参考“如何通过API创建细粒度授权用户”。接口约束:运营管理员角色用户必须使用运营管理员token才能创建;VDC管理员token仅可在本VDC或子级VDC下创建用户。运营管理员token支持在任意VDC下创建用户。URLPOST https://{SC北向接口域名}/rest/vdc/v3.0/users请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "tenant_id": "1d165aa8-7309-4ec7-9854-8d24334bc6ed", "user": { "name": "testuser", "password": "tT123456#", "roles":["00000000-0000-0000-0000-000000000001"], "description":"" }}参数说明:tenant_id:用户所属VDC的Id(非domain_id),参考4.3的步骤7获取。若创建运营管理员为运营管理员的domain_id。user对象中包含以下参数:name:用户名,只能由英文字母(区分大小写)、数字和特殊字符@._-组成,不能以“op_svc”、“paas_op”或\开头,且不能以\结尾,且不能命名为admin、power_user、或guest。长度范围是4到32位。必选。password:密码,包含以下四种字符的三种: 大写字母、小写字母、数字、特殊字符(除<和>字符),且必须包含特殊字符,不能包含名字正序或逆序。长度:8到32个字符 。必选。roles:角色。数据类型:List。常用角色:运营管理员:“00000000-0000-0000-0000-000000000000”;VDC管理员:“00000000-0000-0000-0000-000000000001”;VDC业务员:“00000000-0000-0000-0000-000000000002”;VDC只读管理员:“00000000-0000-0000-0000-000000000005”。必选。projects:授权用户的资源集/项目列表。VDC管理员角色默认拥有所在VDC和子级VDC的资源集权限,可不填写。其他租户角色需要关联project才拥有对应资源集权限。运营管理员角色不需要填写此参数。数据类型:List。project id和获取方法可参考4.4章节的步骤2或步骤3。description:描述,不能包含<或者>字符。长度:0到255个字符。可选。email:邮箱,符合邮箱格式,长度:0到64个字符。可选。areacode:国际区号,只能为数字,长度:0到10个字符。可选。phone:手机号,只能为数字,长度:0到32个字符。可选。响应体示例{ "user": { "id": "811498d36a674e698b25d7d73c817f3f" }}其中,id为用户Id。4.6 其他接口1. 查询用户列表接口约束:运营管理员token可查询全量用户。VDC管理员仅可查询本VDC以及子级VDC的用户。URLGET https://{SC北向接口域名}/rest/vdc/v3.0/users?limit=100&start=0URL常用参数:(完整参数请参考《ManageOne 运营面API参考》)start:分页查询的起始位置,最小值:0 ,最大值:2147483647 ,默认值:0。可选。limit:限制每页显示的条目数量,最小值:1,最大值:100 ,默认值:10。可选。tenant_id:用户归属的VDC ID。可选。name:按照名称或显示名字段模糊搜索。长度:1到128个字符。可选。exact:是否精确匹配,枚举值:true和false,默认值:false。可选。请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx响应体示例{ "total": 1, "users": [ { "enabled": "true", "description": "", "email": "", "areacode": "", "phone": "", "vdc_name": "hzp_vdc", "resource_tenant_id": null, "level": null, "roles": [ { "id": "00000000-0000-0000-0000-000000000001", "name": "vdcServiceManager", "display_name": "VDC Admin", "user_role_type": "0" } ], "display_name": "", "vdc_id": "8c3e288e-49a5-4eab-90a0-47916dac8589", "domain_id": "9b01faf18f454c59a6fd157f0c82e556", "domain_name": "hzp_vdc", "user_type": "0", "name": "hzp_admin", "login_at": "2022-04-18 01:24:27.0", "id": "b7f8bc098f4f4891b93eeff5dcdfc6b5", "create_at": "2022-02-23 06:55:53.0" } ]}其中,id为用户Id,name为用户名称,domain_id为租户Id,vdc_id为所属的VDC Id。2. 修改用户密码接口约束:运营管理员可修改任意用户的密码;VDC管理员仅可修改本VDC或子级VDC下的用户密码;VDC业务员仅可修改自己的密码。URLPUT https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}/password其中,user_id需要通过“查询用户列表”接口获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "user": { "original_password": "******", "password": "******" } }参数说明: original_password:原始密码。 password:密码,必须包含以下四种字符的三种: 大写字母、小写字母、数字、特殊字符(除<和>字符),且必须包含特殊字符,不能包含名字正序或逆序。长度:8到32个字符。状态码:200(重置密码成功)响应体:无3. 重置用户密码接口约束:运营管理员可重置任意用户的密码;VDC管理员仅可重置本VDC或子级VDC下的用户密码;VDC业务员仅可重置自己的密码。重置密码后,用户在第一次登录ManageOne页面时,会被要求修改密码,如果希望解除此限制,可以先调“重置用户密码”接口,再调“修改用户密码”接口。URLPUT https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}/reset-password其中,user_id需要通过“查询用户”接口获取。请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例{ "user": { "password": "*****" } }参数说明: password:密码,必须包含以下四种字符的三种: 大写字母、小写字母、数字、特殊字符(除<和>字符),且必须包含特殊字符,不能包含名字正序或逆序。长度:8到32个字符状态码:200(重置密码成功)响应体:无4. 修改用户基本信息URLPUT https://{SC北向接口域名}/rest/vdc/v3.2/users/{user_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例(完整参数请参考《ManageOne 运营面API参考》){ "user": { "description": "test" }}user中可包含如下字段:display_name:用户别名,由除">"和"<"之外的字符组成,0-128个字符。可选。enabled:用户状态,枚举值:true或false,默认为true。为false时,表示用户处于停用状态。可选。description:说明,不能包含<或>字符,长度:0到255个字符。可选。email:邮箱,符合邮箱格式,长度:0到64个字符。可选。areacode:国际区号,长度:0到10个字符。可选。phone:手机号,长度:0到32个字符。可选。状态码:204(成功)响应体:无5. 删除用户接口约束:1.删除用户时,需确保该用户没有未完成的审批流程、审批任务、订单。2.运营管理员token可删除任意用户,VDC管理员token仅可删除本VDC或子级VDC下的用户。URLDELETE https://{SC北向接口域名}/rest/vdc/v3.0/users/{user_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体:无成功状态码:2006. 修改Project基本信息URLPUT https://{SC北向接口域名}/rest/vdc/v3.0/projects/{project_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体示例(完整参数请参考《ManageOne 运营面API参考》){ "project": { "name": "name", "description": "desc" } }常用字段说明:name:资源集名称,以{region_id}_开头,只能由英文字母、中文、数字、中划线、下划线或者英文括号组成。长度范围1到64位。可选。display_name:资源集别名,不能包含“<”和“>”,长度为0到64位。可选。description:资源集描述,长度为0到255位,不能包含“<”和“>”。可选。状态码:204(成功)响应体:无7. 删除Project接口约束: 删除资源集时,需确保该资源集内的所有资源均已清除。若不满足,接口会报错“movdc-02284:Resource set xxxx has resources in use.”URLDELETE https://{SC北向接口域名}/rest/vdc/v3.0/projects/{project_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx请求体:无状态码:成功(204)响应体:无8. 删除租户/VDC接口约束:删除VDC时,需确保:1. 不存在子级VDC;2. VDC内不存在用户;3. VDC内不存在资源集。若不满足,接口会报错“movdc-01136:The VDC has x lower-level VDCs, x users, x resource sets that include resources.”URLDELETE https://{SC北向接口域名}/rest/vdc/v3.0/vdcs/{vdc_id}请求头Content-Type:application/json X-Auth-Token:x-xxxxxxxxxxx响应体:无成功状态码:204
-
1 数据分析平台介绍数据分析平台及相关接口可介绍参考:cid:link_02 分布式消息服务(DMS)性能查询注:调用API步骤可参考:cid:link_0HCS 8.5.1及以上版本支持查询。2.1 Kafka性能查询URLPOST https://{OC北向接口域名}/rest/analysis/v1/datasets/perf-namespace-sys-dms?pageNo=1&pageSize=1000请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体(建议endTime取当前时间的时间戳,beginTime取10分钟前的时间戳){ "timeRange": { "beginTime": 1646985312000, "endTime": 1647071952452 }, "filters": { }, "dimensions": [ { "field": "dimensions.object.id", "index": 1 }, { "field": "dimensions.object.name", "index": 2 } ], "metrics": [ { "aggType": "avg", "field": "metrics.group_msgs" }, { "aggType": "avg", "field": "metrics.current_partitions" } ]}注:响应体中的id可对应CLOUD_DMS_INSTANCE的resId。响应体中可能存在一些无性能数据的空字段,直接忽略即可。相关接口:查询DMS实例列表:GET https://{OC北向接口域名}/rest/tenant-resource/v1/instances/CLOUD_DMS_INSTANCE?pageNo=1&pageSize=1000指标说明(指标关键字/指标含义/单位) 上报频率:1min。(以OC资源性能界面显示为准) 注:如果未查询到性能数据,请登录”OC界面->集中监控->资源监控“,找到对应资源,检查该资源性能指标是否有数据。如果页面上无数据,表明该指标未上报数据;若页面上有数据,请检查参数是否有误。kafka(实例)性能指标:group_msgs--Kafka堆积消息数--Countcurrent_partitions--分区数--Countcurrent_topics--主题数--Countkafka(节点)性能指标:查询以下指标时,需添加维度dimensions.oridim.kafka_brokerbroker_bytes_in_rate--节点生产流量(Kafka)--byte/sbroker_connections--连接数--Countbroker_total_bytes_in_rate--网络入流量--byte/sbroker_cpu_usage--CPU使用率--%broker_disk_write_rate--磁盘写流量--byte/sbroker_memory_usage--内存使用率--%broker_alive--节点存活状态--Countbroker_disk_usage--磁盘容量使用率--%broker_disk_read_await--磁盘平均读操作耗时--msbroker_cpu_core_load--CPU核均负载--Countbroker_data_size--节点数据容量--bytebroker_fetch_mean--消费请求平均处理时长--msbroker_bytes_out_rate--节点消费流量(Kafka)--byte/sbroker_messages_in_rate--节点消息生产速率(Kafka)--Count/sbroker_disk_write_await--磁盘平均写操作耗时--msbroker_produce_mean--生产请求平均处理时长--msbroker_total_bytes_out_rate--网络出流量--byte/sbroker_disk_read_rate--磁盘读流量--byte/sbroker_heap_usage--Kafka进程JVM堆内存使用率--%kafka(消费组)性能指标:查询以下指标时,需添加维度dimensions.oridim.kafka_groupsconsumer_messages_consumed--消费组已消费消息数--Countconsumer_messages_remained--Kafka消费组可消费消息数--Countkafka(主题)性能指标:查询以下指标时,需添加维度dimensions.oridim.kafka_topicstopic_bytes_in_rate--主题生产流量--byte/stopic_data_size--主题数据容量--bytetopic_messages_in_rate--主题消息生产速率(Kafka)--Count/stopic_messages--主题消息总数--Counttopic_bytes_out_rate--主题消费流量(Kafka)--byte/s2.2 RocketMQ性能查询URLPOST https://{OC北向接口域名}/rest/analysis/v1/datasets/perf-namespace-sys-dms?pageNo=1&pageSize=1000请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体(建议endTime取当前时间的时间戳,beginTime取10分钟前的时间戳){ "timeRange": { "beginTime": 1646985312000, "endTime": 1647071952452 }, "filters": { }, "dimensions": [ { "field": "dimensions.object.id", "index": 1 }, { "field": "dimensions.object.name", "index": 2 } ], "metrics": [ { "aggType": "avg", "field": "metrics.current_queues" }, { "aggType": "avg", "field": "metrics.instance_produce_msg" } ]}注:响应体中的id可对应CLOUD_DMS_INSTANCE的resId。响应体中可能存在一些无性能数据的空字段,直接忽略即可。相关接口:查询DMS实例列表:GET https://{OC北向接口域名}/rest/tenant-resource/v1/instances/CLOUD_DMS_INSTANCE?pageNo=1&pageSize=1000指标说明(指标关键字/指标含义/单位) 上报频率:1min。(以OC资源性能界面显示为准) 注:如果未查询到性能数据,请登录”OC界面->集中监控->资源监控“,找到对应资源,检查该资源性能指标是否有数据。如果页面上无数据,表明该指标未上报数据;若页面上有数据,请检查参数是否有误。RocketMQ(实例)性能指标:current_queues--队列数--Countinstance_produce_msg--实例消息生产数(RocketMQ)--Countcurrent_topics--主题数--Countinstance_consume_msg--实例消息消费数(RocketMQ)--Countinstance_accumulation--RocketMQ堆积消息数--CountRocketMQ(节点)性能指标:查询以下指标时,需添加维度dimensions.oridim.reliablemq_brokerbroker_memory_usage--内存使用率--%broker_produce_p999--节点生产请求P99.9处理时长--msbroker_disk_usage--磁盘容量使用率--%broker_produce_rate--节点消息生产速率(RocketMQ)--Count/sbroker_produce_msg--节点消息生产数(RocketMQ)--Countbroker_cpu_core_load--CPU核均负载--Countbroker_produce_success_rate--生产成功率--%broker_produce_p99--节点生产请求P99处理时长--msbroker_consume_msg--节点消息消费数(RocketMQ)--Countbroker_produce_scheduled_msg--一分钟生产定时消息数--Countbroker_disk_write_rate--磁盘写流量--byte/sbroker_cpu_usage--CPU使用率--%broker_connections--连接数--Countbroker_total_bytes_in_rate--网络入流量--byte/sbroker_disk_read_await--磁盘平均读操作耗时--msbroker_disk_write_await--磁盘平均写操作耗时--msbroker_retention_period--消息保留时间--HOURSbroker_consume_rate--节点消息消费速率(RocketMQ)--Count/sbroker_total_bytes_out_rate--网络出流量--byte/sbroker_disk_read_rate--磁盘读流量--byte/sbroker_alive--节点存活状态--CountRocketMQ(消费组)性能指标:查询以下指标时,需添加维度dimensions.oridim.reliablemq_groupsgroup_accumulation--RocketMQ消费组可消费消息数--Countgroup_consume_msg--消费组消息消费数(RocketMQ)--CountRocketMQ(主题)性能指标:查询以下指标时,需添加维度dimensions.oridim.reliablemq_topicstopic_bytes_in_rate--主题生产流量--byte/stopic_consume_rate--主题消息消费速率(RocketMQ)--count/stopic_produce_rate--主题消息生产速率(RocketMQ)--Count/stopic_bytes_out_rate--主题消费流量--byte/stopic_consume_msg--主题消息消费数(RocketMQ)--Counttopic_produce_msg--主题消息生产数(RocketMQ)--CountRocketMQ(死信队列)性能指标:查询以下指标时,需添加维度dimensions.oridim.reliablemq_dlq_topicsdlq_accumulation--死信主题消息量--Count
-
1 数据分析平台介绍数据分析平台及相关接口可介绍参考:cid:link_02 云搜索服务(CSS)性能查询注:调用API步骤可参考:cid:link_0URLPOST https://{OC北向接口域名}/rest/analysis/v1/datasets/perf-namespace-sys-es?pageNo=1&pageSize=1000请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体(建议endTime取当前时间的时间戳,beginTime取10分钟前的时间戳){ "timeRange": { "beginTime": 1646985312000, "endTime": 1647071952452 }, "filters": { }, "dimensions": [ { "field": "dimensions.object.id", "index": 1 }, { "field": "dimensions.object.name", "index": 2 } ], "metrics": [ { "aggType": "avg", "field": "metrics.nodes_count" }, { "aggType": "avg", "field": "metrics.avg_free_fs_size" } ]}注:响应体中的id可对应CLOUD_CSS_CLUSTER的resId。响应体中可能存在一些无性能数据的空字段,直接忽略即可。相关接口:查询css列表:GET https://{OC北向接口域名}/rest/tenant-resource/v1/instances/CLOUD_CSS_CLUSTER?pageNo=1&pageSize=1000指标说明(指标关键字/指标含义/单位) 上报频率:1min。(以OC资源性能界面显示为准) 注:如果未查询到性能数据,请登录”OC界面->集中监控->资源监控“,找到对应资源,检查该资源性能指标是否有数据。如果页面上无数据,表明该指标未上报数据;若页面上有数据,请检查参数是否有误。max_jvm_heap_usage--最大JVM堆使用率--%max_cpu_time_of_jvm_process--最大JVM进程使用的CPU时间--mssum_thread_pool_force_merge_rejected--Forcemerge队列中总的已拒绝任务数avg_max_file_descriptors--最大允许的文件描述符数avg_thread_pool_write_rejected--Write队列中平均已拒绝任务数max_mem_used_in_bytes--最大已用内存空间--bytesum_thread_pool_index_threads--Index线程池总大小avg_jvm_old_gc_count--JVM老年代平均GC次数IndexingLatency--平均索引延迟--msavg_thread_pool_index_threads--Index线程池平均大小total_fs_size--文件系统总大小--bytemax_current_opened_http_count--最大当前打开的Http连接数sum_thread_pool_force_merge_threads--ForceMerge线程池总大小sum_thread_pool_index_queue--Index队列中总排队任务数sum_thread_pool_bulk_rejected--Bulk队列中总的已拒绝任务数max_jvm_young_gc_time--最大JVM Young GC耗时--msavg_thread_pool_bulk_threads--Bulk线程池平均大小total_shards_count--分片数量sum_jvm_old_gc_count--JVM老年代总GC次数sum_thread_pool_write_threads--Write线程池总大小max_thread_pool_bulk_queue--Bulk队列中最大排队任务数avg_thread_pool_index_queue--Index队列中平均排队任务数avg_thread_pool_bulk_queue--Bulk队列中平均排队任务数sum_thread_pool_write_queue--Write队列中总排队任务数avg_mem_used_in_bytes--平均已用内存空间--byteavg_thread_pool_write_threads--Write线程池平均大小avg_jvm_old_gc_time--JVM老年代平均GC时间--msmax_jvm_old_gc_count--最大JVM Old GC次数max_cpu_usage--最大CPU利用率--%docs_count--文档数量max_thread_pool_search_queue--Search队列中最大排队任务数primary_shards_count--主分片数量avg_jvm_young_gc_count--JVM年轻代平均GC次数sum_thread_pool_force_merge_queue--ForceMerge队列中总排队任务数avg_mem_used_percent--平均已用内存比例--%sum_thread_pool_search_threads--Search线程池总大小coordinating_nodes_count--协调节点数量min_free_fs_size--最小可用存储空间--bytemaster_nodes_count--Master节点数量sum_open_file_descriptors--已打开的文件描述符数avg_thread_pool_write_queue--Write队列中平均排队任务数status--集群健康状态max_thread_pool_force_merge_queue--ForceMerge队列中最大排队任务数max_mem_used_percent--最大已用内存比例--%SearchRate--平均查询速率max_total_opened_http_count--最大全部打开的Http连接数avg_thread_pool_search_threads--Search线程池平均大小max_open_file_descriptors--已打开的最大文件描述符数sum_thread_pool_bulk_threads--Bulk线程池总大小sum_thread_pool_search_rejected--Search队列中总的已拒绝任务数max_mem_free_in_bytes--最大可用内存空间--byteingest_nodes_count--Client节点数量avg_thread_pool_search_queue--Search队列中平均排队任务数SearchLatency--平均查询延迟--msavg_thread_pool_force_merge_threads--ForceMerge线程池平均大小avg_load_average--平均节点Load值sum_jvm_old_gc_time--JVM老年代总GC时间--mssum_jvm_young_gc_count--JVM年轻代总GC次数sum_thread_pool_write_rejected--Write队列中总的已拒绝任务数max_load_average--最大节点Load值docs_deleted_count--被删除的文档数量sum_thread_pool_index_rejected--Index队列中总的已拒绝任务数max_mem_free_percent--最大可用内存比例sum_total_opened_http_count--历史已打开http连接数sum_jvm_young_gc_time--JVM年轻代总GC时间--msnodes_count--节点数量avg_cpu_usage--平均CPU使用率--%max_thread_pool_index_queue--Index队列中最大排队任务数data_nodes_count--数据节点数量max_jvm_young_gc_count--最大JVM Young GC次数avg_open_file_descriptors--已打开的平均文件描述符数sum_max_file_descriptors--最大允许的文件描述符数sum_thread_pool_bulk_queue--Bulk队列中总排队任务数avg_jvm_heap_usage--平均JVM堆使用率--%avg_mem_free_in_bytes--平均可用内存空间--byteavg_mem_free_percent--平均可用内存比例--%max_jvm_old_gc_time--最大JVM Old GC耗时--msavg_thread_pool_force_merge_queue--ForceMerge队列中平均排队任务数disk_util--磁盘使用率--%IndexingRate--平均索引速率avg_jvm_young_gc_time--JVM年轻代平均GC时间--mssum_thread_pool_search_queue--Search队列中总排队任务数free_fs_size--文件系统可用大小--byteindices_count--索引数量sum_current_opened_http_count--当前已打开http连接数max_virtual_memory_size_of_jvm_process--最大JVM进程使用的虚拟内存大小--byteavg_free_fs_size--平均可用存储空间--byte
-
1 数据分析平台介绍数据分析平台及相关接口可介绍参考:cid:link_02 AppCube性能查询注:调用API步骤可参考:cid:link_0URLPOST https://{OC北向接口域名}/rest/analysis/v1/datasets/perf-namespace-app-appcube?pageNo=1&pageSize=1000请求头Content-Type:application/jsonX-Auth-Token:x-xxxxxxxxxxx请求体(建议endTime取当前时间的时间戳,beginTime取10分钟前的时间戳){ "timeRange": { "beginTime": 1646985312000, "endTime": 1647071952452 }, "filters": { }, "dimensions": [ { "field": "dimensions.object.id", "index": 1 }, { "field": "dimensions.object.name", "index": 2 } ], "metrics": [ { "aggType": "avg", "field": "metrics.appcube_nginx_apdex_overall" }, { "aggType": "avg", "field": "metrics.appcube_nginx_response_time_avg" } ]}注:响应体中的id可对应CLOUD_APPCUBE_INSTANCE的resId。响应体中可能存在一些无性能数据的空字段,直接忽略即可。相关接口:查询appcube列表:GET https://{OC北向接口域名}/rest/tenant-resource/v1/instances/CLOUD_APPCUBE_INSTANCE?pageNo=1&pageSize=1000指标说明(指标关键字/指标含义/单位) 上报频率:1min。(以OC资源性能界面显示为准) 注:如果未查询到性能数据,请登录”OC界面->集中监控->资源监控“,找到对应资源,检查该资源性能指标是否有数据。如果页面上无数据,表明该指标未上报数据;若页面上有数据,请检查参数是否有误。appcube_nginx_apdex_overall--5分钟维度的应用性能指数--%appcube_nginx_request_byte_sent--5分钟内响应客户端请求消耗的平均带宽--MBpsappcube_nginx_tpm--实例每分钟处理请求的吞吐量之和--Count/mappcube_nginx_response_time_avg--实例每分钟请求平均响应时长--sappcube_nginx_request_client_error_rate--实例每分钟客户端请求错误率--%appcube_nginx_request_server_error_rate--实例每分钟服务端请求错误率--%appcube_cce_cluster_status--CCE集群健康状态appcube_dmax_tenantCurrentPages--DMAX当前已使用页面数量--Countappcube_dmax_tenantMaxPages--DMAX最大可用页面数量--Countappcube_dmax_tenantUsedPercent--DMAX页面使用率--%
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签