云服务器内容精选

  • 新增容错策略 在配置服务治理项页面,选择“容错”页签,单击“新增”。 在新增容错页面,配置相关参数,参数说明如表6所示。 表6 新增容错参数说明 参数 说明 微服务(服务端) 选择需要降级的微服务。 是否使用别名 选择是否使用别名。 是否开启容错 选择开启或关闭。 容错策略 Failover:尝试新的服务器次数:1,尝试同一个服务器次数:0。 Failfast:尝试新的服务器次数:0,尝试同一个服务器次数:0。 Failback:尝试新的服务器次数:0,尝试同一个服务器次数:1。 Custom:尝试新的服务器次数:0~9,尝试同一个服务器次数:0~9。 尝试同一个服务器次数 服务调用尝试同一个服务器的次数。 尝试新的服务器次数 服务调用尝试新的服务器次数。 单击“确定”保存配置。
  • 新增错误注入 在配置服务治理项页面,选择“错误注入”页签,单击“新增”。 在新增错误注入页面,配置相关参数,参数说明如表8所示。 表8 新增错误注入参数说明 参数 说明 微服务(服务端) 需要测试容错能力的微服务,可以具体到微服务的方法。 是否使用别名 选择是否使用别名。 Schema(服务端) - 微服务方法(服务端) - 类型 测试微服务的容错能力类型: 延时 错误 协议 访问微服务出现延时或错误的协议: Rest Highway 触发概率 访问微服务出现延时或错误的概率。 延迟时间 访问微服务出现延时的时长,“类型”选择为“延迟”时才需要配置。 http错误码 访问微服务出现错误的HTTP错误码,“类型”选择为“错误”时才需要配置。该错误码为HTTP标准的错误码。 单击“确定”保存配置。
  • 新增熔断策略 在配置服务治理项页面,选择“熔断”页签,单击“新增”。 在新增熔断页面,配置相关参数,参数说明如表7所示。 表7 新增熔断参数说明 参数 说明 微服务(服务端) 选择需要降级的微服务。 是否使用别名 选择是否使用别名。 Schema(服务端) - 微服务方法(服务端) - 触发条件 取消熔断 手动熔断 自动熔断 熔断时间窗 触发条件为自动熔断时,配置此参数。 熔断的持续时间,该时间窗内不再响应请求。 失败率 触发条件为自动熔断时,配置此参数。 触发条件,窗口请求的失败率。 窗口请求数 触发条件为自动熔断时,配置此参数。 触发条件,窗口收到的请求数。“失败率”和“窗口请求数”的条件需同时满足才会触发熔断。 单击“确定”保存配置。
  • 新增OLC流控 在配置服务治理项页面,选择“OLC流控”页签,单击“新增”。 在新增OLC流控页面,选择配置不区分微服务接口的全局参数流控、针对微服务/接口的资源流控和节点级动态流控规则。 表10 新增全局资源 参数 说明 资源类型 选择全局资源。 参数名 填写参数名称。 字符长度0~50,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符。例:Limit_rule-001。 限制流控类型 QPS:每秒速率流控。 配额:特定时间的请求阈值。 阈值 流控阈值,正整数类型或0。 允许的突增量 当限流控制类型为QPS时,显示该参数。 允许的QPS突增值,作为突增增量累加到阈值上。 禁用时间 当限流控制类型为QPS时,显示该参数。 被流控后禁用时间。 时间窗口 填写时间,单位为秒,表示间隔多少秒允许一个请求通过。默认为1秒,取值范围为1~86400。 是否集群限流 选择“是”或“否”。开启后对集群内此资源的调用总量进行限制。 集群限流阈值模式 当流控类别为QPS,开启集群限流时,显示该参数。 单机均摊 总体阈值 本地配额缓存数 当流控类别为配额,开启集群限流时,显示该参数。 防止D CS 热点key的参数,可以减少DCS的访问,默认值为5。 该参数需要合理配置,配置过小容易造成热点key问题,配置过大可能导致部分节点放通部分节点流控的问题。 开启流控规则 选择是否开启流控规则。 表11 新增接口资源 参数 说明 资源类型 选择接口资源。 是否使用别名 选择是否使用别名。 原始服务名 使用别名时,需要填写原始服务名。 Schema All * 微服务方法 - 限流控制类型 QPS:每秒速率流控。 配额:特定时间的请求阈值。 阈值 流控阈值,正整数类型或0。 允许的突增量 当限流控制类型为QPS时,显示该参数。 允许的QPS突增值,作为突增增量累加到阈值上。 禁用时间 当限流控制类型为QPS时,显示该参数。 被流控后禁用时间。 时间窗口 填写时间,单位为秒,表示间隔多少秒允许一个请求通过。默认为1秒,取值范围为1~86400。 是否集群限流 选择“是”或“否”。开启后对集群内此资源的调用总量进行限制。 集群限流阈值模式 当流控类别为QPS,开启集群限流时,显示该参数。 单机均摊 总体阈值 本地配额缓存数 当限流控制类型为配额,开启集群限流时,显示该参数。 防止DCS热点key的参数,可以减少DCS的访问,默认值为5。 该参数需要合理配置,配置过小容易造成热点key问题,配置过大可能导致部分节点放通部分节点流控的问题。 开启流控规则 选择是否开启流控规则。 新增参数 单击“新增参数”,可以根据需要新增流控规则。 表12 新增节点级动态流控 参数 说明 资源类型 选择节点级动态流控。 开启流控规则 选择是否开启流控规则。 CPU过载阈值 CPU利用率超过该值时,接口的放通比例开始降低,直到降低至最低放通比例;CPU利用率越高,接口放通比例下降越快。该阈值要求为小数,范围为0~1,支持精度为小数点后四位。 CPU恢复阈值 CPU利用率小于该值时,接口的放通比例开始恢复,直到恢复至100%;CPU利用率越低,接口放通比例恢复越快。该阈值要求为小数,范围为0~1,支持精度为小数点后四位,并且小于CPU过载阈值。 最低放通比例 配置各个接口等级对应的最低放通比例,在CPU始终处于过载状态时,仍然能放通该比例的请求。 范围为0~1,支持精度为小数点后四位。 单击“确定”保存配置。
  • 治理策略说明 支持负载均衡、限流、故障隔离、容错、降级、熔断、错误注入、超时时间和OLC流控等策略的配置。各治理项说明如表1所示。 表1 治理策略说明 名称 说明 负载均衡 微服务一般会部署多个实例,负载均衡控制微服务消费者访问微服务提供者的多个实例的策略,以达到流量均衡的目的。策略包括轮询、随机、响应时间权值、会话粘滞等。 限流 用于控制访问微服务的请求量大小,避免由于流量冲击对系统造成破坏。 故障隔离 - 降级 用于控制微服务调用其他微服务的时候,强制返回缺省值或者抛出异常,而不将请求发送到目标微服务,以达到屏蔽对目标微服务的访问和降低其压力的目的。 容错 当微服务消费者访问提供者出现异常,比如实例网络不通等,需要将请求转发到其他可用的实例。这里的容错,常被称为重试。 熔断 当微服务消费者访问提供者出现异常,比如实例网络不通、请求超时等,并且异常积累到一定的程度,需要停止访问提供者,返回一个异常或者缺省值,防止雪崩效应。 熔断提供了自动熔断策略。自动熔断需要结合错误率等判断是否熔断。 错误注入 错误注入可以模拟一个调用失败,主要用于功能验证、故障场景演示等场景。 超时时间 - OLC流控 CPU过载控制OLC(Overload Control)是一种CPU过载调控机制。当CPU过载时,OLC能够对受监控协议报文和任务进行调控,通过不同优先级业务的合理规划和限制报文通过等方式,降低对CPU资源的消耗,并确保设备不会因为某种受监控协议或任务冲击CPU导致的CPU过载而影响对其他业务的正常处理
  • 新增限流策略 在配置服务治理项页面,选择“限流”页签,单击“新增”。 在新增限流页面,配置相关参数,参数说明如表3所示。 表3 新增限流参数说明 参数 说明 流控类型 服务端 客户端 微服务(客户端) 选择ALL。 是否使用别名 选择是否使用别名。 Schema(服务端) - 微服务方法(服务端) - QPS 每秒的请求数。当限流对象对当前服务实例的每秒请求数量超过设定的值,当前服务实例不再接受该对象的请求。取值范围为1-99999的整数。 单击“确定”保存配置。
  • 新增故障隔离策略 在配置服务治理项页面,选择“故障隔离”页签,单击“新增”。 在新增故障隔离页面,配置相关参数,参数说明如表4所示。 表4 新增故障隔离参数说明 参数 说明 微服务(客户端) 选择需要治理的微服务。 是否使用别名 选择是否使用别名。 是否开启 选择是否开启。 进入隔离逻辑门槛数 当实例的调用总次数达到该值时开始进入隔离逻辑门槛。 触发隔离连续出错数 当请求实例连续出错达到此阈值时触发实例隔离,如果配置了此项则覆盖实例故障百分比的配置,否则按照实例故障百分比触发隔离。 触发隔离错误百分比 实例故障隔离错误百分比。 最短隔离时间 - 故障单点测试时间 - 放通实例 选择是否放通实例。 放通最大锁定时间 为了保证在并发情况下只有一个实例放通,会锁定放通实例。这个时间表示最大锁定时间。 单击“确定”保存配置。
  • 运行时引擎微服务平台功能介绍 微服务平台(NUWA Runtime)托管了一个微服务运行的所有基础设施,微服务对基础设施的所有要求都通过基础设施即代码(Infrastructure as Code,简称IaC)来描述。NUWA Runtime根据IaC描述,对接相关的配置服务器,通过弹性伸缩管理平台接口,完成部署。应用托管到NUWA Runtime以后,Runtime提供IaC和管理台两种方式对集群进行变更。业务通过发布IaC版本,在运维中心执行IaC,即可对微服务集群进行变更。Runtime支持通过IaC指定集群配置、Sidecar版本、资源分配等;通过管理台可以对微服务本身及其相关的资源进行管理,如微服务生命周期管理、事件查看、更新配置、回滚、扩缩容等。 父主题: 通过微服务平台管理微服务及相关资源
  • 前提条件 需要具备AppStage服务运维岗位权限或运维管理员权限,权限申请操作请参见申请权限。 创建平台托管模式的实例,需规划隔离域,具体请参见在ENS中创建隔离域。 创建自管理模式的SLB实例,指的是将公有云ECS作为SLB主机,需要先申请ECS并将ECS纳管至运维中心的VMS中。 仅支持EulerOS操作系统ECS作为SLB主机。1.4.18及更新版本的SLB只兼容EulerOS 2.9操作系统。 已设置执行机。
  • 步骤二:通过IaC发布敏感配置 业务使用Runtime部署并按照IaC规范配置敏感配置项之后,在部署时Runtime会从STS管理台拉取加密配置项,注入到容器的环境变量中,并通过配置渲染工具将敏感配置渲染到业务的配置文件中。 在IaC脚本中的业务配置项配置文件中指定敏感配置项坐标。 此处以在config_records.yaml文件中增加一个名为spring.redis.password的敏感配置项为例。 spring.redis.password: MicroService/{ServiceName}/{MicroServiceName}/spring.redis.password/default 在IaC脚本中的业务配置项属性定义文件中,声明该配置项为敏感配置项。 此处以在config_schema.yaml中声明微服务的敏感业务配置项为例。 type: object properties: spring.redis.password: format: sensitive
  • 服务资源介绍 Cloud Map根据服务注册和发现方式不同,把管理的服务资源分为三种:微服务、中间件、接入地址(URL),具体介绍如表1所示。 表1 服务资源说明 服务形态 描述 微服务 微服务之间通过微服务框架点对点通信,微服务提供方(Provider)实例节点把自己的IP和端口注册到Cloud Map,并通过心跳的方式维持注册。调用方(Consumer)实例查询Provider的所有实例列表,实现点对点调用。微服务属于一个服务,一个微服务可能有多个集群。 中间件 中间件对应一个中间件集群,Cloud Map里记录连接这个中间件集群,中间件SDK所有需要的配置,包括地址、秘钥,密码信息等。一个服务可能会申请多个中间件集群 。 说明: 当前仅支持WiseDBA管理台纳管的数据库。 接入地址 业务之间调用都是通过一个地址进行访问,对于内部服务,URL地址挂在提供方服务下面,由提供方提供。对于公有云、以及外部的服务地址,挂在使用方服务下面,由使用方自己维护。一个服务可能会开放多个接入地址,也会依赖多个接入地址。 服务资源在Cloud Map中注册和发现的方式如表2所示。 表2 服务注册和发现 场景 注册 发现 服务之间 服务提供方通过IaC注册地址。 通过Cloud Map SDK查询。 服务内部微服务之间 通过Cloud Map SDK注册机器IP,并维持心跳。 通过Cloud Map SDK发现。 数据库 通过IaC申请数据库,数据库管理台自动注册。 通过中间件SDK访问。 接口类型服务 使用方通过IaC注册地址。 通过Cloud Map SDK发现。 外部地址 使用方通过IaC注册地址。 通过Cloud Map SDK发现。 中间件 通过IaC申请中间件集群,中间件管理台自动注册。 通过中间件SDK访问。 Cloud Map SDK的使用方法请参见Cloud Map SDK。
  • 更多操作 表2 相关操作 操作 说明 配置流控服务 单击流控服务列表中的服务名称,在流控服务详情页面新增资源、新增流控规则、新增黑白名单及熔断规则,具体介绍请参见在SLB中配置负载均衡OLC服务。 发布流控服务 单击流控服务列表操作列的“发布”,将OLC服务应用到SLB,具体介绍请参见在SLB中发布负载均衡OLC服务。 编辑流控服务 单击流控服务列表操作列的“编辑”,在弹出的编辑窗口,单击认证密钥后的“重置”,可以重置认证密钥。 删除流控服务 单击流控服务列表操作列的“删除”,在弹出的提示框中单击“确定”,即可删除服务。
  • Schema及Keyspace概念介绍 在MySQL类数据库中,Database是数据库对象的物理集合,不同的Database之间资源是完全隔离的(除部分共享对象之外)。每个Database都是一个独立的命名空间,用于存储和管理相关的数据库对象,如表、视图、函数等。Schema与Database在概念上非常接近,通常可以认为一个Database只包含一个Schema,且这个Schema的名称与Database的名称相同,这个Schema包含了该Database中所有的数据库对象。例如,在一个电商系统中,一个Database(或Schema)用于存储用户信息,另一个Database(或Schema)用于存储商品信息。 在 GaussDB数据库 中,Database提供了对资源的物理隔离和管理,Database通常用于表示一个完整的、独立的应用系统或业务环境。例如,一个电商系统可能使用一个单独的Database来存储其所有数据。在同一个Database内,不同的Schema可以用于表示不同的业务模块或功能区域。例如,在电商系统中,商品信息、用户信息、订单信息等可以分别存储在不同的Schema中。 在Cassandra数据库中,Keyspace(键空间)是最高级别的数据结构,在GeminiDB Cassandra中,Keyspace是用于保存列族,用户定义类型的对象。键空间相当于数据库,创建一个键空间即是创建了一个数据库。 在WiseDBA中,Keyspace的创建、同步、下线等操作与MySQL类数据库Schema的相应操作完全相同,为便于描述,下文统一以Schema为例进行介绍。 父主题: 在WiseDBA中创建和管理Schema
  • 更多操作 表5 操作说明 操作 说明 重置实例IP 当实例IP发生变化时,通过重置实例IP功能,可以将变更后的IP同步到Cloud Map中。 单击“重置实例 IP”,在弹出的提示框中单击“确定”,即可重置实例IP。 修改SDK配置 单击SDK列表操作列的“管理”,修改SDK配置。 删除SDK配置 单击SDK列表操作列的“删除”,删除SDK配置。 跳转到Cloud Map 单击SDK列表操作列的“跳转到Cloud Map”,查看SDK配置数据推送到Cloud Map。
  • 重启灰度 完成灰度发布后,当前处于全网发布阶段,上一轮灰度已经到全网发布阶段,如果想要进行新的一轮灰度,可以重启灰度。重启灰度后分流规则将在SLB生效,满足分流规则条件的消息分发到灰度机器群组,不满足分流规则条件的消息分发到正常机器群组。 请在确认服务有新版本的情况下进行重启灰度。 在灰度服务管理页面,单击灰度服务列表当前状态列的“重启灰度”。 在重启灰度页面,单击“重启灰度”。 在分流配置页签,单击“编辑分流规则”,可以编辑分流规则。 在主机群组页签,单击“编辑主机集群”,可以编辑主机群组。 在弹出框中单击“确定”。 灰度列表当前状态列显示灰度执行的阶段。