活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 出海产品促销专区 NEW 爆款云主机低至2折,高性价比,不限新老速来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
  • MCP市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
模型推理服务
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V3.1
  • DeepSeek-R1-0528
  • DeepSeek-V3-0324
  • Qwen3-235B-A22B
  • Qwen3-32B
智算一体机
  • 智算一体机
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼信创云专区
  • 信创云专区
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
开源社区
  • 魔乐社区
  • OpenTeleDB

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 服务保障
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家
我要反馈
  • 建议与反馈
  • 用户体验官
信息公告
  • 客户公告

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      弹性云主机_相关内容
      • ALM-14019 DataNode非堆内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-14019 DataNode非堆内存使用率超过阈值
      • ALM-13002 ZooKeeper直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-13002 ZooKeeper直接内存使用率超过阈值
      • 身份管理
        绑定AD 绑定AD功能支持管理员自主配置和管理企业的身份提提供方Active Directory(以下简称 AD)。 操作场景 身份管理可以打破身份孤岛,实现统一访问控制,允许企业成员使用一个账号畅游所有应用。 操作步骤 1. 进入“天翼AI云电脑(政企版)”管理控制台; 2. 展开“身份管理”菜单栏,选择“身份提供方”,点击“绑定AD”,进入“绑定AD”页面; 第一步:连接AD 在第一步中,您需要在绑定AD中填写以下信息: 显示名称: 说明:管理员查看AD配置及相关操作日志时显示。 AD 域名: 说明:您的 Active Directory 域的全称。 格式:符合 DNS 命名规范(例如:example.com)。 示例:corp.yourcompany.com 主域控制器 DNS: 说明:主域控制器(Primary Domain Controller)的 IP 地址或可解析的主机名。 示例:192.168.1.10 或 dc01.corp.yourcompany.com 备域控制器 DNS (可选): 说明:备域控制器(Secondary Domain Controller)的 IP 地址或可解析的主机名。 示例:192.168.1.11 或 dc02.corp.yourcompany.com AD 认证账号: 说明:用于绑定和查询 AD 的管理员账号。此账号必须对整个 AD 目录至少拥有读取权限。 格式:支持以下格式: UPN 格式:username@domainname (例如:admin@corp.yourcompany.com) DN 格式:CNUsername, OUSomeOU, DCcorp, DCyourcompany, DCcom (例如:CNsvcbind, OUService Accounts, DCcorp, DCyourcompany, DCcom) 权限要求: 必须拥有对整个 AD 目录结构(所有域节点)的只读访问权限。 AD 认证密码: 说明:上述认证账号对应的密码。 安全提示:输入密码通常以掩码显示。 用户组织单元 (OU): 说明: 指定需要同步或管理的 AD 用户账户所在的组织单元 (OU) 路径。此为必填项。 格式:使用 LDAP 可分辨名称 (Distinguished Name)。 示例:OUEmployees, DCcorp, DCyourcompany, DCcom 云电脑加入的 OU: 说明:指定云电脑在加入 AD 域时将被放置的组织单元 (OU) 路径。 格式:使用 LDAP 可分辨名称 (Distinguished Name)。 示例:OUCloud PCs, DCcorp, DCyourcompany, DCcom 必填条件:仅在需要对云电脑执行加域操作时,此项为必填项。 共享公网出口 IP: 地址: 182.42.7.245 作用: 此 IP 是天翼云电脑服务访问您本地 Active Directory 的源地址。 网络要求: 若您的本地网络防火墙或安全设备配置了 IP 白名单(允许列表),您必须将此 IP (182.42.7.245) 添加到白名单中。 防火墙端口要求: 目的: 允许云服务通过指定的协议端口与您的域控制器通信。 必需操作: 在您的防火墙白名单中,同时允许上述出口 IP (182.42.7.245) 访问您域控制器的以下端口: LDAP (明文/StartTLS): 端口 389 (TCP) LDAPS (SSL/TLS 加密): 端口 636 (TCP) 注意: 具体需要开放的端口取决于您选择的认证协议(见下文)。 目录访问协议: 可选协议: LDAP: 标准轻型目录访问协议。默认使用端口 389。 StartTLS 扩展: 它在已建立的 LDAP 连接 (389) 上协商 TLS 加密,显著提升通信安全性。启用需要在您的 AD 域控制器上配置并部署有效的 SSL/TLS 证书。 LDAPS: 基于 SSL/TLS 加密的 LDAP。强制使用端口 636。 提供全程加密通信。启用同样需要在 AD 域控制器上配置并部署有效的 SSL/TLS 证书。 域控制器服务器地址: 说明:提供您的 Active Directory 域控制器 (Domain Controller) 的可访问地址。 格式:IP地址:端口 或 完整域名(FQDN):端口 要求: 主域控制器地址: (必填) 备域控制器地址: (可选) 端口选择: 如果选择 LDAP (无 StartTLS),端口填 389。 如果选择 LDAP + StartTLS 或 LDAPS,端口填 636。 关键说明: 服务器地址必须填写其公网可路由的 IP 地址或可被公网 DNS 解析的 FQDN。 示例 (使用公网IP): 主:203.0.113.10:636 (假设使用 LDAPS) 备:203.0.113.11:636 示例 (使用FQDN): 主:dc01.corp.example.com:636 备:dc02.corp.example.com:636 重要提示: 请勿使用内网地址 (如 127.0.0.1, 192.168.x.x, 10.x.x.x) 或仅在内网解析的域名。 云服务无法直接访问您的内网地址。 第二步:选择场景 在第二步中,选择希望和AD实现的场景能力。 登录未关联用户配置: 企业账号经过企业认证通过后,如果还没有同步用户,选择登录失败则返回失败; 选择自动创建用户则创建用户并登录成功 增量同步:从所选择的时间点开始进行同步 数据同步时间:从所选择的时间点开始进行同步 同步时间间隔:从同步时间开始,每隔 X 小时执行一次同步 委托认证高可用:开启后,如果域控服务器访问失败,可以使用本地密码较验 用户ObjectClass:如果您自定义了AD 中对象的 ObjectClass,可以在此处配置。例如将 ObjectClassuser 的对象视作AD 中的用户。 用户登录标识:可使用;对属性进行分割,此时为或关系 用户Filter过滤:可以使用LDAP语法对需要判断的用户进行过滤 第三步:字段映射 如果需要和AD用户或组织进行绑定,例如将AD用户的用户名作为天翼云电脑账户的账户名,则需要在第三步配置字段映射。如需使用映射标识能力,需手动设置为同步标识,如下图的用户名字段。 配置其它AD 用于管理虚拟桌面加入域的操作(即“加域”过程),限制最多配置两个企业AD。最多只能配置两个其它AD。 配置系统:Windows 系统 、银河麒麟、中标麒麟 其它配置项参考绑定AD
        来自:
        帮助文档
        天翼云电脑(政企版)
        管理员指南
        身份管理
      • 计费概述
        本文介绍了科研助手提供的计费模式概览和主要区别。 计费概述 提供三种类型的云服务器购买方式:按需计费、包年包月和套餐包,分别适用于不同场景下的用户需求。 下表列出了三种计费模式的区别: 计费类型 按需付费 包周期 套餐包 付款方式 每小时结算 预付费 预付费 计费单位 元/秒 元/月 元/月 最小时长 按秒计费,按小时结算 至少一个月 至少一个月 适用场景 按需计费适用于短期或不可预测的应用或任务。 适用于规格固定的长期稳定的成熟业务。 适用于规格多变,访问波动大的成熟业务。
        来自:
        帮助文档
        科研助手
        计费说明
        计费概述
      • 对象存储如何计费
        本文介绍象存储如何计费。 对象存储标准型总计三个计费项:存储费用、公网流出流量费用、CDN回源流出流量、请求费用,说明如下: 存储费用:即存储容量费用,按用户数据占用的存储空间量收取费用。 公网流出流量费用:按存储数据被调用或下载产生的公网流量收取费用。 CDN回源流出流量:数据从媒体存储传输到天翼云CDN所产生的回源流量。 请求费用:请求费用按照发送到对象存储的请求指令次数进行计算,实际上每调用一次API都计算一次请求次数。 更详细的计费项说明可参考 计费项 。
        来自:
        帮助文档
        媒体存储
        常见问题
        计费常见问题
        对象存储如何计费
      • 日志中心
        本节介绍日志中心用户指南。 概述 分布式容器云平台提供日志采集和分析能力,包括容器日志、事件日志、控制面组件日志,辅助定位集群中出现的异常问题。 日志维度 说明 容器日志 采集集群中容器应用的标准输出日志。 事件日志 配合cubeevent插件,采集集群中的event信息,并持久化到日志中。 控制面组件日志 采集控制面组件的日志,包括kubeapiserver、kubecontrollermanager、kubescheduler和etcd。 前提条件 1. 已完成集群注册,具体操作请参见 本地注册集群 / 三方云注册集群。 2. 集群已安装ctglogoperator、cubeevent插件,具体操作请参考 插件。 操作步骤 开启日志采集 1. 登陆分布式容器云平台,在左侧导航栏中选择集群资源 > 集群管理,进入注册集群列表页。 2. 在注册集群列表中点击需要配置日志采集的集群,进入单集群管理页面。 3. 在单集群管理页面导航栏中选择运维管理 > 日志中心,进入日志中心页面。 4. 在日志中心页面顶部,可切换容器日志、事件日志、控制面组件日志页签,点击下方“立即开启”按钮,配置容器日志、事件日志和控制面组件日志接入。 配置完成后,在对应页签下即可查看、搜索应用日志。
        来自:
        帮助文档
        分布式容器云平台 CCE One
        用户指南
        注册集群
        注册集群控制台
        运维
        日志中心
      • 节点缩容
        本章节主要介绍翼MapReduce服务如何缩容task节点。 当task节点组内的资源超出您的业务需求时,您可以使用节点缩容功能减少实例数量。 约束与限制 1. V2.20版本起支持task节点缩容功能。 2. 当前仅支持对按需计费模式的task节点进行缩容,包年/包月集群暂不支持该方式缩容。 3. 仅支持对状态为“运行中”的集群进行节点缩容操作。 注意 节点缩容生效后,会立刻销毁对应的主机与硬盘,无法恢复,请慎重操作!缩容前请确保已备份或迁移所需数据。 操作步骤 1. 登录翼MapReduce管理控制台。 2. 从“我的集群”中 ,选中一个运行中的集群并单击集群名称,进入集群信息页面。 3. 选择“更多”,点击“节点缩容”按钮。 4. 翼MR支持“指定数量”与“指定节点”两种方式进行缩容: 指定数量:缩容方式选择“指定数量”后,请设置需要缩容的节点数量,系统将基于节点状态,优先选择状态异常的节点进行缩容。 指定节点:缩容方式选择“指定节点”后,可以在节点列表中勾选需要缩容的节点。 5. 指定缩容的数量或勾选指定节点后,点击“下一步”,系统将对缩容节点进行校验。为避免影响业务运行,缩容后需保障剩余节点上的角色实例数满足组件最小使用需求。 服务名称 角色实例 校验规则 YARN NodeManager 缩容后,至少保有3个NodeManager角色实例 Flume Flume 缩容后,至少保有1个Flume角色实例 Trino TrinoWorker 缩容后,至少保有1个TrinoWorker角色实例 6. 校验时,若识别到即将缩容的节点上存在运行中的任务,请及时检查是否需要更换缩容的节点,若选择正确,提前做好备份和迁移工作。建议完成上述工作后,停止运行中的任务,并观察影响,确认无误后再行缩容。 7. 缩容节点前,请阅读协议并确认是否对列表中的节点进行缩容,勾选协议后,“确认销毁”按钮亮起,点击后将立刻执行销毁动作,请谨慎操作。 8. 缩容成功后,缩减的节点将不在节点管理页面内展示。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        管理集群
        节点管理
        节点缩容
      • Java调用示例
        1. com.ffcs.ebp.ebpsdk.common.Response java package com.ffcs.ebp.ebpsdk.common; import java.util.Map; public class Response { private int statusCode; private String body; private Map headers; public int getStatusCode() { return statusCode; } public void setStatusCode(int statusCode) { this.statusCode statusCode; } public String getBody() { return body; } public void setBody(String body) { this.body body; } public Map getHeaders() { return headers; } public void setHeaders(Map headers) { this.headers headers; } } 2. com.ffcs.ebp.ebpsdk.YunSign java package com.ffcs.ebp.ebpsdk; import com.ffcs.ebp.ebpsdk.common.Response; import org.apache.commons.lang.StringUtils; import org.apache.http.Header; import org.apache.http.HttpEntity; import org.apache.http.client.config.AuthSchemes; import org.apache.http.client.config.CookieSpecs; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.; import org.apache.http.config.Registry; import org.apache.http.config.RegistryBuilder; import org.apache.http.conn.socket.ConnectionSocketFactory; import org.apache.http.conn.socket.PlainConnectionSocketFactory; import org.apache.http.conn.ssl.NoopHostnameVerifier; import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.util.EntityUtils; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; import java.io.; import java.net.URLEncoder; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.security.KeyManagementException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.util.; public class YunSign { private String url; private String body; private String ak; private String sk; private String uuId; private int temp; private String contentType; private String queryStr; private Map headerMap; private String afterQuery; public YunSign(String url, String ak, String sk, String uuId, String body, int temp, String contentType, String queryStr, Map headerMap) { this.url url; if(body.equals("{}")){ body ""; } this.body body; this.ak ak; this.sk sk; this.uuId uuId; this.temp temp; this.contentType contentType; this.queryStr queryStr; this.headerMap headerMap; } public Response toDo(String method, int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response response null; method method.toUpperCase(); switch (method) { case "POST": response doPost(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "GET": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByGetReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doGet(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "DELETE": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByDeleteReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doDelete(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "PUT": response doPut(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "PATCH": response doPatch(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "HEAD": response doHead(connectTimeout, connectionRequestTimeout, socketTimeout); break; } return response; } private String getSign(Date eopDate) { String calculateContentHash getSHA256(body); //报文原封不动进行sha256摘要 // System.out.println("calculateContentHash:" + calculateContentHash); SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); SimpleDateFormat DATEFORMATTER new SimpleDateFormat("yyyyMMdd"); String singerDate TIMEFORMATTER.format(eopDate); String singerDd DATEFORMATTER.format(eopDate); //header的key按照26字母进行排序, 以&作为连接符连起来 try { String CampmocalHeader String.format("ctyuneoprequestid:%sneopdate:%sn", this.uuId, singerDate); String sigture CampmocalHeader + "n" + this.afterQuery + "n" + calculateContentHash; // System.out.println("sigture:" + sigture); byte[] ktime HmacSHA256(singerDate.getBytes(), sk.getBytes()); // System.out.println("ktime:" + HexUtils.bytes2Hex(ktime)); byte[] kAk HmacSHA256(ak.getBytes(), ktime); // System.out.println("kAk:" + HexUtils.bytes2Hex(kAk)); byte[] kdate HmacSHA256(singerDd.getBytes(), kAk); // System.out.println("kdate:" + HexUtils.bytes2Hex(kdate)); String Signature Base64.getEncoder().encodeToString(HmacSHA256(sigture.getBytes("UTF8"), kdate)); // System.out.println("Signature:" + Signature); String signHeader String.format("%s Headersctyuneoprequestid;eopdate Signature%s", ak, Signature); // System.out.println("signHeader:" + signHeader); return signHeader; } catch (Exception e) { e.printStackTrace(); } return null; } / 在调用SSL之前需要重写验证方法,取消检测SSL 创建ConnectionManager,添加Connection配置信息 @return HttpClient 支持https / private static CloseableHttpClient sslClient() { try { // 在调用SSL之前需要重写验证方法,取消检测SSL X509TrustManager trustManager new X509TrustManager() { @Override public X509Certificate[] getAcceptedIssuers() { return null; } @Override public void checkClientTrusted(X509Certificate[] xcs, String str) { } @Override public void checkServerTrusted(X509Certificate[] xcs, String str) { } }; SSLContext ctx SSLContext.getInstance(SSLConnectionSocketFactory.TLS); ctx.init(null, new TrustManager[]{trustManager}, null); SSLConnectionSocketFactory socketFactory new SSLConnectionSocketFactory(ctx, NoopHostnameVerifier.INSTANCE); // 创建Registry RequestConfig requestConfig RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARDSTRICT) .setExpectContinueEnabled(Boolean.TRUE).setTargetPreferredAuthSchemes(Arrays.asList(AuthSchemes.NTLM, AuthSchemes.DIGEST)) .setProxyPreferredAuthSchemes(Arrays.asList(AuthSchemes.BASIC)).build(); Registry socketFactoryRegistry RegistryBuilder. create() .register("http", PlainConnectionSocketFactory.INSTANCE) .register("https", socketFactory).build(); // 创建ConnectionManager,添加Connection配置信息 PoolingHttpClientConnectionManager connectionManager new PoolingHttpClientConnectionManager(socketFactoryRegistry); CloseableHttpClient closeableHttpClient HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(requestConfig).build(); return closeableHttpClient; } catch (KeyManagementException ex) { throw new RuntimeException(ex); } catch (NoSuchAlgorithmException ex) { throw new RuntimeException(ex); } } public Response doGet(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); //创建HttpGet远程连接实例 HttpGet httpGet; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGet new HttpGet(this.url + "?" + this.afterQuery); } else { httpGet new HttpGet(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGet.setHeader("ContentType", this.contentType); httpGet.setHeader("ctyuneoprequestid", this.uuId); httpGet.setHeader("EopAuthorization", getSign(eopDate)); httpGet.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGet.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGet.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpGet.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpGet); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByGetReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response result new Response(); CloseableHttpClient client null; CloseableHttpResponse response null; try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL client sslClient(); } else { client HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpGetWithEntity远程连接实例 HttpGetWithEntity httpGetWithEntity; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGetWithEntity new HttpGetWithEntity(this.url + "?" + this.afterQuery); } else { httpGetWithEntity new HttpGetWithEntity(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为HttpGetWithEntity实例设置配置 httpGetWithEntity.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGetWithEntity.setHeader("ContentType", this.contentType); httpGetWithEntity.setHeader("ctyuneoprequestid", this.uuId); httpGetWithEntity.setHeader("EopAuthorization", getSign(eopDate)); httpGetWithEntity.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGetWithEntity.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGetWithEntity.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); httpGetWithEntity.setEntity(httpEntity); //执行请求操作,并拿到结果(同步阻塞) response client.execute(httpGetWithEntity); //获取结果实体 HttpEntity entity response.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! client) { try { client.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPost(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpPost远程连接实例 HttpPost httpPost; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPost new HttpPost(this.url + "?" + this.afterQuery); } else { httpPost new HttpPost(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPost.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPost.setHeader("ContentType", this.contentType); httpPost.setHeader("ctyuneoprequestid", this.uuId); httpPost.setHeader("EopAuthorization", getSign(eopDate)); httpPost.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPost.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPost.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPost.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPost); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPut(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPut远程连接实例 HttpPut httpPut; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPut new HttpPut(this.url + "?" + this.afterQuery); } else { httpPut new HttpPut(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPut.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(20321900,01,05); httpPut.setHeader("ContentType", this.contentType); httpPut.setHeader("ctyuneoprequestid", this.uuId); httpPut.setHeader("EopAuthorization", getSign(eopDate)); httpPut.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPut.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPut.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPut.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPut); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPatch(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPatch远程连接实例 HttpPatch httpPatch; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPatch new HttpPatch(this.url + "?" + this.afterQuery); } else { httpPatch new HttpPatch(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPatch.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPatch.setHeader("ContentType", this.contentType); httpPatch.setHeader("ctyuneoprequestid", this.uuId); httpPatch.setHeader("EopAuthorization", getSign(eopDate)); httpPatch.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPatch.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPatch.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPatch.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPatch); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doDelete(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDelete httpDelete; if (StringUtils.isNotEmpty(this.afterQuery)) { httpDelete new HttpDelete(this.url + "?" + this.afterQuery); } else { httpDelete new HttpDelete(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpDelete.setHeader("ContentType", this.contentType); httpDelete.setHeader("ctyuneoprequestid", this.uuId); httpDelete.setHeader("EopAuthorization", getSign(eopDate)); httpDelete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpDelete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpDelete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpDelete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpDelete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByDeleteReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDeleteWithBody delete; if (StringUtils.isNotEmpty(this.afterQuery)) { delete new HttpDeleteWithBody(this.url + "?" + this.afterQuery); } else { delete new HttpDeleteWithBody(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); delete.setHeader("ContentType", this.contentType); delete.setHeader("ctyuneoprequestid", this.uuId); delete.setHeader("EopAuthorization", getSign(eopDate)); delete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { delete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : delete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); delete.setEntity(httpEntity); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 delete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(delete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doHead(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpHead远程连接实例 HttpHead httpHead; if (StringUtils.isNotEmpty(this.afterQuery)) { httpHead new HttpHead(this.url + "?" + this.afterQuery); } else { httpHead new HttpHead(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpHead.setHeader("ContentType", this.contentType); httpHead.setHeader("ctyuneoprequestid", this.uuId); httpHead.setHeader("EopAuthorization", getSign(eopDate)); httpHead.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpHead.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpHead.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpHead实例设置配置 httpHead.setConfig(requestConfig); // 执行head请求得到返回对象 response httpClient.execute(httpHead); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } private String toHex(byte[] data) { StringBuilder sb new StringBuilder(data.length 2); byte[] var2 data; int var3 data.length; for (int var4 0; var4 2) { String encodeStr null; encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + str; } } else { String[] s str.split(""); if (s.length > 2) { String encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } } } } } catch (Exception e) { e.printStackTrace(); } return afterQuery; } } 3. HexUtils.java java package com.ffcs.ebp.ebpsdk; public class HexUtils { private static final char[] HEXES { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; / byte数组 转换成 16进制小写字符串 / public static String bytes2Hex(byte[] bytes) { if (bytes null bytes.length 0) { return null; } StringBuilder hex new StringBuilder(); for (byte b : bytes) { hex.append(HEXES[(b >> 4) & 0x0F]); hex.append(HEXES[b & 0x0F]); } return hex.toString(); } / 16进制字符串 转换为对应的 byte数组 / public static byte[] hex2Bytes(String hex) { if (hex null hex.length() 0) { return null; } char[] hexChars hex.toCharArray(); byte[] bytes new byte[hexChars.length / 2]; // 如果 hex 中的字符不是偶数个, 则忽略最后一个 for (int i 0; i headerMap new HashMap<>(); // headerMap.put("queryMetricDataInfo", "{"regionId":"cnsz1","dim":"instanceid,98cdcc8a8e544788ab9cc94ccee429c7","filter":"average","from":"1658473040","to":"1658473040","metricName":"netbitRecv","namespace":"AGT.ECS","period":"1"},"platform":"3"}"); // headerMap.put("platform", "3"); // headerMap.put("consoleUrl", " // headerMap.put("UserAgent", "3333433"); // headerMap.put("XForwardedFor", "1231313"); // headerMap.put("regionId", "100054c0416811e9a6690242ac110002"); // headerMap.put("prodInstId","9dcaf0157c604100af79bdb8271527bc"); //请求地址 String url " //query参数(?后面拼接的参数。没有就不填) aaaa&bbbb String queryStr "regionID41f64827xxxxxxxxxffa3a5deb5d15d"; //body参数(没有就不填) String body ""; //APPID String ak "9f82cacd3f8235c66edfs5e899f098e6"; //appkey String sk "MlgzESz430hJgTzA4lkjuJvDMMLTqwBQRicVqV62VM"; String uuId UUID.randomUUID().toString(); //连接超时 int connectTimeout 35000; //连接请求超时 int connectionRequestTimeout 35000; //socket超时 int socketTimeout 60000; YunSign yunSign new YunSign(url, ak, sk, uuId, body, temp, contentType, queryStr, headerMap); Response response yunSign.toDo(method, connectTimeout, connectionRequestTimeout, socketTimeout); System.out.println("应答头部 "); for (Map.Entry entry : response.getHeaders().entrySet()) { System.out.println(entry.getKey().toString() + ":" + entry.getValue().toString()); } System.out.println(); System.out.println("请求结果 "); System.out.println(response.getBody()); } }
        来自:
        帮助文档
        对象存储 ZOS
        API参考
        如何调用API
        Java调用示例
      • Kafka Broker节点CPU高负载故障演练实战
        演练准备 1. 开通应用高可用故障演练服务产品 2. 开通分布式消息服务Kafka产品 3. 搭建一套独立的演练环境,包含: 开通与生产配置(版本、节点数、Topic划分、副本数等)一致的Kafka实例。 部署订单服务、库存服务、支付服务、物流服务等应用模块,连接开通的Kafka实例。 准备模拟用户行为的压测工具和脚本,配置业务监控和日志采集,便于观察系统运行表现。 演练实施 创建环境 在左侧菜单栏点击故障演练 >环境概览 ,进入环境列表界面。 点击创建环境 ,填写环境基本信息后点击确定完成环境创建。 创建应用 在环境列表界面找到刚才创建的环境,进入应用列表 界面点击创建应用,填写应用的基本信息。 在资源配置 栏目点击分布式消息服务Kafka >添加资源 ,根据资源池与实例信息筛选Kafka实例,点击确定完成应用创建。 演练编排 在应用列表 界面,找到已创建的应用,点击右侧的演练任务 >新建演练 ,根据界面指引填写演练的基本信息,点击下一步 进入演练对象配置界面。 在演练对象配置 界面填写动作组名称、动作组描述,资源类型选择分布式消息服务Kafka ,点击添加实例 ,选择待演练的实例后点击确定。 在动作列表 栏目点击立即添加 ,选择演练动作Broker节点CPU高负载 ,点击下一步 进行动作参数设定,点击确定完成动作添加。 演练参数名称 配置值 持续时间(秒) 240 CPU占用率 99 故障注入模式 全部注入 在全局配置 界面,点击监控指标 栏目下的添加云产品监控,在弹出的配置界面中添加以下监控项目: 云产品监控>分布式消息服务Kafka>CPU使用率、磁盘读流量、磁盘写流量、磁盘平均读操作耗时、磁盘平均写操作耗时、存活节点数、节点存活状态。 确认指标已经添加后,设置演练超时时间 为120分钟,点击完成。
        来自:
        帮助文档
        应用高可用
        最佳实践
        故障演练服务
        Kafka Broker节点CPU高负载故障演练实战
      • 查看网络ACL与导出/导入网络ACL规则
        约束与限制 导入/导出网络ACL规则时,建议您每次处理少于40条的规则,否则可能会影响性能或导致导入/导出网络ACL规则失败。40条是入方向和入方向规则的总和。 导入规则是基于已有规则的增量导入,不会删除已有规则。 相同规则不允许重复导入。 默认规则不支持导出,您可以导出自定义规则。 操作步骤 1. 登录管理控制台。 2. 在系统首页,选择“网络 > 虚拟私有云”。 3. 在左侧导航栏中,选择“访问控制 > 网络ACL”,进入网络ACL列表页面。 4. 在网络ACL列表中,单击网络ACL名称,进入网络ACL详情页。 5. 导出/导入网络ACL规则。单击 “导出规则”,将当前网络ACL规则导出为Excel文件;单击 “导入规则”,将Excel文件中的网络ACL规则导入到当前网络ACL。
        来自:
        帮助文档
        虚拟私有云 VPC
        用户指南
        网络ACL
        查看网络ACL与导出/导入网络ACL规则
      • 修改实例安全组
        本节主要介绍修改实例安全组。 操作场景 GeminiDB Influx支持修改安全组。 使用须知 对于进行节点扩容中的实例,不可修改安全组。 该功能目前处于公测阶段,如需使用,请您联系客服申请开通。 操作步骤 1. 登录管理控制台。 2. 在服务列表中选择“数据库 > 云数据库 GeminiDB Influx 接口”。 3. 在“实例管理”页面,选择指定的实例,单击实例名称。 4. 在左侧导航树,单击“连接管理”。 5. 在“内网安全组”区域,单击,选择实例所属安全组。 单击,提交修改。此过程约需1~3分钟。 单击,取消修改。 6. 稍后可在“安全组”区域,查看修改结果。
        来自:
        帮助文档
        云数据库GeminiDB
        GeminiDB Influx接口
        用户指南
        连接管理
        修改实例安全组
      • 慢日志
        本节介绍了GeminiDB Redis的查看慢日志的操作步骤及说明。 GeminiDB Redis的日志管理功能支持查看数据库级别的慢日志,执行时间的单位为ms。通过该日志,可查找出执行效率低的语句,以便优化。 查看日志明细 1、登录云数据库 GaussDB NoSQL控制台。 2、在左侧导航树,单击“慢日志”。 3、在“慢日志”页面,设置查询条件,查看日志信息。 节点类型默认“All nodes”,可查看实例下所有节点的慢日志信息,您也可以选择查看某个节点的慢日志信息。 可选择查看全部语句类型或查看以下指定类型的慢查询语句: SET GET DEL INCR INCRBY INCRBYFLOAT DECR DECRBY GETSET APPEND MGET ······ 注意 常用的Redis语句类型均支持慢日志查询。 可查看对应节点在不同时间段的慢日志。
        来自:
        帮助文档
        云数据库GeminiDB
        GeminiDB Redis接口
        用户指南
        日志管理
        慢日志
      • 迁移评估快速配置
        本节为您介绍云迁移服务CMS中数据库迁移工具迁移评估配置工作,包括注意事项,操作步骤。 注意事项 本文仅简单介绍迁移评估的通用配置流程,不同数据库类型在配置时略有不同。具体配置步骤请阅读迁移评估源库配置。 操作步骤 1. 进入迁移评估的任务列表界面。 2. 单击“创建评估”按钮,进入迁移评估配置界面。 3. 填写好评估参数和目标数据库连接后,单击测试连接按钮。 4. 通过连接测试后点击“下一步:启动评估”,即可查看评估结果。
        来自:
        帮助文档
        云迁移服务CMS
        快速入门
        数据库迁移服务模块
        迁移评估快速配置
      • 查看实例信息
        实例基础信息页介绍 在实例的基础信息页面,可以获取实例的内网地址,版本节点信息等等。 1. 登录云搜索服务控制台,进入实例管理列表页,选择需要设置的实例点击名称进入详情页。 2. 在实例的详情页可查看实例的购买信息、健康情况、内网地址、和节点的服务健康情况。 1. 健康:对应OpenSearch实例健康状态为绿色(Green)时的状态,实例健康。 2. 可用:对应OpenSearch实例健康状态为黄色(Yellow)时的状态,主分片可用,部分副本缺失。 3. 异常:对应OpenSearch实例健康状态为红色(Red)时的状态,部分主分片不可用,可能已经丢失数据。 3. 右侧实例架构图中展示的为当前实例所在区域、节点数量和节点服务状态。
        来自:
        帮助文档
        云搜索服务
        用户指南
        OpenSearch实例创建及使用
        管理实例
        查看实例信息
      • 查看实例信息
        实例基础信息页介绍 在实例的基础信息页面,可以获取实例的内网地址,版本节点信息等等。 1. 登录云搜索服务控制台,进入实例管理列表页,选择需要设置的实例点击名称进入详情页。 2. 在实例的详情页可查看实例的购买信息、健康情况、内网地址、和节点的服务健康情况。 1. 健康:对应Elasticsearch实例健康状态为绿色(Green)时的状态,实例健康。 2. 可用:对应Elasticsearch实例健康状态为黄色(Yellow)时的状态,主分片可用,部分副本缺失。 3. 异常:对应Elasticsearch实例健康状态为红色(Red)时的状态,部分主分片不可用,可能已经丢失数据。 3. 右侧实例架构图中展示的为当前实例所在区域、节点数量和节点服务状态。
        来自:
        帮助文档
        云搜索服务
        用户指南
        Elasticsearch实例创建及使用
        管理实例
        查看实例信息
      • 扩容
        操作步骤 1.登录云搜索服务管理控制台。 2.在左侧菜单栏,选择对应的集群类型,进入集群管理页面。 3.选择目标集群,单击操作列的“更多>形态变更”进入更改集群规格页面。 4.在更改集群规格页面,设置扩容参数。 −“变更类型”:“扩容”。 −“变更的资源”:资源的变化量。 −“变更的角色”:此处修改的是默认数据节点类型的节点数量和节点存储容量。 “节点数量”支持修改的取值范围请参考上方表格“不同节点类型的节点数量说明”。 集群扩容 5.单击“下一步”。 6.确认变更信息后,单击“提交申请”。 7.单击“返回集群列表”跳转到集群管理页面。集群的“任务状态”列显示为“扩容”,表示集群正在扩容。当集群状态变为“可用”,则表示扩容成功。
        来自:
        帮助文档
        云搜索服务
        用户指南
        Logstash
        Logstash集群形态变更
        扩容
      • 快速工作流和标准工作流
        云工作流支持创建标准和快速两种模式的工作流。 本文主要介绍快速工作流和标准工作流的特点和差异, 用户可根据这些内容的介绍针对业务流程选择不同模式的工作流。 基本概念 标准(Standard)工作流具备执行步骤状态的持久化存储,支持运行长时间的工作流执行状态流转,适用于传统意义上的离线业务流程编排执行场景 快速(Express)工作流适用于流程结构简单、需要低延迟执行的工作流场景, 适用于常见的在线业务流程编排和准实时业务流程编排场景,例如微服务API编排、流式数据处理等低延迟和大负载业务场景。 工作流模式对比 执行指标 标准工作流 快速工作流 最长执行时长 365天 5分钟 执行语义 异步执行,遵循至少执行一次(At least once)语义,支持持久化,但是在特殊条件下可能会导致数据被重复处理。 同步执行 执行历史 可通过API查询指定工作流执行历史、工作流执行详情。 可通过API查询指定工作流执行历史、工作流执行详情。 服务集成 云服务集成调用模式支持如下三种集成模式。更多信息,请参见服务集成模式。 请求响应模式(RequestComplete) 等待系统回调(WaitForSystemCallback) 等待任务令牌(WaitForTaskToken) 仅支持请求响应模式(RequestComplete)
        来自:
        帮助文档
        函数计算
        用户指南
        云工作流
        流程定义
        工作流概述
        快速工作流和标准工作流
      • ALM-12087 系统处于升级观察期
        参数名称 参数含义 来源 产生告警的集群或系统名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Upgrade Observation Period (Days) 进入升级观察期的时间(天)。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-12087 系统处于升级观察期
      • Kubernetes配置
        本章节介绍Kubernetes配置相关能力 概述 Kubernetes配置目前支持K8s配置项、K8s保密字典和配置模板,通过Kubernetes配置来管理K8s的配置项、保密字典以及自定义添加配置模板。可以使用配置项来保存不需要加密的配置信息,例如jvm相关参数信息;使用保密字典来保存一些敏感信息,例如token数据;也可以通过配置模板提前创建好模板,方便在配置项或保密字典中引用。 K8s配置项 创建配置项 在配置项页面,点击“创建配置项”。创建配置项需要填写如下内容: 配置项名称:输入配置项名称 K8s集群:下拉选择目标云容器引擎K8s集群 K8s命名空间:自动带出 配置映射: 导入配置(从模板导入和从文件导入)或者手动添加 键: K8s配置项键值 值: K8s配置项内容value 编辑K8s配置项,只能修改配置项键值内容。 删除K8s配置项,点击更多选择删除按钮,根据提示完成删除操作即可 说明 删除K8s配置项,前提是这个配置项没有关联应用实例,可以通过查看关联应用实例按钮确定当前K8s配置项使用情况。 K8s保密字典 在保密字典页面,点击“创建保密字典”。创建保密字典需要填写如下内容: 保密字典名称 云容器引擎K8s集群:选择目标K8s集群 K8s命名空间:根据K8s集群自动带入 base64编码数据:勾选后,secret须配置base64编码的数据 配置映射: 导入配置(从模板导入和从文件导入)或者手动添加 键: K8s保密字典键值 值: K8s保密字典内容value 编辑K8s保密字典,只能修改保密字典键值内容。 删除K8s保密字典,点击更多选择删除按钮,根据提示完成删除操作即可。 说明 删除K8s保密字典,前提是这个保密字典没有关联应用实例,可以通过查看关联应用实例按钮确定当前K8s保密字典使用情况。
        来自:
        帮助文档
        微服务云应用平台
        用户指南
        部署运维
        容器应用实例
        Kubernetes配置
      • 投递日志数据至LTS
        本节将介绍如何将集成的日志数据投递至LTS。 操作场景 态势感知(专业版)支持集成WAF、HSS、CFW等其他云产品日志,具体集成操作及支持集成的云服务请参见云服务接入。 集成后的日志还支持投递至云日志服务(Log Tank Service,简称LTS),方便用户快速高效地进行实时决策分析、设备运维管理、用户业务趋势分析等。 前提条件 已完成需投递日志的数据集成至态势感知(专业版)操作,详细操作请参见云服务接入。 投递到LTS中,需要已有可用的日志组和日志流。 步骤一:创建数据投递任务 1. 登录管理控制台。 2. 单击页面左上方的,选择“安全 > 态势感知(专业版)”,进入态势感知(专业版)管理页面。 3. 在左侧导航栏选择“工作空间 > 空间管理”,并在工作空间列表中,单击目标工作空间名称,进入目标工作空间管理页面。 4. 在左侧导航栏选择“日志审计 > 安全数据”,进入安全分析页面。 5. 在左侧数据空间导航栏中,单击数据空间名称,展开数据管道后,单击目标管道名称后的“更多 > 投递”,右侧弹出现在数据投递设置页面。 6. (可选)在弹出的授权提示中,确认无误后,单击“确认”,完成授权。 首次投递到目的投递类型需要进行授权,如果已经授权,请跳过该步骤。 7. 在新增投递配置页面中,配置数据投递相关参数。 投递名称:自定义数据投递名称。 账号类型:此处请选择“本账号”。投递到LTS服务仅支持投递本账号内的日志数据。 投递类型:此处请选择“LTS”。 日志组:选择LTS日志组。 日志流:选择目的LTS日志流。 其他配置参数,系统默认生成,无需配置。 8. 单击“确定”。
        来自:
        帮助文档
        态势感知(专业版)(新版)
        用户指南
        日志审计
        数据投递
        投递日志数据至LTS
      • 传播概述
        连接类型 路由学习内容 创建传播的方法 图示说明 虚拟私有云(VPC) VPC的网段 自动创建:开启“默认路由表传播”功能,并指定默认传播路由表,系统会自动在默认传播路由表中为新接入的连接创建传播。 手动创建:您可以选择任意一个路由表,并在路由表中为连接创建传播。 一个连接可以在多个路由表中创建传播。 自动创建传播:自动在ER默认传播路由表中创建传播,比如VPC1连接 、VPC2连接。 手动创建传播:手动在ER自定义路由表中创建传播,比如VPC1连接。 不创建传播:不使用传播路由,手动在ER自定义路由表中创建静态路由,比如VPC3连接、VPC4连接。
        来自:
        帮助文档
        企业路由器
        用户指南
        传播
        传播概述
      • ALM-45288 TagSync垃圾回收(GC)时间超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-45288 TagSync垃圾回收(GC)时间超过阈值
      • ALM-43006 JobHistory2x进程堆内存使用超出阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-43006 JobHistory2x进程堆内存使用超出阈值
      • ALM-45286 TagSync直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-45286 TagSync直接内存使用率超过阈值
      • ALM-45284 UserSync垃圾回收(GC)时间超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-45284 UserSync垃圾回收(GC)时间超过阈值
      • ALM-18014 NodeManager直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-18014 NodeManager直接内存使用率超过阈值
      • ALM-18017 NodeManager非堆内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-18017 NodeManager非堆内存使用率超过阈值
      • ALM-17006 Oozie直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-17006 Oozie直接内存使用率超过阈值
      • ALM-45282 UserSync直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-45282 UserSync直接内存使用率超过阈值
      • ALM-18013 ResourceManager直接内存使用率超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-18013 ResourceManager直接内存使用率超过阈值
      • ALM-17007 Oozie进程垃圾回收(GC)时间超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger Condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-17007 Oozie进程垃圾回收(GC)时间超过阈值
      • ALM-14026 DataNode块数超过阈值
        参数名称 参数含义 来源 产生告警的集群名称。 服务名 产生告警的服务名称。 角色名 产生告警的角色名称。 主机名 产生告警的主机名。 Trigger condition 系统当前指标取值满足自定义的告警设置条件。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        告警参考(适用于MRS 3.x版本)
        ALM-14026 DataNode块数超过阈值
      • 1
      • ...
      • 306
      • 307
      • 308
      • 309
      • 310
      • ...
      • 453
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      出海产品促销专区

      爆款云主机低至2折,高性价比,不限新老速来抢购!

      天翼云奖励推广计划

      加入成为云推官,推荐新用户注册下单得现金奖励

      产品推荐

      弹性云主机 ECS

      物理机 DPS

      轻量型云主机

      弹性伸缩服务 AS

      弹性高性能计算 E-HPC

      训推服务

      AI Store

      公共算力服务

      科研助手

      推荐文档

      如何变更账户信息

      端口开放情况

      充值

      创建阈值规则

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号