华为云用户手册

  • Oracle数据库 介绍APM采集的Oracle数据库指标的类别、名称、含义等信息。 表1 Oracle数据库采集参数 参数名 数据类型 应用类型 默认值 Agent支持的起始版本 Agent支持的终止版本 描述 是否采集原始sql radio JAVA false 2.2.9 - 调用链中是否采集上报带有参数内容的原始sql。 oracle最大采集行数 integer JAVA 500 2.4.1 - oracle最大采集行数 sql语句最大采集字节数 integer JAVA 2000 2.4.7 - sql语句最大采集字节数 表2 Oracle数据库指标说明 指标类别 指标 指标名称 指标说明 单位 数据类型 默认聚合方式 数据库连接(connection,以数据库为维度统计sql调用详情。) db 数据库 数据库名称 - ENUM LAST createdCount 创建连接数 该数据库创建连接数 - INT SUM currentCount 当前连接数 该数据库当前连接数 - INT SUM destroyedCount 销毁连接数 该数据库销毁连接数 - INT SUM errorCount 错误数 该数据库发生错误数 - INT SUM invokeCount 调用次数 该数据库的调用次数 - INT SUM maxTime 最大响应时间 该数据库的最大响应时间 - INT MAX range1 0-10ms 响应时间在0-10ms范围请求数 - INT SUM range2 10-100ms 响应时间在10-100ms范围请求数 - INT SUM range3 100-200ms 响应时间在100-200ms范围请求数 - INT SUM range4 200-1000ms 响应时间在200-1000ms范围请求数 - INT SUM range5 1-10s 响应时间在1-10s范围请求数 - INT SUM range6 10s以上 响应时间在10s以上请求数 - INT SUM ranges 自定义响应时间区间 自定义响应时间区间 - STRING LAST readRowCount 读取行数 该数据库读取行数 - INT SUM updatedRowCount 更新行数 该数据库更新行数 - INT SUM totalTime 总响应时间 该数据库的总响应时间 - INT SUM slowestSql 最慢sql 该数据库在采集周期内的最慢sql - STRING LAST 异常(exception,以数据库为维度统计sql调用详情。) causeType 类名 异常发生类 - ENUM LAST exceptionType 异常类型 异常类型 - ENUM LAST count 次数 异常次数 - INT SUM message 消息 异常消息 - STRING LAST sql 异常sql 发生异常的sql - STRING LAST stackTrace 异常堆栈 异常产生的堆栈信息 - CLOB LAST 版本(version,Oracle的包版本信息。) version 版本 驱动包版本 - STRING LAST sql监控(sql,以sql为维度统计sql调用详情。) sql sql唯一标识 sql对应的唯一id,用于告警配置 - ENUM LAST concurrentMax 最大并发 该sql的最大并发 - INT MAX errorCount 错误次数 该sql的错误次数 - INT SUM errorTraceId 错误traceId 采集周期内发生错误的调用链对应的traceid - STRING LAST invokeCount 调用次数 该sql的调用次数 - INT SUM lastError 错误信息 sql发生错误产生的错误信息 - STRING LAST maxTime 最大响应时间 该sql的最大响应时间 - INT MAX readRowCount 读取行数 该sql的读取行数 - INT SUM runningCount 正在执行数 采集时间点正在执行的sql数量 - INT SUM slowTraceId 慢traceId 采集周期内最慢的调用链对应的traceid - STRING LAST sqlString sql语句 sql语句 - STRING LAST totalTime 总响应时间 该sql的总响应时间 - INT SUM updatedRowCount 更新行数 该sql的更新行数 - INT SUM range1 0-10ms 响应时间在0-10ms范围请求数 - INT SUM range2 10-100ms 响应时间在10-100ms范围请求数 - INT SUM range3 100-200ms 响应时间在100-200ms范围请求数 - INT SUM range4 200-1000ms 响应时间在200-1000ms范围请求数 - INT SUM range5 1-10s 响应时间在1-10s范围请求数 - INT SUM range6 10s以上 响应时间在10s以上请求数 - INT SUM ranges 自定义响应时间区间 自定义响应时间区间 - STRING LAST 汇总total(total,sql调用的汇总数据统计。) invokeCount 调用次数 总调用次数 - INT SUM errorCount 错误次数 总错误次数 - INT SUM readRowCount 读取行数 总读取行数 - INT SUM totalTime 响应时间 总响应时间 - INT SUM updatedRowCount 更新行数 总更新行数 - INT SUM 父主题: 数据库
  • CoapServer监控 介绍APM采集的CoapServer监控指标的类别、名称、含义等信息。 表1 CoapServer监控指标说明 指标类别 指标 指标名称 指标说明 单位 数据类型 默认聚合方式 接口监控(detail,以接口、报文类型、请求类型为维度统计接口调用数据。) url url 请求的url - ENUM LAST requestType 报文类型 该调用的报文类型 - ENUM LAST concurrentMax 最大并发 该方法的最大并发 - INT MAX errorCount 错误数 该方法的错误数 - INT SUM invokeCount 调用次数 该方法的调用次数 - INT SUM maxTime 最大响应时间 该方法在采集周期内最大响应时间 - INT MAX runningCount 正在执行数 该方法在采集时间点正在执行数量 - INT SUM range1 0-10ms 响应时间在0-10ms范围请求数 - INT SUM range2 10-100ms 响应时间在10-100ms范围请求数 - INT SUM range3 100-500ms 响应时间在100-500ms范围请求数 - INT SUM range4 500-1000ms 响应时间在500-1000ms范围请求数 - INT SUM range5 1-10s 响应时间在1-10s范围请求数 - INT SUM range6 10s以上 响应时间在10s以上请求数 - INT SUM totalTime 总响应时间 该方法的总响应时间 - INT SUM method 请求类型 该调用的请求类型 - ENUM LAST errorTraceId 错误traceId 采集周期内发生错误的调用链对应的traceid - STRING LAST slowTraceId 慢traceId 采集周期内最慢的调用链对应的traceid - STRING LAST lastError 错误信息 错误信息 - STRING LAST 状态码(statusInfo,以接口返回的状态码维度统计接口调用数据。) statusInfo 状态码 状态码 - ENUM LAST count 调用次数 该状态码的发生次数 - INT SUM url url 状态码的url - STRING LAST 集群调用(cluster,以调用方集群id维度统计接口调用数据。) clusterId 集群id 调用方的集群id - ENUM LAST invokeCount 调用次数 该集群的调用次数 - INT SUM totalTime 总响应时间 该集群调用的总响应时间 - INT SUM errorCount 错误次数 该集群调用的错误次数 - INT SUM clientErrorCount 客户端错误次数 该集群调用的客户端错误次数 - INT SUM serverErrorCount 服务端错误次数 该集群调用的服务端错误次数 - INT SUM CoapServer版本(version,CoapServer版本。) version 版本 版本 - STRING LAST 父主题: 物联网
  • 数据库连接 使用DDS时,可能会遇到因为Mongod/dds mongos的连接数满了,导致客户端无法连接的问题。在Mongod/dds mongos的服务端,收到一个新的连接由一个单独的线程来处理,每个线程配置了1MB的栈空间,当网络连接数太多时,过多的线程会导致上下文切换开销变大,同时内存开销也会上涨。 客户端连接数据库的时候,要计算业务一共有多少个客户端,每个客户端配置的连接池大小是多少,总的连接数不要超过当前实例能承受的最大连接数的80%。 客户端与数据库的连接应尽量保持相对稳定的状态,每秒新增连接数建议保持在10以下。 建议客户端的连接超时时间至少设置为最大业务执行时长的3倍。 对于副本集实例,客户端需要同时配置主备节点的IP地址;对于集群实例,至少配置两个dds mongos的IP地址。 DDS默认提供rwuser用户,使用rwuser用户登录时认证库必须是admin。
  • 性能相关 规范 业务程序禁止执行全表扫描的查询。 执行查询时,只选择需要返回的字段,不需要的字段不要返回。从而减少网络和进程处理的负载,修改数据时,只修改变化需要修改的字段,不要整个对象直接存储全部修改。 避免使用$not。DDS并不会对缺失的数据进行索引,因此$not的查询条件将会要求在一个结果集中扫描所有记录。如果$not是唯一的查询条件,会对集合执行全表扫描。 用$and时把匹配最少结果的条件放在最前面,用$or时把匹配最多结果的条件放在最前面。 单个实例中,数据库的总的个数不要超过200个,总的集合个数不要超过500个。集合数量过多会导致内存压力变高,并且集合数量多会导致重启以及主备倒换性能变差,影响紧急情况下的高可用性能。 业务上线前,一定要对数据库进行性能压测,评估业务峰值场景下,对数据库的负载情况。 禁止同时执行大量并发事务,且长时间不提交。 业务正式上线前, 所有的查询类别,都应该先执行查询计划检查查询性能。 建议 每个连接在后台都是由一个单独线程处理,每个线程会分配1MB的栈内存。所以连接数不宜过多,否则会占用过多的内存。 使用连接池,避免频繁的建立连接和断开连接,否则会导致CPU过高。 减少磁盘读写:避免使用不必要的upsert命令,避免查询不必要的数据。 优化数据分布:对数据进行分片,同时分散热点数据,均衡地使用实例资源。如何进行数据分片,请参见设置数据分片。 减少锁冲突:避免对同一个Key过于频繁地操作。 减少锁等待:避免前台创建索引。 注意 开发过程中对集合的每一个操作都要通过执行explain()检查其执行计划,如: db.T_DeviceData.find({"deviceId":"ae4b5769-896f"}).explain(); db.T_DeviceData.find({"deviceId":"77557c2-31b4"}).explain("executionStats"); 对于查询而言,因为覆盖查询不需要读取文档,而是直接从索引中返回结果,这样的查询性能好,所以尽可能使用索引覆盖查询。如果explain()的输出显示indexOnly字段为真,则说明这个查询就被一个索引覆盖。 执行计划解析: 看执行时间:executionStats.executionStages.executionTimeMillisEstimate和executionStats.executionStages.inputStage. executionTimeMillisEstimate时间越短越好。 executionStats.executionTimeMillis表示执行计划选择和执行的所有时间。 executionStats.executionStages.executionTimeMillisEstimate表示执行计划的执行完成时间。 executionStats.executionStages.inputStage. executionTimeMillisEstimate表示执行计划下的子阶段执行完成时间。 看扫描条数:三个条目数相同为最佳。 executionStats. nReturned表示匹配查询条件的文档数。 executionStats .totalKeysExamined表示索引扫描条目数。 executionStats .totalDocsExamined表示文档扫描条目数。 看Stage状态,性能较好的Stage状态组合如下。 Fetch+IDHACK Fetch+ixscan Limit+(Fetch+ixscan) PROJECTION+ixscan 表1 状态说明 状态名称 描述 COLLSCAN 全表扫描 SORT 内存中进行排序 IDHACK 根据_id进行查询 TEXT 全文索引 COUNTSCAN 未用索引计数 FETCH 索引扫描 LIMIT 使用Limit限制返回数 SUBPLA 未用索引的$or查询阶段 PROJECTION 限定返回字段时stage的返回 COUNT_SCAN 使用索引计数
  • 分片设计规范 对于使用DDS分片集群,建议尽可能的使用分片集合以充分利用性能,详情请参见设置数据分片以充分利用分片性能。 分片集合使用上建议如下: 对于大数据量(数据量过百万),并有较高读写请求的业务场景,数据量随着业务量增大而增大的,建议采用分片。 对于采用hash分片的集合,需要根据业务后面实际数据量大小,采用预分片,提前预置chunk数量,减少自动均衡和分裂对业务运行造成影响。 对于非空集合开启分片,应将均衡器的开启时间窗放在业务空闲时,避免分片间均衡数据与业务冲突影响性能。设置时间窗口的API接口详情请参见设置集群均衡活动时间窗。 需要基于分片键排序查询且增加数据时可以分布均匀建议使用范围分片,其他使用哈希分片。 合理设计shard key,防止出现大量的数据使用相同shard key,导致出现jumbo chunk。 使用分片集群,执行dropDatabase后,一定要执行flushRouterConfig命令,详情请参见如何规避dds mongos路由缓存缺陷。 业务的update请求需要注意与片键相适配。在使用分片表时,如果出现如下场景则update请求会报错,并返回“An upsert on a sharded collection must contain the shard key and have the simple collation”。 update请求的filter中未携带片键字段且选项multi:false set中未携带片键字段且选项upsert:true
  • 创建索引 DDS使用如下命令创建索引: db.collection.createIndex(keys, options) key 值为你要创建的索引字段,1 为指定按升序创建索引,-1代表降序创建索引。 options接收可选参数,常用可选参数列表如下: Parameter Type Description background Boolean 默认值为false。 建索引过程会阻塞其它数据库操作,background可指定以后台方式创建索引。 unique Boolean 默认值为false。 建立的索引是否唯一。指定为true创建唯一索引。 name string 索引的名称。如果未指定,MongoDB的通过连接索引的字段名和排序顺序生成一个索引名称。 expireAfterSeconds integer 指定一个以秒为单位的数值,完成 TTL设定,设定集合的生存时间。 创建索引。 单字段索引(Single Field Index) db.user.createIndex({"name": 1}) 上述语句针对name创建了单字段索引,其能加速对name字段的各种查询请求,是最常见的索引形式,DDS默认创建的id索引也是这种类型,{"name": 1} 代表升序索引,也可以通过{"name": -1}来指定降序索引,对于单字段索引,升序/降序效果是一样的。 复合索引(Compound Index) 复合索引是单子索引的升级版本,它针对多个字段联合创建索引,先按第一个字段排序,第一个字段相同的文档按第二个字段排序,依次类推。 db.user.createIndex({"name": 1, "age": 1} ) 多键索引 当索引的字段为数组时,创建出的索引称为多键索引。 多键索引会为数组的每个元素建立一条索引。 如果为user集合加入一个habit字段(数组)用于描述兴趣爱好,需要查询有相同兴趣爱好的人就可以利用habit字段的多键索引。 {“name” : “jack”, “age” : 19, habit: [“football, runnning”]} //这是person表的一条用户信息。 db.user.createIndex( {"habit": 1} ) //自动创建多key索引 db.user.find( {"habit": "football"} ) //查询有相同兴趣爱好的人 查看集合索引。 db.user.getIndexes() 删除集合所有索引。 db.user.dropIndexes() 删除集合指定索引。如下方式删除user集合中"name"索引。 db.user.dropIndex({"name": 1})
  • 注意事项 DDS除了支持多种不同类型的索引,还能对索引定制一些特殊的属性。 唯一索引(unique index):保证索引对应的字段不会出现相同的值,比如_id索引就是唯一索引。 TTL索引:可以针对某个时间字段,指定文档的过期时间(经过指定时间后过期 或 在某个时间点过期)。 部分索引(partial index): 只针对符合某个特定条件的文档建立索引。 稀疏索引(sparse index): 只针对存在索引字段的文档建立索引,可看做是部分索引的一种特殊情况。
  • 索引分类 索引分类 说明 默认索引 在创建集合期间,DDS在_id字段上创建唯一索引。该索引可防止客户端插入两个具有相同值的文档。你不能将_id字段上的index删除。 在分片群集中,如果您不使用_id字段作为分片键,应用程序需要确保_id字段中值的唯一性以防止错误。这通常是通过使用标准的自动生成的ObjectId来完成的。 单字段索引 除DDS定义的_id索引外,DDS还支持在文档的单个字段上创建用户定义的升序/降序索引。 对于单字段索引和排序操作,索引键的排序顺序(升序或降序)并不重要,因为DDS可以从任何方向遍历索引。 复合索引 DDS还支持多个字段上的用户定义索引,即复合索引。 复合索引中列出的字段的顺序具有重要意义。例如,如果一个复合索引由{userid: 1, score: -1}组成,索引首先按userid排序,然后在每个userid值内按score排序。 对于复合索引和排序操作,索引键的排序顺序(升序或降序)可以决定索引是否支持排序操作。 多键索引 DDS使用多键索引来索引存储在数组中的内容。如果索引包含数组值的字段,DDS为数组的每个元素创建单独的索引项。这些多键索引允许查询通过匹配数组的一个或多个元素来选择包含数组的文档。DDS自动决定是否创建一个多键索引,如果索引字段包含数组值,您不需要显式地指定多键类型。
  • 前提条件 删除消息前,请先在消费代码中设置“auto.offset.reset”参数。“auto.offset.reset”用来指定当Kafka中没有初始偏移量或者当前偏移量不存在(例如当前偏移量已被删除)时,消费者的消费策略。取值如下: latest:偏移量自动被重置到最晚偏移量。 earliest:偏移量自动被重置到最早偏移量。 none:向消费者抛出异常。 如果将此配置设置为latest,新增分区时,生产者可能会在消费者重置初始偏移量之前开始向新增加的分区发送消息,从而导致部分消息丢失。
  • 准备依赖资源 Kafka实例所需资源的具体要求和创建指导如表1所示。 表1 Kafka实例依赖资源 准备资源 要求 创建指导 VPC和子网 Kafka实例可以使用当前账号下已创建的VPC和子网,也可以使用新创建的VPC和子网,还可以使用共享VPC和子网,请根据实际需要进行配置。 共享VPC是基于资源访问管理(Resource Access Manager,简称RAM)服务的机制,VPC的所有者可以将VPC内的子网共享给一个或者多个账号使用。通过共享VPC功能,可以简化网络配置,帮助您统一配置和运维多个账号下的资源,有助于提升资源的管控效率,降低运维成本。有关VPC子网共享的更多信息,请参见共享VPC。 在创建VPC和子网时应注意如下要求: 创建的VPC与Kafka实例在相同的区域。 创建VPC和子网时,配置参数建议使用默认配置。 创建VPC和子网的操作指导请参考创建虚拟私有云和子网,若需要在已有VPC上创建和使用新的子网,请参考为虚拟私有云创建新的子网。 安全组 不同的Kafka实例可以重复使用相同的安全组,也可以使用不同的安全组,请根据实际需要进行配置。 使用Kafka实例前,添加表2所示安全组规则,其他规则请根据实际需要添加。 说明: 创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问Kafka实例,无需添加表2的规则。 创建安全组的操作指导请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则。 弹性IP地址 在创建弹性IP地址时,应注意如下要求: 创建的弹性IP地址与Kafka实例在相同的区域。 弹性IP地址的数量必须与Kafka实例的代理个数相同。 Kafka控制台无法识别开启IPv6转换功能的弹性IP地址。 创建弹性IP地址的操作指导请参考申请弹性公网IP。 表2 安全组规则 方向 协议 端口 源地址 说明 入方向 TCP 9094 0.0.0.0/0 通过公网访问Kafka实例(关闭SSL加密)。 入方向 TCP 9092 0.0.0.0/0 使用内网通过同一个VPC访问Kafka实例(关闭SSL加密)。 使用对等连接跨VPC访问Kafka实例(关闭SSL加密)。 入方向 TCP 9095 0.0.0.0/0 通过公网访问Kafka实例(开启SSL加密)。 入方向 TCP 9093 0.0.0.0/0 使用内网通过同一个VPC访问Kafka实例(开启SSL加密)。 使用对等连接跨VPC访问Kafka实例(开启SSL加密)。 入方向 TCP 9011 198.19.128.0/17 通过VPC终端节点实现跨VPC访问Kafka实例(开启SSL加密和关闭SSL加密都适用)。 入方向 TCP 9011 0.0.0.0/0 使用DNAT访问Kafka实例(开启SSL加密和关闭SSL加密都适用)。
  • 概述 在创建Kafka实例前,您需要提前准备相关依赖资源,包括虚拟私有云(Virtual Private Cloud,以下简称VPC)、子网和安全组,并配置安全组策略。每个Kafka实例都部署在某个VPC中,并绑定具体的子网和安全组,通过这样的方式为Kafka提供一个隔离的、用户自主配置和管理的虚拟网络环境以及安全保护策略,提升实例的安全性。 如果需要通过公网访问Kafka实例,请提前准备弹性IP地址。
  • 计费周期 按需计费CloudTable资源按秒计费,每一个小时整点结算一次费用(以UTC+8时间为准),结算完毕后进入新的计费周期。计费的起点以CloudTable集群创建成功的时间点为准,终点以实例删除时间为准。 云服务器从创建到启动需要一定时长,计费的起点是创建成功的时间点,而非创建时间。您可以在云服务器详情页“基本信息”页签查看这两个时间,创建成功的时间点对应界面上的“启动时间”。 例如,您在8:45:30购买了一台按需计费的集群,然后在8:55:30将其删除,则计费周期为8:00:00 ~ 9:00:00,在8:45:30 ~ 8:55:30间产生费用,该计费周期内的计费时长为600秒。
  • 变更配置后对计费的影响 如果您在购买按需计费集群后变更了集群配置,会产生一个新订单并开始按新配置的价格计费,旧订单自动失效。 如果您在一个小时内变更了集群配置,将会产生多条计费信息。每条计费信息的开始时间和结束时间对应不同配置在该小时内的生效时间。 HBase、Doris和ClickHouse组件是按照小时收费的,CU未满1小时,按照1小时收费。 按需产品周期结算说明: 按小时结算:华为云会每小时根据您的使用量计算费用,并到账户中进行扣费。例如,8:00~9:00期间产生的费用,通常会在10:00以前完成扣费。 按月结算:华为云会根据您的使用量计算费用,每月月初对前一月使用量进行扣费。例如,2019-04-01 00:00:00 至2019-04-30 23:59:59期间产生的费用,通常会在2019-05-01 01:00:00左右完成扣费。
  • 计费示例 假设您在2023/04/18 9:59:30购买了一个集群,计费资源包括计算资源(vCPU和内存)和带宽(6Mbit/s),然后在2023/04/18 10:45:46将其删除,则: 第一个计费周期为9:00:00 ~ 10:00:00,在9:59:30 ~ 10:00:00间产生费用,该计费周期内的计费时长为30秒,按1小时算。 第二个计费周期为10:00:00 ~ 11:00:00,在10:00:00 ~ 10:45:46间产生费用,该计费周期内的计费时长为2746秒,按1小时算。 您需要为每个计费周期付费,各项ECS资源单独计费,计费公式如表2所示。产品价格详情中标出了资源的每小时价格,您需要将每小时价格除以3600,得到每秒价格。 HBase组件计费示例 表4 计费公式 资源类型 计费公式 资源单价 计算规格 节点规格单价 * 购买时长*节点数量 以控制台实际显示价格为主。 存储费用 数据存储单价*数据存储容量*节点个数*购买时长 以控制台实际显示价格为主。 图3 按需计费CloudTable HBase费用计算示例给出了上述示例配置的费用计算过程。 图中价格仅供参考,实际计算请以表格存储服务器价格详情中的价格为准。 图4 按需计费CloudTable HBase费用计算示例 Doris计费示例 表5 计费公式 资源类型 计费公式 资源单价 计算规格 节点规格单价 * 购买时长*节点数量 请参见表格存储服务器价格详情中的“规格价格”。 存储费用 数据存储单价*数据存储容量*节点个数*购买时长 请参见表格存储服务器价格详情中的“规格价格”。 图3 按需计费CloudTable Doris费用计算示例给出了上述示例配置的费用计算过程。 图中价格仅供参考,实际计算请以表格存储服务器价格详情中的价格为准。 图5 Doris按需计费示例 ClickHouse计费示例 表6 计费公式 资源类型 计费公式 资源单价 计算规格 节点规格单价 * 购买时长*节点数量 以控制台实际显示价格为主。 存储费用 数据存储单价*数据存储容量*节点个数*购买时长 以控制台实际显示价格为主。 图6给出了上述示例配置的费用计算过程。 图中价格仅供参考,实际计算请以表格存储服务器价格详情中的价格为准。 图6 ClickHouse按需计费
  • 适用计费项 按需计费包含以下计费项。 HBase组件 表1 HBase适用计费项 计费项 说明 计算规格 节点的计算规格。 存储规格 节点的存储规格以及容量。 节点数量 节点的数量。 假设您计划购买一个HBase集群,在购买云服务器页面底部,您将看到所需费用的明细,如图1所示。 图1 HBase集群配置费用示例 Doris组件 表2 Doris适用计费项 计费项 说明 计算规格 节点的计算规格。 存储规格 节点的存储规格以及容量。 节点数量 节点的数量。 假设您计划购买一个Doris集群,在购买云服务器页面底部,您将看到所需费用的明细,如图2所示。 图2 Doris集群配置费用示例 配置费用将包括以下部分: 节点费用:根据所选节点规格和节点数量计算的费用。 存储费用:根据所选存储规格、容量以及节点数量计算的费用。 ClickHouse组件 表3 ClickHouse适用计费项 计费项 说明 计算规格 节点的计算规格。 存储规格 节点的存储规格以及容量。 节点数量 节点的数量。 假设您计划购买一个ClickHouse集群,在购买云服务器页面底部,您将看到所需费用的明细,如图3所示。 图3 ClickHouse集群配置费用示例 配置费用将包括以下部分: 节点费用:根据所选节点规格和节点数量计算的费用。 存储费用:根据所选存储规格、容量以及节点数量计算的费用。
  • 计费说明 表格存储服务器的计费项由集群规格费用组成。 HBase、Doris、ClickHouse计费项 表1 HBase/Doris/ClickHouse计费项 计费项 计费项说明 适用的计费模式 计费公式 计算规格 计费因子:vCPU和内存,不同规格的实例类型提供不同的计算和存储能力。 按需计费、包年/包月 集群节点规格单价 * 购买时长 * 节点数量 实例规格单价请参见表格服务器价格详情中的“规格价格”。 数据存储 计费因子:存储空间,按统一标准进行计费 按需计费、包年/包月 存储单价 * 购买时长 * 存储容量 * 节点数量
  • 计费场景 按需计费场景:某用户于2023/03/18 15:00:00购买了一个HBase集群,集群使用时间为1小时。使用0.5个小时后对Core节点进行扩容(3节点变为6节点)。由于该集群要长期使用,所以2023/03/18 15:59:59将集群计费模式转为包年/包月计费,购买时长为1个月,那么3~4月份,该集群总共产生多少费用?规格配置如下: Master节点 计算规格:4U16G。 存储规格:超高IO,容量200GB/节点。 节点数量:3个(集群默认配置为高可用,使用2个master节点,额外免费赠送1个master,用于集群监控)。 Core节点 计算规格:4U16G。 存储规格:高IO,容量400GB/节点。 节点数量:3个。
  • 计费构成分析 用了一段时间后,用户发现云服务器当前规格无法满足业务需要,于2023/03/18 15:30:00对集群扩容,扩容规格如下: 表1 变更计费模式 计费模式 计算规则 付费周期 费用计算 按需计费(节点扩容前) CU费用:CU单价 x 节点数 平均每小时的费用 Master节点CU费用:1.3(CU单价:元/小时)x 2(节点)x 1小时 = 2.60元 Core节点CU费用:1.3(CU单价:元/小时)x 3(节点)x 1小时= 3.90元 磁盘费用: 磁盘单价 x 容量 x 节点 Core节点磁盘费用:0.00048(磁盘单价:元/小时)x 400(容量:GB)x 3(节点)x 0.5小时=0.288元 总费用:6.788 元 按需计费(节点扩容后) CU费用:CU单价 x 节点数 平均每小时的费用 Master节点CU费用:1.3(CU单价:元/小时)x 2(节点)x 1小时 = 2.60元 Core节点CU费用:1.3(CU单价:元/小时)x 6(节点)x 1小时 = 7.80元 磁盘费用: 磁盘单价 x 容量 x 节点 Core节点磁盘费用:0.00048(磁盘单价:元/小时)x 400(容量:GB)x 6(节点)x 1小时=1.152元 总费用:11.552 元 包年/包月 CU费用:CU单价 x 节点数 平均每月的费用 Master节点CU费用:616(CU单价:元/月)x 2(节点) = 1232元 Core节点CU费用:616(CU单价:元/月)x 6(节点) = 3696元 磁盘费用: 磁盘单价 x 容量 x 节点 Core节点磁盘费用:0.32(磁盘单价:元/月)x 400(容量:GB)x 6(节点)=768元 合计 总费用:5696元 由此可见,在3~4月份,该HBase集群总共产生费用为:11.552+5696=5707.552元。 HBase组件是按照小时收费的,CU未满1小时,按照1小时收费。 按需产品周期结算说明: 按小时结算:华为云会每小时根据您的使用量计算费用,并到账户中进行扣费。例如,8:00~9:00期间产生的费用,通常会在10:00以前完成扣费。 按月结算:华为云会根据您的使用量计算费用,每月月初对前一月使用量进行扣费。例如,2019-04-01 00:00:00 至2019-04-30 23:59:59期间产生的费用,通常会在2019-05-01 01:00:00左右完成扣费。
  • 计费构成分析 基于此样例,可以详细计算出变更规格前后的消费情况。 表1 变更计费模式 计费模式 计算规则 付费周期 费用计算 按需计费(变更规格前) CU费用:CU单价 x 节点数 平均每小时的费用 计算节点CU费用:1.4(CU单价:元/小时)x 2(节点)x 1小时 = 2.80元 ZooKeeper节点CU费用:1.4(CU单价:元/小时)x 3(节点)x 1小时= 4.20元 磁盘费用: 磁盘单价 x 容量 x 节点 计算节点磁盘费用:0.00097(磁盘单价:元/小时)x 500(容量:GB)x 2(节点)x 0.5小时=0.485元 ZooKeeper节点磁盘费用:0 总费用:7.485元 按需计费(变更规格后) CU费用:CU单价 x 节点数 平均每小时的费用 计算节点CU费用:1.4(CU单价:元/小时)x 2(节点)x 1小时= 2.80元 ZooKeeper节点CU费用:2.8(CU单价:元/小时)x 3(节点)x 1小时 = 8.40元 磁盘费用: 磁盘单价 x 容量 x 节点 计算节点磁盘费用:0.00097(磁盘单价:元/小时)x 500(容量:GB)x 2(节点)x 1小时=0.97元 ZooKeeper节点磁盘费用:0 总费用:12.17元 包年/包月 CU费用:CU单价 x 节点数 平均每月的费用 计算节点CU费用:680(CU单价:元/月)x 2(节点) = 1360元 ZooKeeper节点CU费用:1360(CU单价:元/月)x 3(节点) = 4080元 磁盘费用: 磁盘单价 x 容量 x 节点 计算节点磁盘费用:0.35(磁盘单价:元/月)x 500(容量:GB)x 2(节点)=350元 ZooKeeper节点磁盘费用:0 合计 总费用:5790元 Doris和ClickHouse组件是按照小时收费的,CU未满1小时,按照1小时收费。 按需产品周期结算说明: 按小时结算:华为云会每小时根据您的使用量计算费用,并到账户中进行扣费。例如,8:00~9:00期间产生的费用,通常会在10:00以前完成扣费。 按月结算:华为云会根据您的使用量计算费用,每月月初对前一月使用量进行扣费。例如,2019-04-01 00:00:00 至2019-04-30 23:59:59期间产生的费用,通常会在2019-05-01 01:00:00左右完成扣费。 由此可见,在3~4月份,该ClickHouse集群总共产生费用为:12.17+5790=5802.17元。
  • 计费模式概述 表格存储服务器(CloudTable)当前支持按需计费和包年/包月以满足不同场景下的用户需求。 按需计费:一种后付费模式,即先使用再付费,按照云服务器实际使用时长计费,秒级计费,按小时结算。按需计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。一般适用于电商抢购等设备需求量瞬间大幅波动的场景。 包年/包月:根据集群购买时长,一次性支付集群费用。 表1 计费模式 计费模式 包年/包月 按需计费 付费方式 预付费。 按照订单的购买周期结算。 后付费 按照CloudTable实际使用时长计费。 计费周期 按订单的购买周期计费。 秒级计费,按小时结算。 适用计费项 HBase:计算规格、存储规格、节点数量。 Doris:计算规格、存储规格、节点数量。 ClickHouse:计算规格、存储规格、节点数量。 HBase:计算规格、存储规格、节点数量。 Doris:计算规格、存储规格、节点数量。 ClickHouse:计算规格、存储规格、节点数量。 变更计费模式 暂不支持包年/包月转按需。 支持按需变更为包年/包月模式。 变更规格 HBase支持节点数量变更。 Doris支持计算规格、存储规格、节点数量变更。 ClickHouse支持节点数量变更。 支持变更实例规格,变更规格后影响集群计费。 HBase支持节点数量变更。 Doris支持计算规格、存储规格、节点数量变更。 ClickHouse支持算规格、存储规格、节点数量变更。 适用场景 适用于可预估资源使用周期的场景,价格比按需计费模式更优惠。对于长期使用者,推荐该方式。 适用于计算资源需求波动的场景,可以随时开通,随时删除。 父主题: 计费模式
  • 适用计费项 以下计费项支持包年/包月。 表1 适用计费项 计费项 说明 计算规格 节点的计算规格。 存储规格 节点的存储规格以及容量。 节点数量 节点的数量。 假设您计划购买一个HBase/Doris/ClickHouse集群,在购买云服务器页面底部,您将看到所需费用的明细,如下图所示。 图1 HBase集群配置费用示例 图2 Doris集群配置费用示例 图3 ClickHouse集群配置费用示例 配置费用将包括以下部分: 节点费用:根据所选节点规格和节点数量计算的费用。 存储费用:根据选择的存储规格和容量计算的费用
  • 到期后影响 图3 包年/包月CloudTable资源生命周期描述了包年/包月CloudTable资源各个阶段的状态。购买后,在计费周期内资源正常运行,此阶段为有效期;资源到期而未续费时,将陆续进入宽限期和保留期。 图7 包年/包月CloudTable资源生命周期 到期预警 包年/包月CloudTable资源在到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为云账号的创建者。 到期后影响 当您的包年/包月CloudTable资源到期未续费,首先会进入宽限期,资源状态变为“已过期”。宽限期内您可以正常访问云服务器。 如果您在宽限期内仍未续费包年/包月CloudTable资源,那么就会进入保留期,资源状态变为“已冻结”,您将无法对处于保留期的包年/包月资源执行任何操作。 保留期到期后,如果包年/包月CloudTable资源仍未续费,那么计算资源(vCPU和内存)、云硬盘和弹性公网IP都将被释放,数据无法恢复。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。
  • 适用场景 包年/包月计费模式需要用户预先支付一定时长的费用,适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业官网、在线商城、博客等。 长期项目:对于周期较长的项目,如科研项目、大型活动策划等。 业务高峰预测:如果能预测到业务高峰期,如电商促销季、节假日等,可提前购买包年/包月资源以应对高峰期的需求,避免资源紧张。
  • 计费示例 假设您在2023/03/08 15:50:04购买了一台云服务器,计费资源包括计算单元、数据存储。购买时长为一个月,并在到期前手动续费1个月,则: 第一个计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59。 第二个计费周期为:2023/04/08 23:59:59 ~ 2023/05/08 23:59:59。 您需要为每个计费周期预先付费,计费公式如表2所示。 表2 计费公式 资源类型 计费公式 资源单价 计算规格 节点规格单价 * 购买时长*节点数量 以控制台实际显示价格为主。 存储费用 数据存储单价*数据存储容量*节点个数*购买时长 以控制台实际显示价格为主。 图中价格仅供参考,实际计算请以表格存储服务器价格详情中的价格为准。 图4 包年/包月HBase费用计算示例 图5 包年/包月Doris费用计算示例 图6 包年/包月ClickHouse费用计算示例
  • 效果验证 以脱敏“护照号”信息,且审计的数据库为MySQL为例说明,请参考以下操作步骤验证隐私数据脱敏功能是否生效: 开启“隐私数据脱敏”,并确保“护照号”规则已启用,如图2所示。 图2 规则已启用 使用MySQL数据库自带的客户端,以root用户登录数据库。 在数据库客户端,输入一条SQL请求语句。 select * from db where HOST="护照号"; 在左侧导航栏选择“数据报表”,进入“数据报表”页面。 根据筛选条件,查询输入的SQL语句。 在该SQL语句所在行的“操作”列,单击“详情”。 查看SQL请求语句信息,隐私数据脱敏功能正常,“SQL请求语句”显示脱敏后的信息。
  • 操作场景 云审计服务支持创建数据类事件追踪器,用于记录数据操作日志。数据类追踪器用于记录数据事件,即针对租户对OBS桶中的数据的操作日志,例如上传、下载等。 在开通云审计服务时,系统已为您自动创建了一个管理事件追踪器,管理事件追踪器只能有一个,故后续您自行创建的追踪器均为数据类事件追踪器。 CTS仅记录最近7天内的操作事件,您需要配置追踪器来保存更长时间的事件,否则将无法追溯7天前的操作事件。追踪器会将事件持续保存到您指定的LTS日志流或者OBS桶中。
  • Linux机器问题排查 检查IP、用户名及密码是否正确。 检查目标主机开放的端口是否为SSH协议端口(默认端口为22)。 开启方法: 开启防火墙。 systemctl start firewalld.service systemctl stop firewalld.service #关闭防火墙命令 开启端口。 firewall-cmd --zone=public --add-port=22/tcp --permanent --zone #作用域。 --add-port=22/tcp #端口,格式为:端口/通讯协议。 --permanent #永久生效,没有此参数重启后失效。 重启防火墙。 firewall-cmd --reload 检查当前网络状态。 使用“tcpdump”命令查看当前网络连接状态,命令如下: tcpdump -n "tcp port 22 and host xxx.xxx.xxx.xxx" #该命令执行在本地PC端,其中xxx.xxx.xxx.xxx为部署服务对外IP,目的是验证部署服务执行主机的网络是否畅通。 #或者: tcpdump -n "tcp port 22" | grep -v "xxx.xxx.xxx.xxx" #该命令执行在本地PC端,其中xxx.xxx.xxx.xxx为被部署的目标主机IP,目的是验证部署主机的网络是否畅通。 如下图所示,无回显信息说明网络已畅通。 部署服务对外IP如下。 中国站: 49.4.3.11 139.159.226.153 在主机列表对目标主机做连通性验证,观察部署服务端是否对目标主机做了SSH协议连接,出现如下图所示,说明部署服务对目标主机做了SSH协议连接。 原因分析: 服务端对目标主机存在SSH连接 如果服务端存在SSH连接,说明是目标主机本身配置问题。 如果已经定位出是目标主机配置问题,或者未安装Tcpdump,都需要检查目标主机本身配置来排查: 参考《用户指南》“配置黑/白名单”章节。 查看是否有防火墙配置,以iptables为例,命令如下: iptables -L 服务端对目标主机不存在SSH连接 如果服务端对目标主机不存在SSH连接,说明目标主机网络不可达,其所在的网络环境可能存在访问限制。 请查看硬件防火墙等相关网络配置,是否有限制源IP、目标IP、SSH协议配置的安全策略。 查看ssh密钥文件权限。 root账户登录机器,依次执行以下命令查看ssh密钥文件权限。 cd /root/.ssh ll 如图所示,查看文件权限是否为“rw”。 若文件权限不正确,执行以下命令完成修改。 chmod 600 文件名 主机连通性验证的用户对${HOME}目录操作失败。 检查主机${HOME}目录所在磁盘是否已满。 排查${HOME}目录所在磁盘是否已满,参考命令df -h 。 查看用户${HOME}目录的权限设置及目录隐藏属性等信息:ll -ld ${HOME},lsattr -d ${HOME}。 检查用户对${HOME}目录是否有读写权限。 修改${HOME}目录权限,为用户增加读写权限:参考命令 chmod ,chattr 。 检查用户默认shell设置是否为nologin。 查看用户默认shell设置是否为nologin模式,参考命令: cat /etc/passwd |grep $username ,其中$username为用户名。 (代理主机)如果已关联主机的代理主机连通性失败或者界面提示“主机连接超时,请查看解决方案”,请按如下方式进行排查: 测试代理主机的连通性。 检查代理主机上SSH配置AllowTcpForwarding是开启,命令如下: grep "AllowTcpForwarding" /etc/ssh/sshd_config 如果该属性值为no,则设置为yes,并重新启动sshd服务,命令如下: service sshd restart
  • 处理方法 若未安装Go,可通过“安装Go语言 ”部署步骤进行安装。 正确配置相关环境变量。 由于当前启动/停止操作为“no_login”方式,若系统为Linux系统,Go语言为手动安装,还需在以下文件中增加环境变量: Ubuntu: ~/.bashrc 和 ~/.profile Centos: ~/.bashrc 和 ~/.bash_profile 所需环境变量配置示例如下: export GOROOT=/usr/local/go/go_install_dir/go export GOPATH=/usr/local/go/go_workpath export PATH= $GOROOT/bin:$PATH
  • 部署服务相关权限说明 部署服务各维度的操作权限说明如下表所示。 应用默认权限说明 角色/动作 默认权限 创建 查看 修改 删除 执行 复制 禁用 新建环境 权限管理 应用创建者 - 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 项目管理员 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 项目经理 有权限 有权限 有权限 有权限 有权限 有权限 有权限 有权限 有权限 产品经理 有权限 有权限 无权限 无权限 无权限 无权限 无权限 无权限 无权限 测试经理 无权限 有权限 无权限 无权限 无权限 无权限 无权限 无权限 无权限 运维经理 无权限 有权限 无权限 无权限 无权限 无权限 无权限 有权限 无权限 系统工程师 有权限 有权限 有权限 有权限 有权限 有权限 有权限 无权限 无权限 Committer 有权限 有权限 有权限 有权限 有权限 有权限 无权限 无权限 无权限 开发人员 有权限 有权限 有权限 有权限 有权限 有权限 无权限 无权限 无权限 测试人员 无权限 有权限 无权限 无权限 无权限 无权限 无权限 无权限 无权限 参与者 无权限 有权限 无权限 无权限 无权限 无权限 无权限 无权限 无权限 浏览者 无权限 有权限 无权限 无权限 无权限 无权限 无权限 无权限 无权限 主机集群默认权限说明 角色/权限 查看 编辑 删除 添加主机 复制主机 权限管理 主机集群创建者 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 项目创建者 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 有权限且不可修改 项目经理 有权限 有权限 有权限 有权限 有权限 有权限 产品经理 有权限 无权限 无权限 无权限 无权限 无权限 测试经理 有权限 无权限 无权限 无权限 有权限 无权限 运维经理 有权限 无权限 无权限 无权限 有权限 无权限 系统工程师 有权限 无权限 无权限 无权限 无权限 无权限 Committer 有权限 无权限 无权限 无权限 无权限 无权限 开发人员 有权限 有权限 有权限 有权限 有权限 无权限 测试人员 有权限 无权限 无权限 无权限 有权限 无权限 参与者 有权限 无权限 无权限 无权限 有权限 无权限 浏览者 有权限 无权限 无权限 无权限 有权限 无权限 部署模板 操作 权限设定 系统模板 自定义模板 查看 所有用户 同租户下用户创建的 创建 所有用户都没权限 项目创建者、项目经理、开发人员 修改 所有用户都没权限 模板创建者、租户管理员 删除 所有用户都没权限 模板创建者、租户管理员
  • 接口约束 Serverless型实例不支持该接口。 仅支持停止存储类型为超高IO、SSD云盘、极速型SSD的按需实例,专属云RDS不支持停止实例。 已停止的实例被删除后不会进入回收站。 停止主实例时,如果存在只读实例,会同时停止只读实例。不支持单独停止只读实例。对于华东-上海一区域,主实例和只读实例均默认停止十五天。对于除华东-上海一外的其他区域,主实例和只读实例均默认停止七天。 对于华东-上海一区域,实例默认停止十五天,如果您在十五天后未手动开启实例,数据库实例将于十五天后的下一个可维护时间段内自动启动。 对于除华东-上海一外的其他区域,实例默认停止七天,如果您在七天后未手动开启实例,数据库实例将于七天后的下一个可维护时间段内自动启动。 实例停止后,虚拟机(VM)停止收费,其余资源包括弹性公网IP(EIP)、存储资源、备份正常计费。 按需付费的数据库实例停止实例后,可能会出现由于资源不足引起开启失败,如遇到无法开启的情况请联系客服人员处理。 实例在以下状态不能执行停止实例: 创建、重启、扩容、变更规格、恢复、修改端口等不能进行此操作。
共100000条