华为云用户手册

  • 配置平台侧参数 登录行业视频管理服务后台。 单击“设备管理”,选择需要添加设备的设备组,单击“添加设备”。 选择“单个添加”设备,国标协议接入,根据图1填写基本信息。 图1 添加设备 表1 参数说明 参数 说明 设备名称 自定义,应用于本平台的名称。 支持数字、中文、英文、空格、-、_,最大长度26个字符,首位字符不能为空格。 设备ID 设备ID为20位纯数字。其中,第11-13位与设备类型对应关系如下: 摄像机:132 NVR:118 DVR:111 其他位自定义。 设备用户名 登录设备的用户名。 长度5-32个字符,首位字符不能为数字。 设备密码 设备在平台中的注册密码。 注册认证算法 选择设备注册的认证算法类型。建议选择SHA265,安全性更高。 添加设备后,会弹出“添加成功”界面。 请手动记录该信息,配置设备侧参数时需要使用。 单击“关闭”,关闭后可在设备详情页面单击“SIP信息”查看。
  • 主备实例 对于Memcached主备实例,需要预留持久化的内存,其可用内存如表2所示。主备实例可以调整实例可用内存,以更好地支持数据持久化、主从同步等后台任务。 表2 Memcached主备实例产品规格 内存规格 (GB) 实例可使用内存 (GB) 连接数上限(默认/可配) (个) 基准/最大带宽 (Mbit/s) 参考性能 (QPS) 产品规格编码(对应API的spec_code) 2 1.5 5,000/50,000 42/128 50,000 dcs.memcached.master_standby 4 3.2 5,000/50,000 64/192 100,000 dcs.memcached.master_standby 8 6.8 5,000/50,000 64/192 100,000 dcs.memcached.master_standby 16 13.6 5,000/50,000 85/256 100,000 dcs.memcached.master_standby 32 27.2 5,000/50,000 85/256 100,000 dcs.memcached.master_standby 64 58.2 5,000/50,000 128/384 100,000 dcs.memcached.master_standby
  • 单机实例 因系统开销占用一部分资源,Memcached单机实例可用内存比实例规格略小,如表1所示。 表1 Memcached单机实例产品规格 内存规格 (GB) 实例可使用内存 (GB) 连接数上限(默认/可配) (个) 基准/最大带宽 (Mbit/s) 参考性能 (QPS) 产品规格编码(对应API的spec_code) 2 1.5 5,000/50,000 42/128 50,000 dcs.memcached.single_node 4 3.2 5,000/50,000 64/192 100,000 dcs.memcached.single_node 8 6.8 5,000/50,000 64/192 100,000 dcs.memcached.single_node 16 13.6 5,000/50,000 85/256 100,000 dcs.memcached.single_node 32 27.2 5,000/50,000 85/256 100,000 dcs.memcached.single_node 64 58.2 5,000/50,000 128/384 100,000 dcs.memcached.single_node
  • 主备实例特点 Memcached主备实例在单机实例基础上,增强服务高可用以及数据高可靠性。 Memcached主备实例具有以下特性: 持久化,确保数据高可靠 实例包含一个主节点和一个备节点,都默认开启数据持久化。同时支持数据持久化,确保数据高可靠。 Memcached主备实例的备节点对用户不可见,不支持客户端直接读写数据。 数据同步 主备节点通过增量数据同步的方式保持缓存数据一致。 当网络发生异常或有节点故障时,主备实例会在故障恢复后进行一次全量同步,保持数据一致性。 故障后自动切换主节点,服务高可用 当主节点故障后,备节点在30秒内自动完成主备切换,无需用户操作,业务平稳运行。 多种容灾策略 跨AZ部署(可用区):D CS 支持将主备实例部署在不同的AZ内,节点间电力与网络均物理隔离。您可以将应用程序也进行跨AZ部署,从而达到数据与应用全部高可用。
  • Memcached主备实例架构设计 DCS的Memcached主备实例架构,如图1所示。 图1 Memcached主备实例示意图 示意图说明: VPC 虚拟私有云。实例的内部所有服务器节点,都运行在相同VPC中。 Memcached主备实例不支持公网访问,客户端需要与主备实例处于相同VPC,并且配置安全组访问规则。 相关参考:如何选择和配置Redis实例以及客户端的安全组。 客户应用 运行在ECS上的客户应用程序,即Memcached的客户端。 Memcached实例兼容开源协议,可直接使用开源客户端进行连接,关于多语言客户端连接示例,请参考用户指南的连接缓存实例。 DCS缓存实例 DCS实例。主备实例包含了Master和Slave两个节点。默认开启数据持久化功能,同时保持节点间数据同步。 DCS实时探测实例可用性,当主节点故障后,备节点升级为主节点,恢复业务。 Memcached实例访问端口为11211。
  • 实例架构设计 DCS的Memcached单机实例架构,如图1所示。 图1 Memcached单机实例示意图 示意图说明: VPC 虚拟私有云。实例的内部所有服务器节点,都运行在相同VPC中。 Memcached单机实例不支持公网访问,客户端需要与实例处于相同VPC,并且配置安全组访问规则。 相关参考:如何选择和配置Redis实例以及客户端的安全组。 客户应用 运行在ECS上的客户应用程序,即实例的客户端。 Memcached实例兼容开源协议,可直接使用开源客户端进行连接,关于多语言客户端连接示例,请参考用户指南的连接缓存实例。 DCS缓存实例 DCS实例,单机实例只有1个节点,1个Memcached进程。 DCS实时探测实例可用性,当Memcached进程故障后,DCS为实例重新拉起一个新的Memcached进程,恢复业务。 Memcached实例访问端口为11211。
  • 单机实例特点 系统资源消耗低,支持高QPS 单机实例不涉及数据同步、数据持久化所需消耗的系统开销,因此能够支撑更高的并发。Memcached的单机实例QPS达到10万以上。 进程监控,故障后自动恢复 DCS部署了业务高可用探测,单机实例故障后,30秒内会重启一个新的进程,恢复业务。 即开即用,数据不做持久化 单机实例开启后不涉及数据加载,即开即用。如果服务QPS较高,可以考虑进行数据预热,避免给后端数据库产生较大的并发冲击。 低成本,适用于开发测试 单机实例各种规格的成本相对主备减少40%以上。适用于开发、测试环境搭建。 总体说来,单机实例支持读写高并发,但不做持久化,实例重启时不保存原有数据。单机实例主要服务于数据不需要由缓存实例做持久化的业务场景,如数据库前端缓存,用以提升数据读取效率,减轻后端并发压力。当缓存中查询不到数据,可穿透至磁盘数据库中获取,同时,重启服务、缓存实例时,可从磁盘数据库中获取数据进行预热,降低后端服务在启动初期的压力。
  • 什么是区域、可用区? 我们用区域和可用区来描述数据中心的位置,您可以在特定的区域、可用区创建资源。 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 图1阐明了区域和可用区之间的关系。 图1 区域和可用区 目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和可用区。
  • 如何选择区域? 选择区域时,您需要考虑以下几个因素: 地理位置 一般情况下,建议就近选择靠近您或者您的目标用户的区域,这样可以减少网络时延,提高访问速度。不过,在基础设施、BGP网络品质、资源的操作与配置等方面,中国大陆各个区域间区别不大,如果您或者您的目标用户在中国大陆,可以不用考虑不同区域造成的网络时延问题。 中国-香港、曼谷等其他地区和国家提供国际带宽,主要面向非中国大陆地区的用户。如果您或者您的目标用户在中国大陆,使用这些区域会有较长的访问时延,不建议使用。 在除中国大陆以外的亚太地区有业务的用户,可以选择“中国-香港”、“亚太-曼谷”或“亚太-新加坡”区域。 在非洲地区有业务的用户,可以选择“南非-约翰内斯堡”区域。 在欧洲地区有业务的用户,可以选择“欧洲-巴黎”区域。 云服务之间的关系 如果多个云服务一起搭配使用,需要注意: 不同区域的弹性云服务器、关系型数据库、 对象存储服务 内网不互通。 不同区域的弹性云服务器不支持跨区域部署在同一负载均衡器下。 资源的价格 不同区域的资源价格可能有差异,请参见华为云服务价格详情。
  • 请求参数 备注:公测阶段以下信息由华为云提供 表1 请求参数 名称 类型 IN 必选 描述 X-Auth-Token string header 是 用户凭证 project_id string path 是 项目ID service_group string path 是 服务类别,针对不同服务类场景, 用户侧不需单独赋值 service_type string path 是 子服务类型,针对不同服务, 用户侧不需单独赋值 task_id string path 是 待查询任务id
  • 响应结果示例 { "task_id": "344fxxxx-0xxx-4xxx-a248-ce26cff7xxxx", "input_json": null, "obs_input_url": { "bucket": "example_bucket",, "object": " path/to/input/example.mps " }, "obs_output_url": { "bucket": "example_bucket",, "object": "path/to/output/344fd304-0937-4d25-a248-ce26cff78388_completeResult.sol" }, "status": "Running", "progress": null, "output_json": null, "output_file_base64": null, "start_time": "2023-00-00T07:19:35Z", "end_time": null, "create_time": "2023-00-00T07:19:33.607Z" }
  • 响应参数 状态码: 200 创建成功响应信息 参数 参数类型 是否必选 描述 task_id sring 是 任务id input_json string 是 求解器不涉及 input 表6 是 求解器输入文件信息 output 表7 是 求解器输出文件信息 status string 是 任务状态,包括: Pending:任务等待处理中(排队中) Running:任务正在运行 Failed:任务失败 Succeeded:任务成功 progress string 是 返回求解器日志。求解状态在日志最后显示,可能的状态包括: - Unknown: 未知状态,可能处于问题读取过程中,或其他未定义状态 - Time limit reached: 达到时间上限 - Memory limit reached: 达到宿主机内存上限 - Optimal solution found: 找到最优解(或达到目标gap) - Problem is infeasible: 问题不可行 - Problem is unbounded: 问题无边界 - Problem is infeasible or unbounded: 问题不可行或无边界 output_json string 是 求解器服务不涉及 output_file_base64 string 是 求解器服务不涉及 start_time String 是 任务开始执行时间 end_time String 是 任务结束时间 create_time String 是 任务创建时间
  • 请求Body体示例 { "input_json": { "input": { "type": "obs", "data": { "bucket": "oroas-bi-data", "object": "oroas-optvsolver/input/dcmulti.mps" } }, "output": { "type": "obs", "data": { "bucket": "oroas-bi-data", "object": "oroas-optvsolver/output" } }, "parameters": { "time_limit": 60.0, "gap": 0.0 } } } 或 { "input_json": { "input": { "type": "base64", "data": { "content": "Kk5BTUU6ICAgICAgICAgZG....==", "file_type": ".mps" } }, "output": {}, "parameters": { "time_limit": 60.0, "gap": 0.0 } } }
  • 请求参数 备注:公测阶段以下信息由华为云提供 表1 请求参数 名称 类型 IN 必选 描述 X-Auth-Token string header 是 用户凭证 project_id string path 是 项目ID service_group string path 是 服务类别,针对不同服务类场景, 用户侧不需单独赋值 service_type string path 是 子服务类型,针对不同服务, 用户侧不需单独赋值 备注:以下信息由用户提供 表2 请求Body参数 名称 类型 必选 描述 input_json 表3 是 任务输入信息,json格式;每个子服务该对象结构不同 input 表6 是 任务输入信息 output 表7 否 任务输出信息 备注:以下信息由用户提供 表3 input_json 名称 类型 必选 描述 parameters 表4 否 任务输入信息,json格式;每个子服务该对象结构不同。置空则代表使用默认参数 备注:以下信息由用户提供 表4 parameters 名称 类型 必选 描述 name string 是 求解器参数名称 value int/double 是 求解器参数值 公测阶段求解器开放参数如下: 表5 parameters 名称 类型 必选 描述 method int 否 求解算法。[0,2] 0:自动选择,默认值 1:原始单纯形法 2:对偶单纯形法 timeLimit double 否 求解时间上限,单位为秒。取值范围[0.0, 1e+20](1e+20) gap double 否 仅对MIP问题有效。[0, 1],默认值为0.0 表6 input 名称 类型 必选 描述 type 表8 是 上传文件模式 data 表9 表10 是 输入数据 表7 output 名称 类型 必选 描述 type 表8 是 输出文件模式 data 表9 表10 是 输出数据 表8 type 名称 类型 必选 描述 obs string 是 以obs模式上传/输出文件,输入信息为文件格式,传入值为租户OBS对应的文件绝对路径,用户需保证求解器服务有该路径的读写权限。输入内容为标准数学模型文件,支持.lp、.mps、.mps.gz格式;输出信息传入值为租户OBS对应的待存储路径前缀(和input_url成对使用),文件名服务端固定用task_id命名。输出格式为.sol格式 base64 string 是 以base64模式上传/输出文件 表9 data(obs模式) 名称 类型 必选 描述 bucket string 是 输入/输出数据obs桶名 object string 是 输入/输出数据绝对路径 表10 data(base64模式) 名称 类型 必选 描述 content string 是 文件base64编码 type string 是 模型文件格式,支持.lp、.mps、.mps.gz格式
  • OBJECTIVE FUNCTION节 目标函数可采用 `maximize`或 `minimize`关键词开始,关键词后不能再出现其它字符,形式为: minimize -x1 + x2 + -x3 + 0.5 x1 + 100 + x4 + 20 如上形式可以看出: `minmize` 单独一行。 变量可以直接与负号(`-`)连接,如 ` x1,x3`。 变量可以多次出现,我们采用聚合多次系数,本例中为 `x1`的系数终于为 `0.5(-1+0.5)`。 偏移量可以出现在表达式中间或结尾,如 100 和 20。 在实际使用中目标函数可以提供一个名字,并且可以多行书写,但需注意一些细节,如 minimize obj:-x1 + x2 + -x3 + 0.5 x1 100 + x4 + x5 + 1.5 + 2.0 x6
  • GENERALS和BINARIES节(可选) LP 文件的 generals 和 binaries 节用于指示在可行解中必须具有整数值的变量。这两节由于形式相似,我们将其放在同一个部分介绍,实际上他们是否同时存在互不影响。注册在这两节的变量将具有的默认边界的定义。对于在generals 部分注册的变量,默认范围是 0 和$10^{20}$。对于在 binaries 部分注册的变量,默认边界是 0 和 1。 变量注册的方式是通过将变量罗列到对应节,如 Generals x4 x5 x6 x7 x8 x9 Binaries x1 x2 x3 x4 可见,不同变量之间通过空格分割,允许多行书写, 同时我们允许变量注册到不同节,如变量 `x4`,最终的变量类型为其可行区间最小的类型。 注:现阶段我们求解器仅支持线性问题,对于非线性字段和半连续、半整型暂不支持。
  • LP格式的关键字 LP格式中的关键字不区分大小写 关键词(指示词) 可选项 含义 `minimize` `min、minimum` 最小化问题 `maximize` `max、maxmum` 最大化问题 `subject to` `s.t.、such that、st` 约束满足 `bounds` `bound` 表达式的界 `generals` `gen、general` 整数变量 `binaries` `bin、binary` 0-1变量 `inf` `infinity` 无穷 `free` 自由变量 `end` 结束 问题最小(大)化关键词实际上是格式的第一行有效字段有时该行也可以省略,如果省略则默认为最小化问题;End关键词是问题描述的结束,End之后即便还存在字段也不会被解析。
  • 查看编译构建结果 “构建流程”页签中展示了当前构建任务运行的全量流程图,在构建任务未执行完成时,可以清晰的看到Job1和Job2是并行执行,Job3是等待Job1和Job2执行完成后才执行。 单击“构建流程”页签中左侧菜单的“Job1”或右侧界面的绿色矩形图形的“Job1”,进入Job1构建任务的执行详情页面,可以查看Job1构建任务的构建日志。 其中, “步骤日志”页签展示了当前构建任务运行顺序和资源调度情况。 “构建参数”页签展示了当前构建任务全局的参数信息。 “构建脚本”页签展示了当前构建任务执行的脚本内容。 参考1可查看“Job2”和“Job3”的构建任务执行详情。
  • 操作流程 流程 说明 访问编译构建服务首页 介绍如何访问编译构建服务首页。 创建项目 为本实践创建项目。 创建CodeArts Repo代码仓 为本实践创建Repo代码仓用于存储代码文件。 创建build.yml文件 通过“build.yml”定义整个构建的流程。 创建build.yml中使用的子任务执行脚本 创建整个构建过程中依赖的构建任务的执行脚本。 创建并执行编译构建任务 创建BuildFlow编译构建任务并执行。 查看编译构建结果 查看编译构建结果。
  • 应用场景 在编译构建中,构建任务是构建的最小单元,适用于业务比较简单的场景,但是在有些复杂的构建场景下,构建任务可能并不能满足复杂的构建要求。例如,用户希望更模块化、更加细粒度的拆分构建任务,并按照构建任务之间的依赖顺序进行构建。 为此,编译构建服务支持使用BuildFlow将多个存在依赖关系的构建任务按照有向无环图(DAG)的方式组装起来,BuildFlow将会按照构建的依赖关系并发进行构建。 本示例为您演示构建任务3依赖于构建任务1和构建任务2的构建工程。
  • 采集CCE集群的业务数据 通过新增PodMonitor方式为应用配置可观测监控Prometheus版的采集规则,监控部署在CCE集群内的应用的业务数据。 如下指标采集的周期是30秒,所以等待大概30秒后才能在 AOM 的界面上查看到上报的指标。 配置信息如下: apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: kafka-exporter namespace: default spec: namespaceSelector: matchNames: - default # exporter 所在的命名空间 podMetricsEndpoints: - interval: 30s path: /metrics port: metric-port selector: matchLabels: k8s-app: kafka-exporter
  • 添加采集任务 通过新增PodMonitor方式为应用配置可观测监控Prometheus版的采集规则,监控部署在CCE集群内的应用的业务数据。 如下指标采集的周期是30秒,所以等待大概30秒后才能在AOM的界面上查看到上报的指标。 apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: postgres-exporter namespace: default spec: namespaceSelector: matchNames: - default # exporter 所在的命名空间 podMetricsEndpoints: - interval: 30s path: /metrics port: http-metrics selector: matchLabels: app: postgres
  • PostgreSQL Exporter 部署 登录CCE控制台。 单击已接入的集群名称,进入该集群的管理页面。 执行以下操作完成Exporter部署。 使用Secret管理PostgreSQL密码。 在左侧导航栏中选择“工作负载”,在右上角单击“YAML创建”完成YAML配置。YAML配置说明:使用Kubernetes的Secret来管理密码并对密码进行加密处理,在启动PostgreSQL Exporter的时候直接使用Secret Key,需要调整对应的password。 YAML 配置示例如下: apiVersion: v1 kind: Secret metadata: name: postgres-test type: Opaque stringData: username: postgres password: you-guess #对应 PostgreSQL 密码 部署PostgreSQL Exporter。 在左侧导航栏中选择“工作负载”,在右上角单击“YAML创建”,以YAML的方式部署Exporter。 YAML配置示例如下(请直接复制下面的内容,根据实际业务调整相应的参数): apiVersion: apps/v1 kind: Deployment metadata: name: postgres-test # 根据业务需要调整成对应的名称,建议加上 PG 实例的信息 namespace: default #需要和 postgres 的 service 在同一命名空间 labels: app: postgres app.kubernetes.io/name: postgresql spec: replicas: 1 selector: matchLabels: app: postgres app.kubernetes.io/name: postgresql template: metadata: labels: app: postgres app.kubernetes.io/name: postgresql spec: containers: - name: postgres-exporter image: swr.cn-north-4.myhuaweicloud.com/aom-exporter/postgres-exporter:v0.8.0 # 上传至 SWR 的 postgres-exporter 镜像 args: - "--web.listen-address=:9187" # Exporter 开启的端口 - "--log.level=debug" # 日志级别 env: - name: DATA_SOURCE_USER valueFrom: secretKeyRef: name: postgres-test # 对应上一步中的 Secret 的名称 key: username # 对应上一步中的 Secret Key - name: DATA_SOURCE_PASS valueFrom: secretKeyRef: name: postgres-test # 对应上一步中的 Secret 的名称 key: password # 对应上一步中的 Secret Key - name: DATA_SOURCE_URI value: "x.x.x.x:5432/postgres?sslmode=disable" # 对应的连接信息 ports: - name: http-metrics containerPort: 9187 获取指标。 通过“curl http://exporter:9187/metrics”无法获取Postgres实例运行时间,可以通过自定义一个queries.yaml来获取该指标。 创建一个包含queries.yaml的配置。 将配置作为Volume挂载到Exporter某个目录下。 通过extend.query-path来使用配置,将上述的Secret以及Deployment进行汇总,汇总后的YAML如下所示: # 以下 document 创建一个包含自定义指标的 queries.yaml --- apiVersion: v1 kind: ConfigMap metadata: name: postgres-test-configmap namespace: default data: queries.yaml: | pg_postmaster: query: "SELECT pg_postmaster_start_time as start_time_seconds from pg_postmaster_start_time()" master: true metrics: - start_time_seconds: usage: "GAUGE" description: "Time at which postmaster started" # 以下 document 挂载了 Secret 和 ConfigMap ,定义了部署 Exporter 相关的镜像等参数 --- apiVersion: apps/v1 kind: Deployment metadata: name: postgres-test namespace: default labels: app: postgres app.kubernetes.io/name: postgresql spec: replicas: 1 selector: matchLabels: app: postgres app.kubernetes.io/name: postgresql template: metadata: labels: app: postgres app.kubernetes.io/name: postgresql spec: containers: - name: postgres-exporter image: wrouesnel/postgres_exporter:latest args: - "--web.listen-address=:9187" - "--extend.query-path=/etc/config/queries.yaml" - "--log.level=debug" env: - name: DATA_SOURCE_USER valueFrom: secretKeyRef: name: postgres-test-secret key: username - name: DATA_SOURCE_PASS valueFrom: secretKeyRef: name: postgres-test-secret key: password - name: DATA_SOURCE_URI value: "x.x.x.x:5432/postgres?sslmode=disable" ports: - name: http-metrics containerPort: 9187 volumeMounts: - name: config-volume mountPath: /etc/config volumes: - name: config-volume configMap: name: postgres-test-configmap --- apiVersion: v1 kind: Service metadata: name: postgres spec: type: NodePort selector: app: postgres app.kubernetes.io/name: postgresql ports: - protocol: TCP nodePort: 30433 port: 9187 targetPort: 9187 访问地址: http://{集群任意节点的公网IP}:30433/metrics,即可通过自定义的queries.yaml查询到Postgres实例启动时间指标。 图1 访问地址
  • 操作场景 使用MongoDB过程中需要对MongoDB运行状态进行监控,以便了解MongoDB服务是否运行正常,排查MongoDB故障问题原因。Prometheus监控服务提供了CCE容器场景下基于Exporter的方式来监控MongoDB运行状态。本文介绍如何部署Exporter以及实现MongoDB Exporter告警接入等操作。 为了方便安装管理Exporter,推荐使用CCE进行统一管理。
  • 添加采集任务 通过新增PodMonitor方式为应用配置可观测监控Prometheus版的采集规则,监控部署在CCE集群内的应用的业务数据。 如下指标采集的周期是30秒,所以等待大概30秒后才能在AOM的界面上查看到上报的指标。 apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: redis-exporter namespace: default spec: namespaceSelector: #选择要监控 Exporter Pod 所在的namespace matchNames: - default # exporter所在的命名空间 podMetricsEndpoints: - interval: 30s # 设置指标采集周期 path: /metrics # 填写 Prometheus Exporter 对应的 path 的值,默认/metrics port: metric-port# 填写 Prometheus Exporter 对应的 YAML 的 ports 的 name selector: # 填写要监控 Exporter Pod 的 Label 标签,以定位目标 Exporter matchLabels: k8s-app: redis-exporter
  • 概述 AOM提供告警规则设置功能。通过告警规则可对服务设置事件条件,对资源的指标设置阈值条件,或对资源的日志设置搜索分析、关键词统计以及SQL查询等条件。当服务的资源数据满足事件条件时产生事件类告警。当资源的指标数据满足阈值条件时产生阈值告警,当没有指标数据上报时产生数据不足事件。当资源的日志数据满足设置的告警条件,产生日志告警。 告警规则分为指标告警规则、事件告警规则、日志告警规则以及应用性能监控告警。通常情况下,通过指标、日志和应用性能监控告警规则,实时监控环境中主机、组件等资源使用情况。当资源使用告警过多,告警通知过于频繁时,通过事件告警规则,简化告警通知,快速识别服务的某一类资源使用问题并及时解决。 系统支持创建的告警规则总计不能超过3000条。如果系统中的告警规则数量已达到上限,请删除不需要的告警规则后重新创建。 父主题: 告警规则
  • 添加采集任务 通过新增PodMonitor方式为应用配置可观测监控Prometheus版的采集规则,监控部署在CCE集群内的应用的业务数据。 如下示例中指标采集的周期是30秒,所以等待大概30秒后才能在AOM的界面上查看到上报的指标。 apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: memcached-exporter namespace: default spec: namespaceSelector: matchNames: - default # exporter所在的命名空间 podMetricsEndpoints: - interval: 30s path: /metrics port: metric-port selector: matchLabels: k8s-app: memcached-exporter
  • 操作步骤(CCE旧版UI) 登录云容器引擎控制台。 选择“工作负载”,选择“无状态负载”或者“有状态负载”。 在对应界面列表中可通过右上角过滤框筛选,找到要部署Agent的JAVA应用。 图1 查找JAVA应用 单击目标应用的名称,进入应用详情页面。 在应用详情页面,选择“工作负载运维”页签。 在“性能管理配置”卡片查看“ APM 探针”是否被勾选,如图图1 查看APM探针所示。 图2 查看APM探针 如果“APM探针”已被勾选,需去掉勾选,并重启实例。具体请执行7。 如果“APM探针”未被勾选,则执行8。 单击“性能管理配置”卡片下的“编辑”,去掉勾选,单击“重启实例”,在提示弹框中单击“我知道了”。完成重启实例,此时APM1.0探针已被卸载。 图3 重启实例 图4 重启实例提示 单击“性能管理配置”卡片下的“编辑”,勾选“APM探针”,选择APM2.0探针类型,选择探针版本和APM业务,单击“重启实例”,在提示弹框中单击“我知道了”。 图5 重启实例 图6 重启实例提示
  • 接入Agent 登录AOM 2.0控制台。 在左侧导航栏中选择“接入中心”。 在右侧“应用层”面板单击“Node.js”卡片。 在“基础信息”下选择“区域”和“应用”。 如果现有的应用无法满足需要,可以单击“创建应用”添加,详细参数说明请参见表1。 图1 基础信息 表1 创建应用参数说明 参数名称 说明 应用名称 应用显示的名称,不能为空。 支持输入1~128个字符,只能包含数字、字母、下划线、中划线、并且以英文字母开头。 应用别名 应用的别名。设置应用别名后应用名称优先展示应用别名。 支持输入1~128个字符,只能包含数字、字母、中文、下划线、中划线、括号以及小数点。 企业项目 在下拉菜单中选择企业项目,仅开通企业版才会显示。 描述 应用的描述信息,最多可输入1000个字符。 接入方式默认选择“增强型探针”。 数据接入方式选择“自定义接入”,按照步骤接入。 图2 数据接入 表2 参数列表 环境变量 入参 描述 选项 APM_APP_NAME appName 组件名称,代表一个组件。同一个应用下,组件名称不能重复。一个组件可以包含多个环境,不能重复,如果要重复,使用APM_INSTANCE_NAME区分。 必填 APM_AK AK APM访问密钥ID(AK)。 必填 APM_SK SK APM秘密访问密钥(SK)。 必填 APM_MASTER_ADDRESS masterAddress APM探针的接入地址。 必填 APM_BUSINESS business 应用:代表一个逻辑单元,是一个全局概念,各个region都可以看到相同的应用信息,比如一个租户下面比较独立的功能模块可以定义为一个应用。如果填写,则必须提前创建该应用。如果为空,则代表默认应用。 选填 APM_SUB_BUSINESS subBusiness 子应用:在一个应用下面可以创建多个子应用,主要起文件夹和管理的功能,子应用为全局概念,当前最多支持三层子应用,子应用格式为:sub1/sub2/sub3 选填 APM_ENV env 环境:一个组件由于部署不同的配置参数,会形成的多个环境。 选填 APM_ENV_TAG envTag 环境标签:是在环境上的一个属性,多个环境可能具有相同的标签,可以通过标签对环境进行过滤。 选填 APM_INSTANCE_NAME instanceName 实例:是环境下的一个进程,名称由主机名+ip+实例名称组成。 选填
  • 接入Agent 登录AOM 2.0控制台。 在左侧导航栏中选择“接入中心”。 在右侧“应用层”面板单击“Node.js”卡片。 在“基础信息”下选择“区域”和“应用”。 如果现有的应用无法满足需要,可以单击“创建应用”添加,详细参数说明请参见表1。 图1 基础信息 表1 创建应用参数说明 参数名称 说明 应用名称 应用显示的名称,不能为空。 支持输入1~128个字符,只能包含数字、字母、下划线、中划线、并且以英文字母开头。 应用别名 应用的别名。设置应用别名后应用名称优先展示应用别名。 支持输入1~128个字符,只能包含数字、字母、中文、下划线、中划线、括号以及小数点。 企业项目 在下拉菜单中选择企业项目,仅开通企业版才会显示。 描述 应用的描述信息,最多可输入1000个字符。 接入方式默认选择“增强型探针”。 数据接入方式选择“无侵入接入”,通过接入命令接入。 图2 数据接入 表2 参数列表 环境变量 入参 描述 选项 APM_APP_NAME appName 组件名称,代表一个组件。同一个应用下,组件名称不能重复。一个组件可以包含多个环境,不能重复,如果要重复,使用APM_INSTANCE_NAME区分。 必填 APM_AK AK APM访问密钥ID(AK)。 必填 APM_SK SK APM秘密访问密钥(SK)。 必填 APM_MASTER_ADDRESS masterAddress APM探针的接入地址。 必填 APM_BUSINESS business 应用:代表一个逻辑单元,是一个全局概念,各个region都可以看到相同的应用信息,比如一个租户下面比较独立的功能模块可以定义为一个应用。如果填写,则必须提前创建该应用。如果为空,则代表默认应用。 选填 APM_SUB_BUSINESS subBusiness 子应用:在一个应用下面可以创建多个子应用,主要起文件夹和管理的功能,子应用为全局概念,当前最多支持三层子应用,子应用格式为:sub1/sub2/sub3 选填 APM_ENV env 环境:一个组件由于部署不同的配置参数,会形成的多个环境。 选填 APM_ENV_TAG envTag 环境标签:是在环境上的一个属性,多个环境可能具有相同的标签,可以通过标签对环境进行过滤。 选填 APM_INSTANCE_NAME instanceName 实例:是环境下的一个进程,名称由主机名+ip+实例名称组成。 选填
共100000条