华为云用户手册

  • 前提条件 CAE运行于虚拟私有云,创建环境前,需保证有可用的虚拟私有云和子网。 创建虚拟私有云和子网,请参考创建虚拟私有云和子网。 如果引擎创建账号的权限为创建引擎的最小权限,如云应用引擎细粒度权限依赖说明中的“cae:environment:create”所示。则需要由主账号为其预置VPC默认安全组cae-default-sg,并添加如表1所示规则。 添加安全组规则,请参考添加安全组规则。 表1 默认安全组cae-default-sg规则说明 方向 优先级 策略 协议端口 类型 源地址 入方向 1 允许 TCP : 3000-65535 IPv4 0.0.0.0/0 1 允许 全部 IPv6 cae-default-sg 1 允许 全部 IPv4 cae-default-sg 出方向 100 允许 全部 IPv4 0.0.0.0/0 100 允许 全部 IPv6 ::/0 默认安全组请勿随意修改和删除,否则会导致系统运行异常。
  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“伸缩策略”模块中的“编辑”。 单击选择“时间策略”,参考表1配置时间弹性伸缩策略。 表1 配置时间策略 参数 参数说明 最大实例数 扩容时允许达到的最大实例数。 取值范围[1,99]。 说明: 最大实例数必须大于最小实例数。 最小实例数 缩容时允许达到的最小实例数。 取值范围[1,99]。 触发周期 期望策略以指定的周期执行。可选“每天”,“每周”,“每月”。 单天内触发时间 当“触发周期”选择“每天”时需要配置。 配置单天周期内的触发时间策略。 例如:每天,从18:00之后保持实例数为3个 。 单击“添加触发时间”可以添加多条触发时间策略。 单周内触发时间 当“触发周期”选择“每周”时需要配置。 配置单周周期内的触发时间策略。 例如:每周,从周一08:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 单月内触发时间 当“触发周期”选择“每月”时需要配置。 配置单月周期内的触发时间策略。 例如:每月,从5号06:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 可以配置时间段自动控制实例伸缩。 例如:设置触发“触发周期”为“每天”,单天内触发时间配置:从18:00之后保持实例数为3个,从00:00之后保持实例数为1个 。则每天00:00至18:00,系统自动检测,保持实例数为1个。每天18:00至次日00:00,系统自动检测,保持实例数为3个。 图2 配置时间伸缩 单击“确定”,完成时间伸缩策略配置。 单击页面上方“生效配置”。在右侧弹框中确认修改信息,并单击“确定”,使配置生效。
  • 修改自定义日志路径 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中,选择待操作的组件。 单击“日志采集”模块中的“编辑”。 在右侧弹框中选择待修改路径,在“操作”列单击“编辑”。 重新配置日志采集路径,例如:/var/log/CAE/logs/*.out。 图3 修改自定义日志路径 (可选)按需重新配置日志采集格式。 单击“保存”后,单击“确定”。 单击页面上方“生效配置”。在右侧弹框中确认变更信息,并单击“确定”,使配置生效。 查看修改路径后的日志信息。 图4 修改路径后的日志
  • 删除自定义日志路径 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中,选择待操作的组件。 单击“日志采集”模块中的“编辑”。 在右侧弹框中选择待删除路径,在“操作”列单击“删除”。 在弹框内单击“是”。删除路径后,单击“确定”。 图5 删除自定义日志路径 单击页面上方“生效配置”。在右侧弹框中确认变更信息,并单击“确定”,使配置生效。 删除路径文件表示不再继续采集指定路径文件的日志,但仍可查看对应日志文件的历史日志信息。
  • 新增日志采集 最多支持配置 20 条日志采集路径。 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中,选择待操作的组件。 单击“日志采集”模块中的“编辑”。 在右侧弹框中单击“新增日志路径”。 在“日志采集路径”下填入需要采集日志的路径。例如:/var/log/springboot.log。 图1 配置自定义日志路径 单击“保存”。 设置高级设置。 系统默认按行采集显示程序打印的日志。在程序打印日志存在一条完整日志跨占多行的情况下,如果需要采集显示整条日志,您可以设置“日志格式”,开启多行日志。 单行日志:系统默认按行采集日志。 多行日志:多行合并为一行,系统按设置的匹配规则采集日志,不满足匹配规则的日志行会与上一次满足匹配规则的日志行合并为一行。 选择“日志时间”表示采用时间匹配方式。 时间通配符:“分行模式”选择“日志时间”时,请输入时间通配符。 例如日志中每条日志发生的时间格式是YYYY-MM-DD hh:mm:ss,则时间通配符按照规则应该填写YYYY-MM-DD hh:mm:ss。 时间通配符填写示例: YY - year (19) YYYY - year (2019) M - month (1) MM - month (01) D - day (1) DD - day (01) hh - hours (23) mm - minutes (59) ss - seconds (59) SSS - millisecond(999) hpm - hours (03PM) h:mmpm - hours:minutes (03:04PM) h:mm:sspm - hours:minutes:seconds (03:04:05PM) hh:mm:ss ZZZZ (16:05:06 +0100) hh:mm:ss ZZZ (16:05:06 CET) hh:mm:ss ZZ (16:05:06 +01:00) 正则模式:“分行模式”选择“正则模式”时,请根据日志中每条日志开头的格式输入相应的正则表达式。 正则模式填写示例: 示例一: 19:41:33.217 [http-nio-8000-exec-1] ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException: Cannot invoke "com.example.springboothello.controller.HelloController.write()" because "helloController" is null] with root cause java.lang.NullPointerException: Cannot invoke "com.example.springboothello.controller.HelloController.write()" because "helloController" is null at com.example.springboothello.controller.HelloController.nullPointException(HelloController.java:234) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) 将上述日志合并为一行的正则配置:^\d{2}:\d{2}:\d{2}。 不是以时间开头的所有行合并到上一行。 示例二: Exception in thread "main" java.lang.IllegalStateException: A book has a null property at com.example.myproject.Author.getBookIds(Author.java:38) at com.example.myproject.Bootstrap.main(Bootstrap.java:14) Caused by: java.lang.NullPointerException at com.example.myproject.Book.getId(Book.java:22) at com.example.myproject.Author.getBookIds(Author.java:35) ... 1 more 将上述日志合并为一行的正则配置:^Exception 。 不是以Exception开头的所有行合并到上一行。 页面提供正则式校验功能,将日志复制到“日志样例”栏,填写完成“正则模式”后,单击“校验”按钮,可验证填写的正则表达式是否匹配。 单击“确定”。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在弹框中单击“确定”,待组件部署执行完成后,配置生效。 生效后可在组件日志页面内查看指定路径组件日志。 图2 查看自定义路径下的日志
  • 注意事项 单独使用存活探针时,如出现网络波动或程序启动过慢的情况,会导致实例持续被重启,且实例一直处于未就绪的状态。 有如下解决方案: 与启动探针配合使用,具体操作请参见启动探针与存活探针配合工作。 使用时将“最大失败次数”调大,增加容错率,并增大“延迟时间”,保证程序在启动后再接受存活探针的检测。 检查成功:对于在健康检查中设置的请求返回状态码200。 检查失败:对于在健康检查中设置的请求返回状态码非200,且连续失败次数达到设置的“最大失败次数”。
  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“健康检查”模块中的“编辑”。 在右侧弹框中可选择配置“存活探针”、“就绪探针”和“启动探针”。目前支持三种探针,可同时开启不同探针。 存活探针:针对应用实例进行健康检查,检测应用实例是否已经启动,此时处于启动过程中。单击“存活探针”后的进行检查方式配置。 就绪探针:针对应用实例进行健康检查,检测应用实例是否完成启动,此时处于可对外提供服务状态。单击“就绪探针”后的进行检查方式配置。本示例需打开就绪探针。 启动探针:针对应用实例进行健康检查,检测应用实例是否稳定运行,此时失败CAE会重启应用实例。单击“启动探针”后的进行检查方式配置。 图2 就绪探针 选择其中一种检查方式,并配置相应的参数,具体参数请参考表1、表2。 表1 检查方式配置项参数 检查方式 配置项参数 参数说明 HTTP请求检查 端口 建立HTTP GET使用的端口。 路径 建立HTTP GET使用的路径。 协议 选择HTTP或HTTPS协议。 请求头 请求中自定义的HTTP头。 TCP端口检查 端口 用户指定端口,用于TCP连接。本示例选用TCP端口检查。 执行命令 执行命令 添加执行命令,可单击“添加执行命令”添加多条执行命令。 说明: 添加执行命令时,命令行后不允许有空格。 表2 三种检查方式公共配置参数 配置项参数 参数说明 检测周期 探测时间间隔。 默认值为10秒,最小值为1秒。本示例使用默认值。 延迟时间 最长允许延迟时间。 默认值为0秒,最小值为0秒。本示例使用默认值。 说明: 如果用户在容器启动之前配置健康检查,建议延迟时间增长至3分钟。 超时时间 配置探测的超时时间。 默认值为1秒,最小值为1秒。本示例使用默认值。 成功阈值 探测连续几次成功表示成功。 默认值为1,最小值为1,存活探针和启动探针必须为1。本示例使用默认值。 最大失败次数 探测连续几次失败表示失败。 默认值为3,最小值为1。本示例使用默认值。 单击“确定”完成配置。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在右侧弹框中单击“确定”待部署执行完成后,配置生效。 升级组件后,在“组件事件”页面中观察,“组件实例健康”事件为正常,则表示组件升级成功。 图3 组件健康检查
  • 新旧版本界面变更说明 本章节介绍了新旧界面的更新情况,帮助您更好的衔接使用。 表1 新旧版本界面对比 配置项 旧版界面 新版界面 内网配置 模块名为“内网访问”。 模块名变更为“环境内其他组件访问本组件”。 外网配置 模块名为“外网访问”。 模块名变更为“从环境外部访问本组件”。 负载均衡配置 模块名为“负载均衡”。 模块名变更为“负载均衡配置”。 新增“负载均衡器”参数配置。 支持“独享型”和“内置负载均衡器”。 新增“访问控制”。 允许所有IP访问。 白名单。只允许白名单中放通的IP访问组件。 黑名单。禁止黑名单中的IP访问组件。 转发策略配置 模块名为“转发策略”。 模块名变更为“负载均衡与路由配置”。 新增“负载均衡器”参数配置。 支持“独享型”和“内置负载均衡器”。 新增“访问控制”。 允许所有IP访问。 白名单。只允许白名单中放通的IP访问组件。 黑名单。禁止黑名单中的IP访问组件。 支持添加多 域名 。 内网访问界面对比图: 图1 旧版内网访问界面 图2 新版内网访问界面 负载均衡界面对比图: 图3 旧版负载均衡配置界面 图4 新版负载均衡配置界面 转发策略界面对比图: 图5 旧版转发策略配置界面 图6 新版转发策略配置界面 父主题: 配置访问方式
  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“实例列表”。 在“实例列表”页面上方的下拉框中选择环境、应用及待操作的组件。 选择待操作实例,在“操作”列单击“远程登录”。 在弹框中选择执行命令。 /bin/sh /bin/bash 图1 登录命令配置 单击“确认”,即可访问容器。 页面跳转到CloudShell,并初始化启动kubectl,然后自动执行kubectl exec命令登录到容器。 请等待kubectl exec命令自动执行后再操作,此命令出现需要一段时间。 图2 执行kubectl exec命令登录容器 按需在Cloudshell窗口执行命令,查看并调试您的容器。
  • 添加CAE环境访问VPC配置 如果要使用此功能,您需要已建立待访问VPC到CAE环境所属VPC的对等连接。 登录CAE控制台。 在左侧导航栏中选择“系统设置”。 单击“系统网络配置”模块中的“编辑”,进入“系统网络配置”页面。 在“CAE与VPC网络连通性配置”“CAE环境访问VPC”模块中,单击“添加目的网络地址”。 在弹窗中勾选待访问的VPC。 待访问VPC不得与CAE内部预留网段冲突。 当前只支持配置类型为对等连接、 虚拟专用网络 、云专线、云连接、企业路由器的目的网络地址。 图1 配置CAE环境访问VPC 单击“确定”,完成CAE环境访问VPC配置添加。
  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“伸缩策略”模块中的“编辑”。 单击选择“混合策略”,参考表1配置混合弹性伸缩策略。 表1 配置混合伸缩策略 参数 参数说明 最大实例数 扩容时允许达到的最大实例数。 取值范围[1,99]。 说明: 最大实例数必须大于最小实例数。 最小实例数 缩容时允许达到的最小实例数。 取值范围[1,99]。 指标 CPU使用率,系统预置指标。 内存使用率,系统预置指标。 自定义指标。单击“添加伸缩指标”,可添加自定义指标,在下拉框中选择已创建的自定义监控指标,如需创建新的自定义指标,请参考配置自定义监控指标。 支持添加多条自定义指标。 说明: 必须输入PromQL语句,PromQL是Prometheus内置的数据查询语言,其提供对时间序列数据丰富的查询,聚合以及逻辑运算能力的支持,详情请参考Prometheus。 PromQL语句查询结果必须为单个值,且类型为vector或scalar。 最近一次创建或升级时间在2023年11月03日之前的组件,在配置自定义伸缩指标设置时,需要重新升级组件才能使自定义伸缩指标策略正常生效。 触发周期 期望策略以指定的周期执行。可选“每天”,“每周”,“每月”。 单天内触发时间 当“触发周期”选择“每天”时需要配置。 配置单天周期内的触发时间策略。 例如:每天,从18:00之后保持实例数为3个 。 单击“添加触发时间”可以添加多条触发时间策略。 单周内触发时间 当“触发周期”选择“每周”时需要配置。 配置单周周期内的触发时间策略。 例如:每周,从周一08:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 单月内触发时间 当“触发周期”选择“每月”时需要配置。 配置单月周期内的触发时间策略。 例如:每月,从5号06:00之后保持实例数为4个 。 单击“添加触发时间”可以添加多条触发时间策略。 混合策略的规则是“或”的关系,时间策略、指标策略任何一个满足条件时,都会触发扩容/缩容。 例如:CPU使用率的最大期望值设置为80,内存使用率的最大期望值设置为70。设置触发“触发周期”为“每天”,单天内触发时间配置:从18:00之后保持实例数为3个,从00:00之后保持实例数为1个 。则每天00:00至18:00,系统自动检测,保持实例数为1个,但如果该时间段内,组件CPU使用率大于80%或内存使用率大于70%,系统会自动增加组件的实例个数。 图2 配置混合策略 (可选)展开“高级设置”,参考表2配置高级设置。 表2 配置高级设置 参数 参数说明 弹性扩容步长 扩容步长,每分钟扩容pod的数量。 默认值为4个,取值范围[1,99]。 扩容稳定窗口 默认值为0秒,取值范围[1,3600]。 弹性缩容步长 缩容步长,每分钟缩容pod的数量。 默认值为99个,取值范围[1,99]。 缩容稳定窗口 默认值为300秒,取值范围[1,3600]。 禁止缩容 单击,可开启禁止缩容功能。 图3 高级配置 单击“确定”,完成混合策略配置。 单击页面上方“生效配置”。在右侧弹框中确认修改信息,并单击“确定”,使配置生效。
  • 添加环境变量 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“环境变量”模块中的“编辑”,在右侧页面中单击“新增环境变量”。 参考表1进行参数配置。 表1 环境变量配置 参数 参数说明 类型 支持“手工添加”和“凭据导入”。 变量名称 环境变量的名称,必须唯一。 变量/变量引用 变量的值。 当“类型”选择“凭据导入”时,可在下拉框中选择已创建的凭据配置,具体操作请参考添加凭据配置。 例如,设置“变量名称”为“TZ”,“变量/变量引用”为“Asia/Shanghai”。即当程序代码读取“TZ”环境变量时,获取值为“Asia/Shanghai”。可以查看上海的时区,可以比较当地时间与上海的时差。实际执行效果视代码而定。 图2 环境变量配置 (可选)您还可以通过单击“导入”,导入自定义的环境变量文件。 导入的文件应为字符串形式的键值对映射,一次性最多上传200个环境变量,且仅支持json与yaml格式。例如:{ "key1": "value1", "key2": "value2"... }。 在“操作”列单击“保存”,,并在“环境变量配置”页面单击“确定”,完成环境变量配置添加。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在右侧弹框中单击“确定”待部署执行完成后,配置生效。
  • 删除环境变量 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图4 选择组件 单击“环境变量”模块中的“编辑”,进入“环境变量配置”界面。 选择待操作配置,在“操作”列单击“删除”,并在弹框中单击“是”。 图5 删除环境变量 在“环境变量配置”页面单击“确定”,完成环境变量配置删除。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在右侧弹框中单击“确定”待部署执行完成后,配置生效。
  • 更新环境变量 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图3 选择组件 单击“环境变量”模块中的“编辑”,进入“环境变量配置”界面。 选择待操作配置,在“操作”列单击“编辑”,参考表2更新环境变量信息。 表2 环境变量配置 参数 参数说明 类型 支持“手工添加”和“凭据导入”。 变量名称 环境变量的名称,必须唯一。 变量/变量引用 变量的值。 当“类型”选择“凭据导入”时,可在下拉框中选择已创建的凭据配置,具体操作请参考添加凭据配置。 在“操作”列的“保存”,并在“环境变量配置”页面单击“确定”,完成环境变量配置更新。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在右侧弹框中单击“确定”待部署执行完成后,配置生效。
  • 操作步骤 登录CAE控制台。 在左侧导航栏中选择“组件配置”。 在“组件配置”页面上方的下拉框中选择需要操作的组件。 图1 选择组件 单击“ 云存储 配置”模块中的“编辑”,进入云存储配置页面。 单击选择“配置通用文件系统”。 图2 配置通用文件系统 从下拉框中选择已授权的通用文件系统名称。 如需新增授权,可以单击下拉框右侧“去授权通用文件系统”进行添加,具体操作请参考授权通用文件系统。 参考表1配置容器挂载的路径和权限。 表1 参数说明 参数 说明 挂载路径 数据存储挂载到组件上的路径。 说明: 数据存储挂载到容器上的路径,请不要挂载到系统目录下,如“/”、“/var/run”等,否则会导致容器异常。 云存储的挂载路径不能重复。 子路径 数据所引用的云存储内的子路径。 说明: 使用子路径挂载本地磁盘,实现在单一Pod中重复使用同一个Volume。 不填写时默认挂载根路径。 权限 挂载路径及挂载路径下文件,有“读写”、“只读”两种权限。 图3 配置通用文件系统 (可选)单击“添加挂载路径”,可配置多条挂载路径。 单击“确定”,完成通用文件系统配置。 在“云存储配置”页面中可查看配置好的通用文件系统。 使配置生效。 如已完成组件部署,单击页面上方“生效配置”。在右侧弹框中确认配置信息,并单击“确定”,使配置生效。 如未完成组件部署,单击页面上方“配置并部署组件”,在右侧弹框中单击“确定”,待部署执行完成后,配置生效。
  • 主机安全 主机安全服务(Host Security Service,HSS)是提升服务器整体安全性的服务,为用户提供资产管理、漏洞管理、入侵检测、基线检查等功能,降低服务器被入侵的风险。 在弹性云服务器中安装Agent后,云服务器受到HSS云端防护中心全方位的安全保障,在安全控制台可视化界面上,您可以统一查看并管理同一区域内所有主机的防护状态和主机安全风险。 图1 HSS功能原理 主机安全服务的组件功能及工作流程说明如下: 安全控制台: 可视化的管理平台,便于您集中下发配置信息,查看在同一区域内主机的防护状态和检测结果。 HSS云端防护中心: 接收您在控制台下发的配置信息和检测任务,并转发给安装在服务器上的Agent。 接收Agent上报的主机信息,分析主机中存在的安全风险和异常信息,将分析后的信息以检测报告的形式呈现在控制台界面。 HSS客户端: 接收HSS云端防护中心转发的检测任务。 按检测任务要求扫描弹性云服务器,并将事件扫描信息上报给HSS云端防护中心。 您在使用主机安全服务前,需要先在云服务器上安装客户端。更多信息,请参考主机安全。 父主题: 数据保护技术
  • 概述 插件市场是数据采集插件集合,主要包括中间件插件和自定义插件。 中间件插件:是内置的中间件插件,不支持修改、删除和查看详情。目前中间件插件有如下几种: MYSQL:MySQL采集器 REDIS:Redis采集器 MONGODB:MongoDB采集器 KAFKA:Kafka采集器 NGINX:Nginx采集器 NODE:Node采集器 HAPROXY:HAProxy采集器 CONSUL:Consul采集器 ELAS TICS EARCH:Elasticsearch采集器 POSTGRESQL:PostgreSQL采集器 RABBITMQ:RabbitMQ采集器 CUSTOM_EXPORTER:支持用户安装的Exporter采集器 自定义插件:是用户按需求自定义创建的插件。 父主题: 插件市场
  • 解决方案 一站式迁移解决方案,保障客户多种类型数据库平滑迁移 云数据库团队根据美柚的业务特性,定制了基于“GeminiDB Redis接口+RDS+DDS”的数据库迁移方案。DRS提供多种数据库类型全量和增量的平滑迁移能力,支持美柚不同类型业务搬迁。DRS迁移过程中会显示当前迁移的对象类型、迁移进度、剩余时间评估等,可以帮助用户做好布置规划,避开业务高峰期,业务分钟级中断,中断过程中进行数据一致性校验,在保证数据零丢失的基础上,最大程度减少对业务的影响。 智能运维,助力客户轻松、便捷管理数据库 美柚的Codis版本比较低,在版本升级过程中需要投入大量的DBA,且会出现业务中断较长时间的情况。云数据库 GeminiDB 100%兼容Redis 6.2版本,具备稳定的低时延和诸多增强功能的优势,比如,支持版本的一键升级功能,可以确保美柚在版本升级过程中业务稳定、流畅地运行。 同时,相对美柚原有自建数据库,华为云数据库具有SQL/Key限流等运维能力,防止异常情况下的流量突增。具有紧急结束会话能力,便于紧急运维操作。支持秒级监控能力,避免业务受到影响。 美柚可以根据业务需要配置指标告警及事件告警,在收到系统触发的告警通知后,及时介入处理,轻松实现数据库便捷管理,并降低运维成本。 三副本存储策略+多节点跨AZ部署+自动故障修复,让数据库稳定可靠 面对故障处理能力不足带来的挑战,GeminiDB Redis实例的独立资源部署、数据三副本存储策略和多节点跨AZ部署方案,保证了美柚数据库的稳定性和数据的一致性、高可靠性。GeminiDB Redis提供的大Key诊断功能,帮助DBA第一时间发现业务高危风险,及时实施整改,避免风险扩大。 高压缩比节约存储成本,精准控制资源使用 在美柚的推荐业务中,核心特征库选用GeminiDB Redis接口,借助其内存引擎稳定的性能表现,实现在线系统业务24小时高效运行,给用户带来最佳浏览体验。GeminiDB Redis接口不仅具备独有的增强能力(exHash)和精细化频次控制,让用户不会刷到同一片信息流,大幅提升使用体验。而且凭借强大的数据压缩能力,降低了美柚业务的TB级数据存储成本。 云数据库团队严格把控初始资源规格配置成本,利用GeminiDB Redis接口的存储容量扩容/缩容、添加/删除节点等功能,可以根据业务实际需求进行操作,帮助美柚精准控制资源使用成本。同时,存储资源的扩缩容都是秒级闪断,减小对业务的影响。
  • 业务痛点 美柚日活跃用户数量破千万,并保持持续上升趋势。然而,在快速发展的过程中,美柚的业务拓展却因IT架构和数据库频受限制。 美柚原本采用自建数据库的方式,在女性健康、社区、电商等业务中,根据不同业务类型,使用MySQL、MongoDB、Codis(分布式Redis解决方案)等开源服务。但这些自建组件的稳定性差,维护难度高且维护工作量大,导致美柚急需对数据库进行改造和迁移。 云数据库 GeminiDB团队通过对美柚实际业务场景进行深入调研,精准识别了现有业务迁移过程中的问题,主要体现在以下四个方面。 美柚使用的部分开源组件版本较低,升级操作复杂且伴随较高风险。同时,开源服务稳定性差,缺乏必要的问题修复或规避能力。 开源服务自动化运维能力差、备份不及时、缺乏增量备份机制,极大地增加了数据丢失的风险。 系统在面对故障时,无法自动恢复,可用性不足,导致业务恢复时间长。 开源数据库服务在资源扩容和缩容能力方面,具有耗时长、稳定性差、成本高昂等缺点。
  • 云数据库 GeminiDB Redis解决方案 云数据库 GeminiDB Redis是基于自主研发计算存储分离架构的多模NoSQL数据库(如图1所示),将计算节点与数据存储解耦,解决自建开源Redis的痛点问题,有效帮助客户降本增效。 图1 GeminiDB Redis 近年来,GeminiDB Redis产品团队基于开源生态额外做了诸多的特性增强,提供诸多企业级特性,如:解决了fork问题使性能更平滑、支持秒级自动无感扩容、指定时间点原地PITR回档、跨Region容灾、增强的Hash类型(exHash)、离线快速大批量数据导入(FastLoad)等,在帮助用户解决业务痛点的同时,不断提高业务使用效率和体验。 针对该企业在开源Redis使用中遇到的几个痛点问题,GeminiDB Redis接口提供了完善的配套解决方案: FastLoad企业级特性,提供离线海量数据导入的极致体验 传统Redis只能通过标准协议导入,导入速度慢;且在线业务运行期间进行批量数据导入时,由于单线程架构,会出现慢时延、分片不均、甚至OOM等情况,影响在线业务。 GeminiDB Redis接口提供FastLoad企业级特性,依托RTA业务场景大数据平台的高并发处理能力和自身存储引擎的数据编排能力,将海量数据高并发转换成数据库底层持久化文件。同时避开离散数据写入长链路,通过专属高速持久化通道直接将持久化文件导入存储引擎,实现数据的高效导入,并降低对在线业务的影响。 存储计算分离架构,算力、存储独立扩展;支持自动扩容,对业务零干扰;强数据压缩比,节约存储成本 GeminiDB Redis采用业界领先的存储计算分离架构,将算力与数据存储解耦,计算节点、数据存储可独立扩容,扩容体验在行业里是遥遥领先的。 GeminiDB Redis支持GB粒度的存储扩容能力,同时支持全自动扩容,无需人工干预,且扩容过程平滑无感,秒级完成,优化运维体验。 GeminiDB Redis同时提供强数据压缩能力,采用逻辑+物理块压缩技术,数据压缩比可达30%-50%,能够有效降低存储成本开销。 独享容器部署,分片带宽充足 开源Redis的部署往往是多个租户共用一个容器,为降低租户间干扰,不得不对各个租户进行流控限制。分片的流控会产生“木桶效应”,只有采用独立容器部署Redis才能解决。 GeminiDB Redis接口每个分片都采用独立容器部署,分片带宽不受额外限制,独立容器带宽全部提供给业务程序使用。
  • 业务痛点 RTA业务系统的海量数据、超高并发、低时延等特点,对存储海量用户特征数据的特征数据库带来了巨大的挑战,特征数据库要在低成本的基础上,提供高稳定性、高性能的能力,满足业务诉求。 该金融科技企业RTA业务在上云前使用开源Redis集群作为特征数据库,近年来随着业务增长,其自建开源Redis集群在业务使用中遇到几个明显的痛点: 海量用户特征数据,导入效率低。 数据持续增长,开源Redis成本逐渐增加;扩展性差,升配期间影响业务。 开源Redis经常被流控,稳定性差,影响在线业务。
  • 业务场景 某金融科技企业基于云数据库 GeminiDB Redis自主研发的RTA定向获客系统,利用海量数据打造高精确的用户特征画像,最大化地利用广告平台,实现精准的定向广告投放,提高转化率。 其业务场景可简要分为以下几个步骤: 大数据平台根据自身分析数据及对接的多个第三方数据服务商进行综合建模,匹配每个活跃用户的多维度模型,分析得到目标用户的高精细融合特征数据画像,并将海量特征画像数据存入云数据库 GeminiDB Redis中,以提供在线业务的高并发访问。 RTA业务平台对接多个流量巨头媒体推广平台。用户浏览社交媒体时,各媒体推广平台发起广告请求,RTA业务与GeminiDB实时交互,获取目标用户的特征画像信息,基于投放策略分析并竞价返回。 媒体推广平台基于各广告主RTA业务平台返回的竞价结果,选择合适广告并精准投放给目标人群,实现广告的定向精准投放。 该企业RTA业务平台与媒体推广平台深度合作,通过对媒体推广平台的用户特征数据,与GeminiDB Redis存储的自研分析数据进行匹配分析,提高定向投放和筛选能力。
  • 业务痛点 金智教育有很多核心业务系统,其中大量使用了Redis。近年来随着业务量持续增长,其原先采用的自建开源Redis在使用上遇到几个明显的痛点: 开源Redis主备倒换引起“丢Key”,只能人工补数据 由于开源Redis主备采用的是异步复制,一旦发生故障倒换,将会丢失大量数据。 在金智教育业务中,APP登录验证会使用Redis存储Token,一旦主从切换,会导致大量用户重复验证登录,这也是开源Redis常见的问题。 此外,在学生报表业务中,数据的完整性非常重要。一旦发生数据丢失,系统中有一部分学生的信息将无法查看,此时不得不通过人工来补录数据,非常耗时。 开源Redis分片经常“被流控”,影响业务 业务访问模型往往会存在一些热点,开源Redis集群虽然整体带宽高,但由于每个分片带宽小,因此经常触发分片流控,导致业务受损。 在金智教育的业务中,流控触发就意味着业务受损,因此非常需要一款不流控的Redis服务。 数据持续增长,开源Redis升级配置费用高,且影响业务 在海量数据处理的场景下,需要Redis长期保存数据。开源Redis扩容操作意味着加分片,耗时久而且影响业务。 此外,随着数据增长,开源Redis的使用成本也会随之增加,会给公司带来较高的成本开销,因此金智教育急需要一款成本可控的KV数据库。
  • 云数据库 GeminiDB Redis解决方案 云数据 GeminiDB Redis的设计目的,就是为了解决开源Redis的痛点问题,有效实现降本增效。近年来,GeminiDB Redis产品团队基于开源生态额外做了诸多的特性增强,例如:解决了fork问题使性能更平滑、支持自动无感扩容(秒级完成)、指定时间点原地PITR回档、跨Region容灾等等。 针对金智教育在Redis使用中遇到的几大核心痛点,GeminiDB Redis接口提供了完善的配套解决方法: 数据可靠性显著提升 试想在10000 QPS的写入流量下,开源Redis即使配置秒粒度的AOF下刷(影响性能,往往不适合在线上环境开启),主备倒换也会引起10000条业务数据的丢失,损失很大。因此,开源Redis的“丢数据”是先天的痛点,并不适合用在数据重要的业务场景下。 GeminiDB Redis存储数据的可靠性非常高,用户数据在GeminiDB Redis默认存储3个副本,成本上仅按1个副本计费,不会带来额外费用。计算节点使用预写日志WAL实现了命令级的可靠存储,即使分片发生故障倒换,由于有存储池保障全量数据的可靠性,也能保障业务数据的完整和安全。 切换到GeminiDB Redis后,金智教育线上业务的稳定性得到了大幅度提升,而不再需要消耗人工精力去补数据了。 采用独享容器部署,分片带宽充足,不担心流控 开源Redis的部署往往是多租户共用一个容器,因此不得不做流控,否则会发生租户间相互干扰的情况。分片的流控会时常发生,这会产生“木桶效应”,只有采用独立容器部署Redis才能解决。 GeminiDB Redis的每个分片都采用独立容器,带宽不做额外限流,分片(独立容器)带宽全部提供给业务程序使用,即使业务访问存在一定倾斜,也不担心被某个分片流控。 支持自动扩容,且对业务零干扰;强数据压缩比,存数据成本节约30%+ GeminiDB Redis的扩容体验在行业里是领先的,目前已经支持全自动扩容,无需人工干预,且扩容平滑无感,秒级完成。对业务来说,连接不会被中断,也不会引起时延抖动,随着业务增长,扩容可以放心交给服务端自动化完成。 此外,金智教育在迁移数据时,发现100GB的数据迁入到GeminiDB Redis只占用了不到50GB的空间,从长远来看存储成本非常有优势。这是由于GeminiDB Redis通过高效压缩技术对数据进行了逻辑+物理块压缩,能够有效降低存储开销。
  • 支持的产品范围 当前仅支持展示如表1所示产品的资源包使用率/覆盖率分析。 以成本中心实际提供的产品范围为准。 表1 所支持的产品信息 云服务 资源包类型 重置类型 内容分发网络 CDN 中国大陆流量包 不可重置 中国大陆境外流量包 不可重置 对象存储服务 OBS 标准存储单AZ包 按小时重置 标准存储多AZ包 按小时重置 跨区域复制流量包 按订购月重置 回源流量包 按订购月重置 归档存储包 按小时重置 云容器实例 CCI 企业版/专业版/基础版资源套餐包 不可重置 资源套餐年包/资源套餐月包 按订购月重置 企业版/专业版/基础版CPU加油包 不可重置 企业版/专业版/基础版内存加油包 不可重置 CPU年包/CPU月包 按订购月重置 内存年包/内存月包 按订购月重置 文字识别 OCR 各类型文字识别的套餐包 不可重置 AI开发平台 ModelArts 各种规格计算资源的预付套餐包 不可重置 虚拟私有云 VPC 动态/静态BGP闲时流量包 不可重置 动态/静态BGP包年/包月套餐 不可重置 云日志 服务 LTS 日志冷存储大小 按订购月重置 日志存储大小 按订购月重置 日志索引流量包 按订购月重置 日志读写流量包 按订购月重置 父主题: 资源包分析
  • 不可重置资源包 不可重置资源包时一种容量线性递减的资源包,伴随抵扣容量不断减少。 分摊规则: 资源包抵扣部分的分摊金额=(抵扣用量/资源包总用量) * 资源包总金额。 资源包未抵扣部分的分摊金额=资源包总金额-资源包抵扣部分的分摊金额之和(仅在失效时间所在账期提供)。 分摊示例: 新购OCR身份证识别 PKG 1万 包年,总金额520元,资源包生效时间为2024.1.1-2024.12.31,总用量10000次。
  • 可重置资源包 可重置资源包为容量线性递减的资源包,每个重置周期结束时清零,下个重置周期初恢复,直至到期。 分摊规则: 资源包抵扣的分摊金额=(抵扣用量/重置周期总用量) * 重置周期分摊金额。 重置周期内未抵扣部分的分摊金额=重置周期分摊金额-重置周期内资源包抵扣部分的分摊金额之和(每个重置周期均提供) 。 分摊示例: 新购OBS公网流出流量包 100GB 包年,总金额480元,资源包生效时间为2024.1.1-2024.12.31,有效期内每个月有100G的用量可抵扣。资源包生效周期内共计12个重置周期,每个重置周期分摊金额=480/12=40元。 2024.01抵扣情况如下: 使用时间 抵扣用量 剩余用量 2024.01.02 5G 95G 2024.01.10 10G 85G 2024.01.13 8G 77G 2024.01.15 20G 57G 2024.01.31 15G 42G 基于以上抵扣情况,2024.01抵扣分摊金额如下: 使用时间 抵扣用量 分摊金额 账单类型 2024.01.02 5G 5G/100G*40元=2元 消费-资源包抵扣 2024.01.10 10G 10G/100G*40元=4元 消费-资源包抵扣 2024.01.13 8G 8G/100G*40元=3.2元 消费-资源包抵扣 2024.01.15 20G 20G/100G*40元=8元 消费-资源包抵扣 2024.01.31 15G 15G/100G*40元=6元 消费-资源包抵扣 2024.1.31 - 40元-23.2元=16.8元 消费-资源包未抵扣 若涉及资源包规格升配场景,升配后会产生新资源包,原资源包生命周期截止不在参与抵扣,剩余分摊金额全部转交给新资源包进行分摊。 例如:上述资源包示例中,2024.01已分摊40元,还剩480-40=440元未分摊。 从2024.02.01开始升配,由100GB 包年升配至500G包年,升配订单费用550元。那从2024.02.01开始,截止2024.12.31,原资源包的摊销成本=0,新资源包的摊销总成本=550元+440元,剩余11个重置周期,每个重置周期分摊金额=990/11=90元。
  • 支持服务范围 云服务名称 云服务缩写 文字识别 OCR 人证核身 服务 IVS 内容分发网络 CDN 应用性能管理 APM 消息&短信 MSG SMS 对象存储服务 OBS 云容器实例 CCI 虚拟私有云 VPC AI开发平台 ModelArts 弹性文件服务 SFS 以上支持的云服务范围内,若资源包中包含多个用量类型,也不支持按实际使用情况进行成本分摊,仍采用线性分摊机制。例如:标准存储单AZ存储资源包 40GB_包月,资源包内,除40GB可抵扣用量外,还有对象存储读、写请求次数的抵扣用量。 对于2024年仍在生效的资源包,2024年之前的成本仍按照线性分摊。这部分资源包可能因新旧分摊逻辑差异存在金额差异,差额部分会补充在2024.01账期,您可以通过导出2024.01基于使用的摊销明细查看对应资源包订单的差额费用。 资源包若在2023.10.01-2023.12.31期间发生过资源包升配,则整个生失效期间仍按照原线性分摊逻辑进行分摊,不支持根据实际使用情况进行成本分摊。 文件导出的月度摊销成本明细,包含两份文件,基于使用的摊销明细(CustomerName_AmortizedCostDetailByUsage_YYYY-MM_时间戳_序号)和基于账期的摊销明细(CustomerName_AmortizedCostDetailByBillCycle_YYYY-MM_时间戳_序号)。根据实际使用情况的分摊明细详情仅呈现在基于使用的摊销明细中。基于账期的摊销成本仅呈现该资源包在当月的分摊总金额,不呈现分摊详情。
  • 使用限制 单账号跟踪的事件可以通过 云审计 控制台查询。多账号的事件只能在账号自己的事件列表页面去查看,或者到组织追踪器配置的OBS桶中查看,也可以到组织追踪器配置的 CTS /system日志流下面去查看。 用户通过云审计控制台只能查询最近7天的操作记录。如果需要查询超过7天的操作记录,您必须配置转储到对象存储服务(OBS),才可在OBS桶里面查看历史文件。否则,您将无法追溯7天以前的操作记录。 云上操作后,1分钟内可以通过云审计控制台查询管理类事件操作记录,5分钟后才可通过云审计控制台查询数据类事件操作记录。
  • 永久删除账号 永久删除是指从WiseDBA中彻底删除账号同时在业务数据库中进行删除,删除后无法恢复。 数据库账号关系到业务是否能正常访问数据库,请仔细辨别需要删除的账号具体信息:包括用户名和白名单主机。 高危操作,谨慎处理,一经删除,难以在短时间内恢复。 选择“回收站”页签,选择待销毁账号操作列的“永久删除”。 在“选择电子流”窗口中,选择以下任一方式: 运维操作记录选择“关联电子流”,并选择要关联的电子流,单击“提交”。 运维操作记录选择“紧急问题处理”,并填写紧急原因,单击“提交”。 输入账号名称和个人账号,单击“永久删除”。 将鼠标悬停在运维中心工作台右上角的账号,选择“我的信息”,查看个人账号。
共100000条