华为云用户手册

  • ServiceComb ServiceComb是一个Apache微服务开源项目,提供开箱即用、高性能、兼容流行生态、支持多语言的一站式开源微服务解决方案。致力于帮助企业、用户和开发者将企业应用轻松微服务化上云,并实现对微服务应用的高效运维管理。 微服务 微服务是业务概念,某个进程提供某种服务,那它就是个微服务。每一个服务都具有自主运行的业务功能,对外开放不受语言限制的API (最常用的是HTTP)。多个微服务组成应用程序。 在ServiceStage中,微服务对应组件。 微服务实例 一个微服务的最小运行和部署单元,通常对应一个应用进程。
  • 微服务引擎实例规格说明 微服务引擎分为微服务引擎专业版和微服务引擎专享版两种产品规格: 微服务引擎专业版:专业版引擎Cloud Service Engine是ServiceStage提供的 免费体验 引擎。专业版引擎可以体验ServiceStage的所有产品能力,比如服务治理、配置管理等。引擎资源为所有租户共享,性能可能会受其他租户影响;专业版引擎不支持升级到专享版。 微服务引擎专享版:专享版引擎,是可支持大规模微服务应用管理的商用引擎。您可根据业务需要选择不同规格,不支持规格变更;专享版引擎资源独享,性能不受其他租户影响。 引擎支持的最大实例规格说明如下。 表2 微服务引擎实例规格说明 引擎类型 微服务实例数配额 配置条目数配额 微服务引擎专业版 20 - 微服务引擎专享版 100 600 200 600 500 3,000 2,000 12,000
  • 产品套餐说明 ServiceStage提供了基础版、专业版、铂金版,您可以根据需要选择,各个版本的功能说明如表1所示。 表1 功能说明 功能 基础版 专业版 铂金版 管理规模 单个 IAM 账号下最大支持应用组件实例个数 100个 5000个 5000个 单个组件支持的最大实例个数 200个 微服务 资源包赠送微服务引擎 - 专享版(高可用)最多5个 专享版(高可用)最多10个 Java语言微服务开发SDK 支持 支持 支持 Spring Cloud微服务接入 服务注册中心 服务配置中心 实时仪表盘 负载均衡 服务限流 服务降级 服务容错 服务熔断 错误注入 黑白名单 灰度发布 应用生命周期管理 多语言应用管理(Java/Php/Python/Node.js/Tomcat/Docker) 支持 支持 支持 应用生命周期管理(灰度发布、伸缩、升级、回退、启动、停止、重启、删除) 应用基础监控(运行状态、CPU、内存、磁盘使用率等) 虚机部署 云容器引擎部署 访问权限控制 应用 域名 管理 弹性伸缩 事件分析 日志分析 阈值告警 持续交付 构建管理 支持 支持 支持 源码仓库(GitHub/GitLab/Gitee/Bitbucket/CodeArts) 编译任务(Java/Php/Python/Node.js/Tomcat/Docker) 构建集群 流水线管理 软件仓库 SWR软件包管理 支持 支持 支持 Docker镜像包管理 仓库权限管理 容器资源 虚拟机集群 支持 支持 支持 裸金属集群 Windows集群 容器节点管理 容器存储管理
  • ServiceStage控制台功能依赖的角色或策略 如果IAM用户需要在ServiceStage控制台拥有相应功能的查看或使用权限,请确认已经对该用户所在的用户组设置了ServiceStage Administrator、ServiceStage FullAccess或ServiceStage ReadOnlyAccess权限,再参考表6增加依赖服务的角色或策略。 表6 ServiceStage控制台依赖服务的角色或策略 控制台功能 依赖服务 需配置角色/策略 总览 告警 运维监控 应用运维管理 AOM IAM用户设置了ServiceStage Administrator权限后,需要增加AOM FullAccess权限后才能访问总览、告警、运维监控中的数据图表。 支持设置了IAM ReadOnlyAccess和ServiceStage FullAccess或ServiceStage ReadOnlyAccess权限的IAM用户直接访问总览、告警、运维监控中的数据图表。 性能管理 应用性能管理 APM 如果需要使用Java探针,需要设置AOM FullAccess和 APM FullAccess权限。 组件管理 弹性伸缩组 AS 如果需要使用AS资源用于虚拟机环境下部署组件,需要设置AutoScaling FullAccess权限。 云容器引擎 CCE 如果需要使用CCE资源用于容器环境下部署组件,需要设置CCE FullAccess权限。 弹性云服务器 E CS 如果需要使用ECS资源用于虚拟机环境下部署组件,需要设置ECS ReadOnlyAccess权限。 对象存储服务 OBS 如果部署的组件来源于存储在OBS的软件包,需要设置OBS ReadOnlyAccess权限。 微服务引擎 微服务引擎 CSE 如果需要为微服务组件绑定CSE用于服务注册、服务治理、配置管理,需要设置CSE FullAccess权限。 分布式缓存 分布式缓存服务 DCS 如果需要为容器环境下部署的组件绑定DCS用于在应用运行时读取环境变量来获取分布式缓存的相关信息,需要设置DCS ReadOnlyAccess权限。 数据存储 云硬盘服务 EVS 如果容器环境下部署的组件需要使用云硬盘存储方式存储数据,需要设置EVS ReadOnlyAccess权限。 弹性文件服务 SFS 如果容器环境下部署的组件需要使用极速文件存储方式存储数据,需要设置SFS Turbo ReadOnlyAccess权限。 对象存储服务 OBS 如果容器环境下部署的组件需要使用对象存储方式存储数据,需要设置OBS ReadOnlyAccess权限。 云数据库 云数据库 RDS 如果需要为容器环境下部署的组件绑定RDS用于应用数据持久化存储,需要设置RDS ReadOnlyAccess权限。 组件VPC内网访问 组件域名访问 弹性负载均衡 ELB 如果需要为组件设置VPC内网访问或域名访问以使用组件提供的服务,需要设置ELB ReadOnlyAccess权限。 组件公网访问 NAT网关 NAT 如果需要为组件设置通过NAT网关公网访问以使用组件提供的服务,需要设置NAT ReadOnlyAccess权限。 弹性公网IP EIP 如果需要为组件设置通过EIP公网访问以使用组件提供的服务,需要设置EIP ReadOnlyAccess权限。 弹性负载均衡 ELB 如果需要为组件设置通过ELB公网访问以使用组件提供的服务,需要设置ELB ReadOnlyAccess权限。 组件日志 云日志 服务 LTS 如果需要通过对接LTS,查看、搜索、导出组件运行LTS日志记录用于排查和解决组件运行中出现的问题,需要设置LTS FullAccess权限。 阈值告警 消息通知 服务 SMN 如果需要将容器环境下部署组件产生的阈值告警消息由消息通知服务SMN发送通知给用户,需要设置SMN ReadOnlyAccess权限。 镜像仓库 容器镜像仓库 SWR 如果容器环境下部署的组件来源于存储在SWR的镜像包,需要设置SWR FullAccess权限。 标签管理 标签管理服务 TMS 如果需要使用TMS对组件等管理对象设置标签用于管理和选择,需要设置TMS ReadOnlyAccess权限。 环境管理 虚拟私有云 VPC VPC用于创建环境时,将用于组件部署和运行的计算、网络、中间件等基础资源隔离在同一个虚拟网络环境中。需要设置VPC ReadOnlyAccess权限。
  • 细粒度权限 SWR未支持细粒度权限,相关权限需要另外授权。 创建“计费模式”为“包月/包年”的微服务引擎专享版时: 创建订单不支付,创建该引擎的用户需拥有“BSS Operator”权限,即费用中心(BSS)操作员,拥有账号中心和资源中心的所有菜单项执行任意操作的权限,在费用中心有相关的只读权限。 创建订单并支付,创建该引擎的用户需拥有“BSS Administrator”权限,即费用中心(BSS)管理员,拥有该服务下的所有权限。 使用自定义细粒度策略,请使用管理员用户登录IAM控制台,按需选择ServiceStage、CSE的细粒度权限进行授权操作。 CSE细粒度权限依赖说明请参见表4。 ServiceStage细粒度权限依赖说明请参见表5。 表4 CSE细粒度权限依赖说明 权限名称 权限描述 权限依赖 应用场景 cse:engine:list 列出所有引擎 无 查看引擎列表。 cse:engine:get 查看引擎信息 cse:engine:list 查看引擎详情,仅微服务引擎专享版支持。 cse:engine:modify 修改引擎 cse:engine:list cse:engine:get 修改引擎的操作包括:开启/关闭公网访问操作、开启/关闭安全认证操作、引擎失败任务重试操作,仅微服务引擎专享版支持。 cse:engine:upgrade 升级引擎 cse:engine:list cse:engine:get 升级引擎的操作包括:引擎版本升级操作,仅微服务引擎专享版支持。 cse:engine:delete 删除引擎 cse:engine:list cse:engine:get vpc:ports:get vpc:ports:delete 删除引擎,仅微服务引擎专享版支持。 cse:engine:create 创建引擎 cse:engine:get cse:engine:list ecs:cloudServerFlavors:get vpc:vpcs:get vpc:vpcs:list vpc:subnets:get vpc:ports:get vpc:ports:create 创建引擎的操作包括:创建引擎操作,引擎备份/恢复任务创建操作,仅微服务引擎专享版支持。 cse:config:modify 服务配置管理修改 cse:engine:list cse:engine:get cse:config:get 全局配置功能与治理功能涉及的配置修改。 cse:config:get 服务配置管理查看 cse:engine:list cse:engine:get 查看服务的配置。 cse:governance:modify 服务治理中心修改 cse:engine:list cse:engine:get cse:config:get cse:config:modify cse:registry:get cse:registry:modify cse:governance:get 创建与修改服务治理。 cse:governance:get 服务治理中心查看 cse:engine:list cse:engine:get cse:config:get cse:registry:get 查看服务治理功能。 cse:registry:modify 服务注册管理修改 cse:engine:list cse:engine:get cse:registry:get 服务修改。 cse:dashboard:modify dashboard管理修改 cse:engine:list cse:engine:get cse:registry:get cse:dashboard:get cse:registry:modify 仪表盘修改。 cse:dashboard:get dashboard管理查看 cse:engine:list cse:engine:get cse:registry:get 仪表盘查看。 cse:registry:get 服务注册管理查看 cse:engine:list cse:engine:get 服务目录查看。 仪表盘不需要授权,但是依赖registry权限,因为仪表盘区分服务需要使用服务目录功能。 表5 ServiceStage细粒度权限依赖说明 权限名称 权限描述 权限依赖 应用场景 servicestage:app:get 查询应用信息 servicestage:app:list 查询应用信息。 servicestage:app:create 创建应用 servicestage:app:get servicestage:app:list servicestage:assembling:get servicestage:assembling:list servicestage:assembling:create 创建应用。 servicestage:app:modify 更新应用 servicestage:app:get servicestage:app:list servicestage:assembling:get servicestage:assembling:list servicestage:assembling:modify 更新应用。 servicestage:app:delete 删除应用 servicestage:app:get servicestage:app:list servicestage:assembling:delete 删除应用。 servicestage:app:list 查看环境和应用列表 无 查看环境和应用列表。 servicestage:environment:create 创建环境 servicestage:app:get servicestage:app:list 创建环境。 servicestage:environment:modify 更新环境 servicestage:app:get servicestage:app:list 更新环境。 servicestage:environment:delete 删除环境 servicestage:app:get servicestage:app:list 删除环境。 servicestage:pipeline:get 查看流水线信息 servicestage:pipeline:list servicestage:assembling:get servicestage:assembling:list 查看流水线信息。 servicestage:pipeline:create 创建流水线 servicestage:pipeline:list servicestage:pipeline:get servicestage:assembling:create servicestage:assembling:get servicestage:assembling:list 创建流水线。 servicestage:pipeline:modify 修改流水线 servicestage:pipeline:get servicestage:pipeline:list servicestage:assembling:modify servicestage:assembling:get servicestage:assembling:list 修改流水线。 servicestage:pipeline:delete 删除流水线 servicestage:pipeline:get servicestage:pipeline:list servicestage:assembling:get servicestage:assembling:list servicestage:assembling:delete 删除流水线。 servicestage:pipeline:list 查看流水线列表 servicestage:assembling:get servicestage:assembling:list 查看流水线列表 servicestage:pipeline:execute 执行流水线 servicestage:pipeline:get servicestage:pipeline:list servicestage:assembling:modify servicestage:assembling:get servicestage:assembling:list servicestage:app:get servicestage:app:list servicestage:app:modify 执行流水线。 servicestage:assembling:get 查看构建信息 servicestage:assembling:list 查看构建信息。 servicestage:assembling:create 创建构建 servicestage:assembling:get servicestage:assembling:list 创建构建。 servicestage:assembling:modify 修改构建 servicestage:assembling:get servicestage:assembling:list 修改构建。 servicestage:assembling:delete 删除构建 servicestage:assembling:get servicestage:assembling:list 删除构建。 servicestage:assembling:list 查看构建列表 无 查看构建列表。
  • ServiceStage系统权限 默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组,并给用户组授予策略,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于策略对云服务进行操作。 ServiceStage资源通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域对应的项目中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问ServiceStage时,需要先切换至授权区域。 根据授权精细程度分为角色和策略: 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于各云服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。 如表1所示,包括了ServiceStage的所有系统权限。推荐使用系统策略,系统角色仅用于兼容已有的权限配置。 表1 ServiceStage系统权限 系统角色/策略名称 描述 类别 依赖关系 ServiceStage FullAccess 应用管理与运维平台所有权限。 系统策略 无 ServiceStage ReadOnlyAccess 应用管理与运维平台只读权限。 系统策略 无 ServiceStage Development 应用管理与运维平台开发者权限。 拥有应用、组件、环境的操作权限,但无审批权限和基础设施创建权限。 系统策略 无 CSE FullAccess 微服务引擎管理员权限。 系统策略 无 CSE ReadOnlyAccess 微服务引擎查看权限。 系统策略 无 ServiceStage Administrator 应用管理与运维平台管理员,拥有该服务下的所有权限。 系统角色 Tenant Guest、Server Administrator、CCE Administrator、APM Administrator。 ServiceStage Operator 应用管理与运维平台操作员,拥有该服务下的只读权限。 系统角色 Tenant Guest ServiceStage Developer 应用管理与运维平台开发者,拥有该服务下的所有权限,但无基础设施创建权限。 系统角色 Tenant Guest 如果表1所列的这些权限不满足实际需求, 您可以参考表2和表3,在这个基础上自定义策略。 其中,“√”表示支持,“x”表示不支持。 表2 ServiceStage常用操作与系统权限之间的关系 操作 ServiceStage ReadOnlyAccess ServiceStage Development ServiceStage FullAccess 创建应用 x √ √ 修改应用 x √ √ 查询应用 √ √ √ 删除应用 x √ √ 创建组件 x √ √ 查询组件 √ √ √ 部署组件 x √ √ 维护组件 x √ √ 删除组件 x √ √ 创建构建工程 x √ √ 修改构建工程 x √ √ 查询构建工程 √ √ √ 启动构建工程 x √ √ 删除构建工程 x √ √ 创建流水线 x √ √ 修改流水线 x √ √ 查询流水线 √ √ √ 启动流水线 x √ √ 克隆流水线 x √ √ 删除流水线 x √ √ 新建仓库授权 x √ √ 修改仓库授权 x √ √ 查询仓库授权 √ √ √ 删除仓库授权 x √ √ 表3 CSE常用操作与系统权限之间的关系 操作 CSE ReadOnlyAccess CSE FullAccess 创建微服务引擎 x √ 维护微服务引擎 x √ 查询微服务引擎 √ √ 删除微服务引擎 x √ 创建微服务 x √ 查询微服务 √ √ 维护微服务 x √ 删除微服务 x √ 创建微服务配置 x √ 查询微服务配置 √ √ 编辑微服务配置 x √ 删除微服务配置 x √ 创建微服务治理策略 x √ 查询微服务治理策略 √ √ 编辑微服务治理策略 x √ 删除微服务治理策略 x √
  • 典型业务应用场景 应用场景 对于传统的单体架构项目,不同的业务模式必须采取统一的技术方案及技术平台,每个业务模块也不能独立出来复用,系统中一个模块出现问题会导致整个系统不可用。随着企业业务的复杂度不断提升,传统单体架构模式越来越臃肿,难以适应灵活多变的业务需求,微服务应用可以解决上述问题。 价值 通过应用微服务化,企业可将一个臃肿的系统拆分成若干小的服务组件,组件之间的通讯采用轻量的协议完成,实现各组件生命周期管理的解耦。 随着业务增长,服务会遇到各种意外情况,如:瞬时大规模并发访问、服务出错、入侵等情况。使用微服务架构可以对服务做细粒度管控,支撑业务需求。 ServiceStage可承载微服务应用的全生命周期管理。支持Java、Php、Python、Node.js、Docker、Tomcat等技术栈,可无侵入托管Apache ServiceComb Java Chassis、Spring Cloud等微服务应用,另外还提供配置管理、监控运维和服务治理等更多功能,让企业微服务应用上云更简单。 优势 ServiceStage提供了的微服务应用解决方案具有以下优势: 支持原生ServiceComb、Spring Cloud等多种微服务框架,支持双栈模式(SDK和服务网格互通),无需更改业务代码直接托管上云。 API First,支持基于Swagger的API管理。 支持多语言微服务,如Java、Php、Python、Node.js等。 提供服务中心、配置中心、仪表盘、灰度发布等功能。 提供负载均衡、容错、限流、降级、熔断、错误注入、黑白名单等全套微服务治理策略。可针对业务场景进行界面化操作,极大提高了服务治理的可用性。 图1 微服务应用解决方案 实现Spring Cloud、Java Chassis之间的互相发现。
  • 持续集成和持续交付 应用场景 对于复杂的业务系统,从项目创建、编译、构建、自验、集成验证、类生产验证、上线的各个阶段都需要耗费大量的人力和时间,并且容易受到人为因素影响而出错。持续集成和持续交付由于具有标准化和自动化特点,可以很好的解决该问题。 价值 由人工执行变成了自动化执行,减少错误出现,提高工作效率。 环境及流程标准统一,利于业务扩展,降低升级改造成本。 优势 基于ServiceStage流水线,实现了集成环境统一、交付流程标准化,您可以实现全流程“自助式”开发、自验、集成验证与上线。 图2 持续集成和持续交付
  • 版本支持机制 微服务引擎创建 只能创建最新版本的微服务引擎,不支持创建指定版本微服务引擎。 微服务引擎维护 支持同时维护最新的3个正式版本。其余的版本,将不再提供技术支持,包括支持新的功能、社区bugfix回合、漏洞修复、升级等。 微服务引擎版本升级 正式版本升级: 1.3、1.2版本支持平滑升级到2.4及以后版本,且功能兼容。 支持当前最新的3个正式版本中的2个较低版本升级到最新版本。例如,当前最新的3个正式版本为2.4、1.3、1.2,则支持由1.2、1.3升级到2.4。 当引擎升级已超出可支持升级的版本范围,例如由1.0升级到1.3,可能导致微服务引擎的管理功能不可用,请谨慎操作。您可以通过提交工单,进行升级前风险评估。 补丁版本升级,微服务引擎后台提供补丁版本自动升级,例如由1.3.0升级到1.3.1。
  • 典型业务应用场景 应用场景 Web程序的应用范围非常广泛,日常使用的企业业务系统、网上商城系统、论坛、博客、Wiki知识系统、网络游戏等都可能是Web应用。针对不同技术架构的Web应用进行生命周期的管理,是企业IT部门主要工作内容之一。 价值 使用统一的平台管理各种Web应用,能够大大简化工作量,提高效率,快速响应复杂多变的业务需求。 优势 ServiceStage一站式运维平台,提升了企业级Web应用开发和运维的效率,使企业专注业务创新。具有以下优势: 一键部署,支持War、Jar、Zip软件包一键部署。 一站式运维,提供升级、回滚、日志、监控、弹性等丰富的运维能力。 无缝集成,支持与ELB、RDS、DCS等云服务与应用无缝集成。
  • 审计 云审计 服务(Cloud Trace Service,以下简称 CTS ),是华为 云安全 解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 用户开通云审计服务并创建和配置追踪器后,CTS开始记录操作事件用于审计。开通方法请参考CTS快速入门。 开通云审计服务后,可查看ServiceStage云审计日志,云审计服务保存最近7天的操作日志。CTS支持追踪的ServiceStage操作列表,请参考云审计服务支持的ServiceStage操作列表。 CTS支持配置关键操作通知。您可将与ServiceStage相关的高危敏感操作,作为关键操作加入到CTS的实时监控列表中进行监控跟踪。当您使用ServiceStage服务时,如果触发了监控列表中的关键操作,那么CTS会在记录操作日志的同时实时发送通知。
  • 身份认证 用户访问ServiceStage的方式有两种,包括ServiceStage控制台、API。其本质都是通过ServiceStage提供的REST风格的API接口进行请求。调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权: Token认证:通过Token认证调用请求。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证获得操作API的权限。 AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。请求认证总是需要包含一个签名值,该签名值以请求者的AK/SK作为加密因子,结合请求体携带的特定信息计算而成。通过AK/SK认证方式进行认证鉴权,即使用AK/SK加密的方法来验证某个请求发送者身份。关于访问密钥的详细介绍及获取方式,请参见访问密钥。
  • 责任共担 华为云秉承“将公司对网络和业务安全性保障的责任置于公司的商业利益之上”。针对层出不穷的云安全挑战和无孔不入的云安全威胁与攻击,华为云在遵从法律法规业界标准的基础上,以安全生态圈为护城河,依托华为独有的软硬件优势,构建面向不同区域和行业的完善云服务安全保障体系。 安全性是华为云与您的共同责任,如图1所示。 华为云:负责云服务自身的安全,提供安全的云。华为云的安全责任在于保障其所提供的IaaS、PaaS和SaaS各类各项云服务自身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。 华为云租户的安全责任在于对使用的IaaS、PaaS和SaaS类各项云服务内部的安全以及对租户定制配置进行安全有效的管理,包括但不限于虚拟网络、 虚拟主机 和访客虚拟机的操作系统,虚拟防火墙、API网关和高级安全服务,各项云服务,租户数据,以及身份账号和密钥管理等方面的安全配置。 《华为云安全白皮书》详细介绍华为云安全性的构建思路与措施,包括云安全战略、责任共担模型、合规与隐私、安全组织与人员、基础设施安全、租户服务与租户安全、工程安全、运维运营安全、生态安全。 图1 华为云安全责任共担模型 父主题: 安全
  • 微服务引擎专享版配额说明 配额是指您在微服务引擎专享版实例中可创建的资源数量限制,具体的资源配额限制如表4所示。 表4 微服务引擎资源配额限制 功能 资源 最大配额 是否支持修改配额 注意事项 微服务管理 微服务版本数量(个) 10,000 暂不支持 - 单个实例数据量(KB) 200 支持 扩大配额后,将增加微服务发现的时延。 单个微服务契约数量(个) 500 暂不支持 - 配置管理 单个配置数据量(KB) 128 暂不支持 - 单个应用级配置数量(个) 2,000 暂不支持 - 微服务治理 应用级的治理策略 1,000 暂不支持 所有的应用的治理策略总和不能超过1000条。 如需使用更大配额,请提交工单申请扩大配额。 单个治理策略包含:治理规则和业务场景。治理规则和业务场景实际会等量占用配置中心的配额。 微服务版本数:微服务场景中版本用来标记微服务的迭代记录,方便对微服务的不同迭代进行管理。 微服务实例数:实例是一个微服务的最小运行和部署单元,通常对应一个应用进程。同一个微服务通过部署在多个容器或虚机,可以实现多个实例同时运行。 配置条目数:微服务场景中的配置是指对程序代码中某些变量的取值控制。比如,动态配置就是通过在微服务运行过程中对某些变量的取值进行动态变更。
  • 微服务开发框架版本要求 微服务开发框架推荐版本如下表所示。 如果已经使用低版本的微服务开发框架构建应用,建议升级到推荐版本,以获取最稳定和丰富的功能体验。 如果已使用Spring Cloud微服务开发框架开发了应用,推荐使用Spring Cloud Huawei接入应用。 Spring Cloud Huawei各分支版本与Spring Boot、Spring Cloud、Java Chassis及JDK编译版本的配套关系请参考版本配套说明。 如果基于开源开放和业界生态组件新开发微服务应用,可选择Spring Cloud框架。 如果希望使用微服务引擎提供的开箱即用的治理能力和高性能的RPC框架,可选择Java Chassis框架。 框架 推荐版本 说明 Spring Cloud Huawei 1.10.9-2021.0.x及以上 采用Spring Cloud Huawei项目提供接入支持: 适配的Spring Cloud版本为2021.0.5 适配的Spring Boot版本为2.6.13 Spring Cloud微服务开发框架的版本说明请参见:https://github.com/huaweicloud/spring-cloud-huawei/releases。 Java Chassis 2.7.10及以上 可以直接使用开源项目提供的软件包接入,不需要引用其他第三方软件包。 Java Chassis微服务开发框架的版本说明请参见:https://github.com/apache/servicecomb-java-chassis/releases。 系统升级、改造过程中,三方软件冲突是最常见的问题。随着软件迭代速度越来越快,传统的软件兼容性管理策略已经不适应软件的发展,您可以参考三方软件版本管理策略来解决版本冲突。
  • 注册发现 微服务引擎专业版(Cloud Service Engine)限制请参见表1。 表1 微服务引擎专业版限制 项目 限制 心跳上报 每个微服务实例最频繁每30s一次 服务发现 每个微服务实例最频繁每30s一次 微服务实例注册 每秒10个 微服务引擎专享版限制请参见表2。 表2 微服务引擎专享版限制(最高规格) 项目 限制 备注 心跳上报 每个微服务实例最频繁每20s一次 总限流为2000tps 服务发现 每个微服务实例最频繁每20s一次 - 微服务实例注册 每秒1000个 -
  • 治理策略说明 支持负载均衡、限流、容错、降级、熔断、错误注入和黑白名单等策略的配置,具体说明见下表。 名称 说明 负载均衡 应用场景 微服务一般会部署多个实例,负载均衡控制微服务消费者访问微服务提供者的多个实例的策略,以达到流量均衡的目的。策略包括轮询、随机、响应时间权值、会话粘滞等。 该治理策略的配置示例及在POM中添加依赖可参考负载均衡中相关内容。 限流 应用场景 用于控制访问微服务的请求量大小,避免由于流量冲击对系统造成破坏。 该治理策略的配置示例及在POM中添加依赖可参考限流中相关内容。 降级 应用场景 用于控制微服务调用其他微服务的时候,强制返回缺省值或者抛出异常,而不将请求发送到目标微服务,以达到屏蔽对目标微服务的访问和降低其压力的目的。 该治理策略的配置示例及在POM中添加依赖可参考降级中相关内容。 容错 应用场景 当微服务消费者访问提供者出现异常,比如实例网络不通等,需要将请求转发到其他可用的实例。这里的容错,常被称为重试。 该治理策略的配置示例及在POM中添加依赖可参考容错中相关内容。 熔断 应用场景 当微服务消费者访问提供者出现异常,比如实例网络不通、请求超时等,并且异常积累到一定的程度,需要停止访问提供者,返回一个异常或者缺省值,防止雪崩效应。 熔断提供了自动熔断策略。自动熔断需要结合错误率等判断是否熔断。 该治理策略的配置示例及在POM中添加依赖可参考熔断中相关内容。 错误注入 该服务治理策略只适用于Java Chassis开发框架接入的微服务。 应用场景 错误注入可以模拟一个调用失败,主要用于功能验证、故障场景演示等场景。 Java Chassis开发框架接入的微服务治理,该治理策略的配置示例及在POM中添加依赖可参考错误注入中相关内容。 黑白名单 该服务治理策略只适用于Java Chassis开发框架接入的微服务。 应用场景 基于公钥认证机制,微服务引擎提供了黑白名单功能。通过黑白名单,可以控制微服务允许其他哪些服务访问。 Java Chassis开发框架接入的微服务治理 只有启用了公钥认证,设置的黑白名单才能生效,请参考公钥认证。 该服务治理策略只适用于Java Chassis开发框架接入的微服务。
  • 摊销成本 包年/包月资源按当天归属的企业项目进行分摊”功能(公测中) 开启“包年/包月资源按当天归属的企业项目进行分摊”功能(公测中)后, 按照资源归属的企业项目天数进行分摊。即每天分摊时,资源归属于当天生效的最后一个企业项目。 账单调账、退款时,分摊涉及到历史日期的金额,要按照历史日期中资源归属的企业项目进行分摊;当天及未来日期的金额按照资源当天归属的企业项目进行分摊。 详细信息请参见开通“包年/包月资源按当天归属的企业项目进行分摊”功能(公测中)。 该功能开启后不支持关闭。 开启该功能后从第二天开始生效,且历史数据不重新分摊。 共同成本分拆 您购买的共享资源可能由多个域名或IP共同使用,开启“共同成本分拆”功能后,可以将成本分摊到域名或IP,并支持按照域名或IP归属的标签、企业项目进行汇总分析。详细信息请参见开通共同成本分拆功能。 该功能开启后不支持关闭。 功能开通成功后,您可以在次月5号后进入“成本分析”页面,查看摊销成本的分拆结果。
  • 数据范围 成本中心提供的与您相关的成本和使用量数据,供您参考和使用。 成本中心默认为您提供近18个月的成本和使用量数据。在“选项”处开启“月粒度的多年数据”,将为您最多提供近38个月的成本和使用量数据。 如果您是普通账号,则成本中心提供您在华为云上消费产生的成本和使用量数据。 如果您是企业主账号,且没有开通财务托管,则成本中心为您提供的数据如下: 企业主账号本身消费产生的成本和使用量数据。 企业子账号在关联还款期间的成本和使用量数据。 为企业主账号授权查看其消费数据的企业子账号自身消费产生的成本和使用量数据。 如果您是企业主账号,且开通了财务托管,则成本中心为您提供的数据如下: 企业主账号本身消费产生的成本和使用量数据; 财务托管企业子账号消费产生的成本和使用量数据。 如果您是财务托管下的企业子账号,则成本中心只为您提供财务托管期间产生的成本和使用量数据;企业子账号取消关联企业主账号成为普通账号后,则只能访问未关联企业主账号期间的成本和使用量数据,同时不再有权访问关联企业主账号期间的数据。 如果您是非财务托管企业子账号,则可以查看您在华为云上消费产生的成本和使用量数据(和普通普通账号一致)。 如果您是伙伴转售类子账号,则成本中心提供您在华为云上消费产生的成本和使用量数据。在您被转售期间,成本中心提供的相关统计均是基于华为云官网价计算,仅供参考。 成本中心暂不支持经销商伙伴(含精英服务商)使用。 若您的摊销成本出现异常增高,详细请参见为什么当月最近一天的摊销成本会异常增高? 父主题: 概述
  • 成本类型 成本中心目前提供两种成本类型的数据供您使用。 原始成本:反映了原始使用和购买情况。该成本是基于云服务官网价,应用了商务折扣、促销折扣等优惠之后的金额。该成本未考虑代金券的抵扣,如果想了解抵扣代金券之后的原始购买情况,可以使用原始成本净值。 摊销成本:反映了包年/包月的预付金额在订单有效期间内按日分摊后的有效成本。比如您购买了有效期为一年的云服务共365元,则每天的摊销成本为1元。详细计算规则,可参见成本分摊规则。该成本未考虑代金券的抵扣,如果想了解抵扣代金券之后的摊销情况,可以使用摊销成本净值。 父主题: 概述
  • 跨VPC访问和通过DNAT访问实例 请按照表4设置安全组规则。 表4 安全组规则 方向 协议 端口 源地址 说明 入方向 TCP 9011 198.19.128.0/17 通过 VPC终端节点 实现跨VPC访问Kafka实例(密文接入和明文接入都适用)。 入方向 TCP 9011 Kafka客户端所在的IP地址或地址组 使用DNAT访问Kafka实例(密文接入和明文接入都适用)。 入方向 TCP 9092 Kafka客户端所在的IP地址或地址组 使用对等连接跨VPC访问Kafka实例(明文接入)。 入方向 TCP 9093 Kafka客户端所在的IP地址或地址组 使用对等连接跨VPC访问Kafka实例(密文接入)。
  • 通过公网访问实例 请按照表5设置安全组规则。 表5 安全组规则 方向 协议 类型 端口 源地址 说明 入方向 TCP IPv4 9094 Kafka客户端所在的IP地址或地址组 通过公网访问Kafka(明文接入)。 入方向 TCP IPv4 9095 Kafka客户端所在的IP地址或地址组 通过公网访问Kafka(密文接入)。 入方向 TCP IPv6 9192 Kafka客户端所在的IP地址或地址组 通过公网访问Kafka实例(关闭SSL加密)。 入方向 TCP IPv6 9193 Kafka客户端所在的IP地址或地址组 通过公网访问Kafka实例(开启SSL加密)。
  • Kafka实例是否需要创建消费组、生产者和消费者? “auto.create.groups.enable”为“true”时,不需要单独创建消费组、生产者和消费者,在使用时自动生成,实例创建后,直接使用即可。 “auto.create.groups.enable”为“false”时,需要手动创建消费组,不需要单独创建生产者和消费者。 修改“auto.create.groups.enable”的方法,请参考修改Kafka实例配置参数。 连接Kafka实例后,生产消息和消费消息,请参考向Kafka实例生产消息和消费消息。 父主题: 消费组问题
  • 使用内网通过同一个VPC访问实例 客户端和实例是否使用相同的安全组? 是,如果保留了创建安全组后,系统默认添加的入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,则无需添加其他规则。否则,请添加表1所示规则。 表1 安全组规则 方向 协议 类型 端口 源地址 说明 入方向 TCP IPv4 9092 Kafka客户端所在的IP地址或地址组 使用内网通过同一个VPC访问Kafka实例(明文接入)。 入方向 TCP IPv6 9192 Kafka客户端所在的IP地址或地址组 使用内网通过同一个VPC访问Kafka实例(关闭SSL加密)。 入方向 TCP IPv4 9093 Kafka客户端所在的IP地址或地址组 使用内网通过同一个VPC访问Kafka实例(密文接入)。 入方向 TCP IPv6 9193 Kafka客户端所在的IP地址或地址组 使用内网通过同一个VPC访问Kafka实例(开启SSL加密)。 否,执行2。 参考如下配置安全组规则。 假设客户端和Kafka实例的安全组分别为:sg-53d4、Default_All。以下规则,远端可使用安全组,也可以使用具体的IP地址,本章节以安全组为例介绍。 客户端所在安全组需要增加如下规则,以保证客户端能正常访问Kafka实例。 表2 安全组规则 方向 策略 协议端口 目的地址 出方向 允许 全部 Default_All 图1 配置客户端安全组 Kafka实例所在安全组需要增加如下规则,以保证能被客户端访问。 表3 安全组规则 方向 策略 协议端口 源地址 入方向 允许 全部 sg-53d4 图2 配置Kafka实例安全组
  • 解决方法/排查思路 场景一:未能及时发送心跳请求 排查思路:如果是Java语言客户端,建议排查GC日志是否存在长时间FullGC的情况。该场景可能会导致心跳线程阻塞,服务端检查心跳失败,进入Rebalance状态。 解决方法:如果存在长时间FullGC的情况,需要您排查客户端相关问题(FullGC可能是客户端存在内存泄露)。 场景二:消费者消费时间间隔过长 排查思路: 检查单条消息的处理时间是多久,处理max.poll.records条消息会不会超过max.poll.interval.ms时间。 消息处理流程是否有网络行为,如写数据库、调用后端API等,在发生Rebalance的场景下消费者下游系统是否正常。 解决方法:建议在消费者客户端将max.poll.records值减小,如果消息处理时间较长可以适当增加max.poll.interval.ms。
  • Kafka实例连接数有限制吗? 不同规格的Kafka实例,连接数限制如下: 表1 老规格Kafka实例的连接数 基准带宽 连接数上限 100MB/s 3000 300MB/s 10000 600MB/s 20000 1200MB/s 20000 表2 新规格Kafka实例的连接数 实例规格 单个代理客户端总连接数上限 kafka.2u4g.cluster.small 2000 kafka.2u4g.single.small 2000 kafka.2u4g.cluster 2000 kafka.2u4g.single 2000 kafka.4u8g.cluster 4000 kafka.8u16g.cluster 4000 kafka.12u24g.cluster 4000 kafka.16u32g.cluster 4000 父主题: 连接问题
  • 如果消息组中没有在线的消费者(如empty状态),是否14天后会自动被删除? 消息组中没有在线的消费者(如empty状态),14天后是否会自动被删除与offsets.retention.minutes、auto.create.groups.enable参数有关: 2023年4月25日前创建的实例,auto.create.groups.enable默认为true,消费组多久后会自动被删除取决于offsets.retention.minutes,offsets.retention.minutes支持在控制台修改,具体修改方法请参考修改配置参数。 2023年4月25日及之后创建的实例,分为以下几种情况: auto.create.groups.enable为false时,消费组不会被删除,如果需要删除消费组,您可以手动删除。 auto.create.groups.enable为false时,存在一种特殊场景:2024年2月5日前创建的Kafka实例,如果消费组只订阅了一个Topic,且消费组状态为empty,此时删除此Topic,会同时将消费组删除。 auto.create.groups.enable为true时,如果消费组中从未提交过offset,消费组十分钟后自动被删除。 auto.create.groups.enable为true时,如果消费组中提交过offset,消费组多久后会自动被删除取决于offsets.retention.minutes,offsets.retention.minutes支持在控制台修改,具体修改方法请参考修改配置参数。 原因如下:Kafka通过offsets.retention.minutes参数控制消费组中offsets保留时间,在此时间内如果没有提交offset,offsets将会被删除。Kafka判定消息组中没有在线的消费者(如empty状态),且没有offsets时,将会删除此消费组。 父主题: 消费组问题
  • 消费者消费Topic失败,提示没有权限? 问题现象:同一个消费组内有多个消费者,为每个消费者授权不同的Topic访问权限,某一消费者消费其中一个Topic时,提示消费失败,报错信息如下:Not authorized to access topics。 问题原因:消费组的leader在进行分区分配时,不会考虑某一个消费者的授权和订阅信息,只会根据消费组整体的订阅情况进行分区分配,此种情况下可能会给消费者分配到未授权的Topic,从而导致了上述问题的出现。 例如:消费组中有消费者A、B、C,A订阅并授权Topic 0、Topic 1、Topic 2,B订阅并授权Topic 3、Topic 4、Topic 5,C订阅并授权Topic 6、Topic 7、Topic 8,假设以上Topic都只有一个分区,消费组的leader会根据策略进行分区分配,分配的结果可能变成:A消费Topic 0、Topic 3、Topic 6,B消费Topic 1、Topic 4、Topic 7,C消费Topic 2、Topic 5、Topic 8。此时A对Topic 3和Topic 6是没有授权的,因此会出现“Not authorized to access topics”的报错。 图1 消费者访问权限 处理方法: 如果业务要求所有消费者在同一个消费组内,即group.id相同,解决方法:为所有消费者授权相同的Topic访问权限。 如果消费者不需要在同一个消费组内,解决方法:修改group.id,让每个消费者单独在一个消费组内。 父主题: Topic和分区问题
  • Kafka支持哪些加密套件? 由于安全问题,2021年3月20日前以及当天创建的实例,支持的加密套件为TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256和TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256。2021年3月20日后创建的实例,支持的加密套件为TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256。 父主题: 实例问题
  • 为什么offset不连续? 在生产者客户端中开启幂等或事务,然后生产消息,此时您会在消费者客户端或Kafka控制台的“消息查询”中观察到消息offset不连续的现象。这是因为开启了幂等或事务后,在生产消息时会产生一些元数据控制消息,这些控制消息也会生产到该Topic中, 且它们对消费者不可见,从而造成offset不连续的现象。 Kafka生产者客户端3.0及之后的版本会默认开启幂等,如果不需要使用该功能,请将“enable.idempotence”设置为“false”。 父主题: 消息问题
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全