华为云政企自服务管理服务ESM对接使用完全指南
前言:政企上云时代的运营管理新范式
随着数字化转型的深入,越来越多的政企客户选择将业务部署在华为专属云、HCSO(华为云Stack Online)等混合云环境中。然而,上云只是第一步,如何高效地管理云平台上的租户、资源配额、计量数据,以及如何实时掌握云平台的整体健康状态,成为政企IT部门面临的新挑战。
华为云政企自服务管理服务(Enterprise Self-Service Management,简称ESM)正是为解决这些问题而生的轻量化在线运营管理平台。ESM实现了与华为专属云的深度联动,帮助客户提升对专属云平台的自助运营管理能力。无论是集团内部的多子公司管理,还是政务云、行业云的ToB运营场景,ESM都能提供一站式的运营管理解决方案。
本文将从零开始,全面解析ESM服务的对接与使用方法,涵盖控制台操作、API开发对接、权限管理、最佳实践等多个维度,力求为政企客户的技术团队提供一份可落地的实操指南。
需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联
一、初识ESM:政企自服务管理的核心能力
1.1 什么是ESM
政企自服务管理(Enterprise Self-Service Management,ESM)是华为云提供的一项在线云平台运营自管理服务。它构建了一套轻量化的在线运营管理服务体系,通过与华为专属云的深度联动,显著提升客户对专属云平台的自助运营管理能力。
简单来说,ESM可以理解为专属云的"运营管理控制台",它让政企客户能够像使用公有云控制台一样,自主管理自己的专属云环境。ESM提供了全面的、多维度的站点状态展示与分析能力,帮助客户全面掌握云平台的健康状态。
1.2 ESM的核心功能模块
根据华为云官方产品介绍,ESM的核心功能可以概括为以下几个模块:
- 租户账号管理:支持租户的创建、删除、冻结、预注销等全生命周期管理,满足集团内部多子公司、多部门的账号隔离需求。
- 配额管理:可以为每个租户设置资源配额,精准控制租户可使用的云资源上限,防止资源被过度消耗。
- 计量话单服务:提供计量话单的查询与导出功能,支持通过API获取话单数据,便于进行成本核算和计费。
- 可视化运营大屏:提供云平台资源总览、硬件告警、云服务状态等实时可视化大屏,帮助运维人员快速感知平台状态。
- 开放API接口:开放100+大屏数据指标API接口,支持所见即所得的数据集成。
1.3 ESM的典型应用场景
ESM主要服务于以下三类典型场景:
- 集团内部经营管理:集团型公司面向子公司和分支机构的内部运营,需要提供本地的账号管理、配额管理、计量话单API等功能。
- 政务云/行业云运营场景:政务云和行业云类项目面向ToB的运营诉求,提供基于HCSO云平台运营大屏,同时开放运营指标API与客户自有平台对接。
- 传统企业业务上云:提供平台资源用量总览、租户资源总览、硬件性能指标,助力传统企业业务稳定上云。
二、ESM服务开通与访问准备
2.1 前提条件
在使用ESM服务之前,需要确保满足以下前提条件:
- 已注册华为云账号并完成实名认证。如果尚未注册,需要先完成注册和实名认证流程。
- 确认所在区域已开放ESM服务。ESM服务与华为专属云、HCSO等场景深度绑定,部分区域可能需要联系华为云技术支持开通。
- 具备相应的IAM权限。如果是首次使用,建议使用主账号或具有管理员权限的子账号进行操作。
2.2 通过控制台访问ESM
ESM提供了Web化的服务管理平台,即管理控制台管理方式。具体访问步骤如下:
- 登录华为云控制台。
- 单击左上角菜单,选择"所有服务" → "企业应用" → "政企自服务管理 ESM",进入ESM控制台。
- 单击界面上的"总览",进入总览页面。
- 单击"前往ESM工作台"进入ESM主界面。
如果用户已注册华为账号并实名认证,也可以直接从控制台主页搜索"政企自服务管理ESM"快速访问服务。
2.3 区域与终端节点
在后续的API对接中,需要用到ESM服务的终端节点(Endpoint)。终端节点即调用API的请求地址,不同服务不同区域的终端节点不同。例如,ESM服务在"华南-广州"区域的Endpoint为 esm-api.cn-south-1.myhuaweicloud.com。
在实际开发中,需要根据业务部署的区域选择对应的Endpoint。可以从华为云"地区和终端节点"页面查询所有区域的最新Endpoint信息。
三、ESM控制台操作指南
3.1 租户管理
租户管理是ESM最核心的功能之一。通过ESM控制台的"组织"菜单,可以完成租户的全生命周期管理。
创建租户:
- 在ESM控制台单击主菜单的"组织",默认进入"租户管理"页面。
- 单击"创建租户"按钮,填写租户名称、描述等基本信息。
- 设置租户的初始配额,包括CPU、内存、存储等资源的上限。
- 确认信息后提交,即可完成租户的创建。
租户配额管理:
在租户列表中找到目标租户,单击操作列的"设置配额",即可为租户配置各类资源的配额上限。配额管理的核心价值在于防止单一租户过度消耗平台资源,确保多租户环境下的资源公平分配。
租户状态管理:
ESM支持对租户进行冻结、预注销等操作。冻结后租户将无法使用云资源,预注销则标记租户为待删除状态,适用于租户退出场景的平滑过渡。
3.2 可视化运营大屏
ESM的可视化大屏是运维团队感知云平台状态的"第一窗口"。
访问大屏:
- 在ESM控制台单击主菜单的"可视化",默认进入"运营大屏"页面。
- 选择需要查看的大屏类型,单击进入大屏详情页。
- 大屏实时展示云平台资源总览、硬件告警、云服务状态等关键指标。
大屏数据获取:
如果希望将大屏数据集成到第三方系统,可以通过两种方式实现:
- API对接:ESM开放了100+大屏数据指标API接口,支持通过REST API获取大屏展示的各项数据。
- 报告导出:大屏页面本身提供了报告导出功能,可以将当前大屏数据导出为文件。
大屏所展示的内容与数据会按照细粒度授权的不同用户有所区分,确保了数据的安全隔离。
四、ESM API对接开发实战
对于需要将ESM能力集成到自有运营平台或进行自动化运维的场景,API对接是必不可少的环节。ESM提供了完整的REST API,支持对服务进行创建、删除、修改等操作。
4.1 API请求结构
ESM的API请求遵循标准的RESTful风格,请求URI由以下几部分组成:
{URI-scheme}://{Endpoint}/{resource-path}?{query-string}- URI-scheme:传输协议,当前所有API均采用HTTPS协议。
- Endpoint:承载REST服务端点的服务器域名或IP。
- resource-path:资源路径,即API的访问路径。
- query-string:查询参数,可选部分。
以创建查询任务为例,完整的请求URI为:
https://esm-api.cn-south-1.myhuaweicloud.com/meter/v1/{domain_id}/query-jobs4.2 认证鉴权机制
ESM调用接口支持Token认证鉴权。Token在计算机系统中代表临时令牌,拥有Token就代表拥有某种权限。
Token获取:
Token的有效期为24小时,需要通过调用获取用户Token接口获得。调用本服务API需要项目级别的Token,即请求body中 auth.scope 的取值需要选择 project。
Token请求体示例:
{
"auth": {
"identity": {
"methods": ["password"],
"password": {
"user": {
"name": "username",
"password": "********",
"domain": {
"name": "domainname"
}
}
}
},
"scope": {
"project": {
"name": "xxxxxxxx"
}
}
}
}Token使用:
获取Token后,在调用其他API时,需要在请求消息头中添加 X-Auth-Token,其值即为获取到的Token。
请求头示例:
POST https://esm-api.cn-south-1.myhuaweicloud.com/meter/v1/{domain_id}/query-jobs
Content-Type: application/json
X-Auth-Token: ABCDEFJ....4.3 计量话单API调用示例
计量话单是ESM的重要功能之一,通过API可以查询和导出话单数据。以下以"创建查询任务"为例,演示完整的API调用流程。
步骤一:创建查询任务
调用 POST /meter/v1/{domain_id}/query-jobs 接口创建话单查询任务。
使用cURL命令示例:
curl -X POST https://esm-api.cn-south-1.myhuaweicloud.com/meter/v1/{domain_id}/query-jobs \
-H "Content-Type: application/json" \
-H "X-Auth-Token: YOUR_TOKEN_HERE" \
-d '{
"startTime": "2026-01-01 00:00:00",
"endTime": "2026-01-31 23:59:59"
}'步骤二:查询任务状态
调用 GET /meter/v1/{domain_id}/query-jobs/{job_id} 接口查询任务执行状态。
使用cURL命令示例:
curl -X GET https://esm-api.cn-south-1.myhuaweicloud.com/meter/v1/{domain_id}/query-jobs/{job_id} \
-H "Content-Type: application/json" \
-H "X-Auth-Token: YOUR_TOKEN_HERE"步骤三:获取话单数据
任务完成后,调用 POST /meter/v1/{domain_id}/query-jobs/{job_id}/sdr 接口获取话单数据。
使用cURL命令示例:
curl -X POST https://esm-api.cn-south-1.myhuaweicloud.com/meter/v1/{domain_id}/query-jobs/{job_id}/sdr \
-H "Content-Type: application/json" \
-H "X-Auth-Token: YOUR_TOKEN_HERE"4.4 Python SDK对接示例
对于Python开发者,可以使用requests库封装ESM API调用。以下是一个完整的示例代码:
import requests
import json
class ESMClient:
def __init__(self, endpoint, domain_id, token):
self.endpoint = endpoint
self.domain_id = domain_id
self.token = token
self.headers = {
"Content-Type": "application/json",
"X-Auth-Token": token
}
def create_query_job(self, start_time, end_time):
"""创建话单查询任务"""
url = f"https://{self.endpoint}/meter/v1/{self.domain_id}/query-jobs"
payload = {
"startTime": start_time,
"endTime": end_time
}
response = requests.post(url, headers=self.headers, json=payload)
return response.json()
def get_job_status(self, job_id):
"""查询任务状态"""
url = f"https://{self.endpoint}/meter/v1/{self.domain_id}/query-jobs/{job_id}"
response = requests.get(url, headers=self.headers)
return response.json()
def get_job_data(self, job_id):
"""获取话单数据"""
url = f"https://{self.endpoint}/meter/v1/{self.domain_id}/query-jobs/{job_id}/sdr"
response = requests.post(url, headers=self.headers)
return response.json()
# 使用示例
if __name__ == "__main__":
client = ESMClient(
endpoint="esm-api.cn-south-1.myhuaweicloud.com",
domain_id="your_domain_id",
token="your_token_here"
)
# 创建查询任务
result = client.create_query_job("2026-01-01 00:00:00", "2026-01-31 23:59:59")
job_id = result.get("jobId")
print(f"任务创建成功,Job ID: {job_id}")
# 查询任务状态
status = client.get_job_status(job_id)
print(f"任务状态: {status}")
# 获取话单数据
data = client.get_job_data(job_id)
print(f"话单数据: {json.dumps(data, indent=2, ensure_ascii=False)}")五、ESM权限管理与安全实践
5.1 IAM权限体系
ESM服务与华为云统一身份认证服务(IAM)深度集成,支持精细化的权限管理。通过IAM,可以:
- 根据企业的业务组织,给企业中不同职能部门的员工创建IAM用户,让员工拥有唯一安全凭证并使用ESM服务。
- 根据企业用户的职能,设置不同的访问权限,实现用户之间的权限隔离。
5.2 授权流程
给用户授权ESM服务权限的标准流程如下:
- 创建用户组并授权:在IAM控制台创建用户组,并授予ESM服务的权限,如
ESM FullAccess或ESM ReadOnlyAccess。 - 创建用户并加入用户组:在IAM控制台创建用户,并将其加入已授权的用户组。
- 用户登录并验证权限:新创建的用户登录控制台,验证ESM服务的权限是否生效。
如果需要更细粒度的权限控制,可以结合IAM的自定义策略,实现特定操作或特定资源的权限管控。
5.3 安全建议
在生产环境中使用ESM时,建议遵循以下安全实践:
- 不使用主账号进行日常操作:账号对其所拥有的资源及云服务具有完全的访问权限,为了确保账号安全,建议不要直接使用账号进行日常管理工作。
- 定期轮换Token:Token有效期为24小时,建议在程序中缓存Token并在过期前主动刷新。
- 最小权限原则:仅为用户授予完成工作所需的最小权限集合,避免权限过度扩散。
- 启用操作审计:结合华为云云审计服务(CTS),记录ESM的所有API调用和操作日志,便于事后追溯。
六、ESM最佳实践与常见问题
6.1 租户管理最佳实践
在多租户管理场景下,建议遵循以下实践:
- 租户命名规范:建立统一的租户命名规范,如
{业务线}-{环境}-{序号},便于后续管理和识别。 - 配额预留:在为租户设置配额时,建议预留20%-30%的缓冲空间,避免业务高峰期因配额不足导致服务中断。
- 定期清理:定期检查租户列表,及时冻结或注销已停用的租户,释放平台资源。
6.2 大屏可视最佳实践
ESM的可视化大屏提供了丰富的运营数据视图,在实际使用中建议:
- 大屏订阅:通过自助管理租户下子用户的大屏订阅能力,保证订阅的安全性和可靠性。
- 自定义LOGO:支持自定义修改大屏LOGO,满足企业个性化展示需求。
- 数据下钻:运营大屏支持通过下钻查看服务器的硬件详情、资源分配以及监控信息,便于快速定位问题。
6.3 API调用最佳实践
在使用ESM API时,建议注意以下事项:
- Token缓存:Token获取接口是唯一不需要认证的接口,建议在程序中缓存Token并在有效期内复用,避免频繁调用Token接口。
- 错误重试:API调用可能因网络波动等原因失败,建议实现指数退避的重试机制。
- 分页查询:对于数据量较大的查询接口,注意使用分页参数(如
?limit=10)控制单次返回的数据量。
七、总结与展望
华为云政企自服务管理ESM为专属云和混合云场景提供了强大的运营管理能力。通过本文的详细介绍,相信读者已经对ESM的服务开通、控制台操作、API对接开发、权限管理等核心环节有了全面的认识。
ESM的核心价值在于:
- 为专属云用户提供资源池信息大屏可视以及大屏数据开放API共享能力。
- 满足租户账号开销户、配额管理等运营管理需求。
- 管理效率可提升30%以上。
随着政企上云的不断深入,ESM将持续演进,未来将支持局点升级变更与工单处理与华为云协同、warroom作战体系等更多功能。建议政企客户尽早将ESM纳入云运营体系,构建自主可控的云平台管理能力。
常见问题问答
问1:ESM服务和华为云其他管理服务有什么区别?
答:ESM是专门面向专属云和HCSO场景的运营管理服务,侧重于租户管理、配额管控、计量话单和可视化大屏等运营能力。而华为云的其他管理服务(如CES云监控、CTS云审计)更侧重于资源监控和操作审计,两者是互补关系。
问2:使用ESM API需要提前准备哪些信息?
答:需要准备:已实名认证的华为云账号、ESM服务所在区域的Endpoint(如华南-广州为 esm-api.cn-south-1.myhuaweicloud.com)、账号的domain_id、以及通过IAM获取的有效Token。
问3:ESM的计量话单数据可以查询多长时间的?
答:话单文件的最小查询日期为2022-01-01,即可以查询2022年1月1日至今的所有话单数据。查询时需要指定起止时间范围。
问4:ESM的可视化大屏数据能否导出到本地?
答:可以。有两种方式:一是通过ESM开放的大屏数据API接口获取;二是直接使用大屏页面提供的报告导出功能。
问5:如何给不同部门的员工授予不同的ESM权限?
答:通过华为云IAM服务实现。先在IAM创建用户组并授予对应的ESM权限(如 ESM FullAccess 或 ESM ReadOnlyAccess),然后将不同部门的员工IAM用户加入对应的用户组即可。
问6:ESM的Token有效期是多久?过期了怎么办?
答:Token的有效期为24小时。过期后需要重新调用获取用户Token接口获取新的Token。建议在程序中缓存Token并在过期前主动刷新,避免因Token过期导致API调用失败。



