华为云用户手册

  • 应用网关实例规格 您可根据实际业务需要,选择合适的应用网关实例规格,当前支持小型、中型、大型和超大型四种规格。以下为各个网关规格,在部署2个网关节点时的规格基线。当部署n个节点时,安全TPS和警戒TPS均按照“2节点的数值/2*n”计算。 表1 应用网关实例规格 实例规格 响应报文大小(KB) 请求header(个数) 警戒TPS(事务数/每秒) 安全TPS(事务数/每秒) 小型(2u4g*2) 1 0 13235 11912 1 5 13020 11718 2 0 12656 11391 2 5 12315 11084 2 10 12297 11068 5 5 11801 10621 5 10 11295 10166 中型(4u8g*2) 1 0 27501 24751 1 5 26674 24007 2 0 25955 23360 2 5 25422 22880 2 10 25321 22789 5 5 24868 22382 5 10 23587 21229 大型(8u16g*2) 1 0 58624 52762 1 5 53320 47988 2 0 52038 46835 2 5 50518 45467 2 10 48023 43221 5 5 43446 39102 5 10 41801 37621 超大型(16u32g*2) 1 0 160458 144412 1 5 157249 141524 2 0 139598 125638 2 5 136806 123125 2 10 132618 119356 5 5 125799 113219 5 10 122025 109822
  • 应用网关将Ingress+微服务网关合一替代传统网关,减少部署资源,缩短请求时延 微服务架构的注册发现机制,引入了微服务网关组件来实现路由打通;容器化的网络模型,引入了Ingress网关组件;部分微服务开发框架的通讯协议,引入了BFF层进行协议转换。这些背景使得一个标准的微服务化+容器化的服务,会引入很多层网关组件。 CS E应用网关基于云原生技术栈Envoy,提供Ingress+微服务网关合一的功能,简化组网部署,免去网关运维烦恼,降低资源开销。应用网关作为微服架构的关键组件,是微服务访问流量入口,提供安全认证,日志审计,监控等功能,也是微服务治理的重要部分。
  • 动态配置管理 配置中心提供集中化的配置管理,实现不同环境、不同集群和不同实例的差异化配置。运行时动态变更配置,相比传统配置文件方式,更加高效和规范。 配置中心按使用方式,分为以下几种: 作为部署环境配置,与部署交付服务集成,如常见的SpringCloud服务的application.yaml,可以承载应用数据源,访问私钥等配置信息。 作为运维参数配置,与运维服务结合,如动态调整日志级别,连接池个数。 作为业务参数配置,如动态修改商品价格折扣,动态公告,动态中奖率等。 微服务在启动过程中,会向配置中心发送请求,获取自身的配置信息。配置中心根据微服务的请求,从存储中读取相应的配置数据,并返回给微服务。微服务在接收到配置信息后,会将其解析并加载到内存中,供应用程序使用。 在配置中心,管理员针对灰度发布需求,定义专门的灰度配置项,这些配置项与正常生产配置区分开,可关联特定标识(如灰度版本号、用户分组标识 )。 微服务启动时,从配置中心拉取基础配置信息,同时携带自身标识(如服务名、版本号等)及灰度相关标识(若已确定所属灰度分组 )。 配置中心接收到微服务请求后,依据微服务携带的标识,判断其是否属于灰度范围。若属于灰度范围,配置中心从灰度配置存储区查找并返回对应的灰度配置;若不属于,则返回正常生产配置。 微服务在运行过程中,可根据配置中心的通知机制(如长连接推送、定时轮询 ),动态拉取灰度配置的更新内容。当灰度配置有变更时,配置中心及时通知相关微服务,微服务重新拉取并应用新的灰度配置。
  • 微服务注册发现 微服务架构首先要解决的是微服务间的通信问题,相比传统的通信总线、LB方案,注册发现机制在客户端实现负载均衡,在通信效率和弹性上更具优势。CSE为SpringCloud、Dubbo、ServiceComb等开发框架提供了高可用、稳定、免运维的服务注册中心。 微服务注册发现机制主要通过服务注册中心来实现。 服务注册:微服务实例在启动时,会向服务注册中心发送注册请求,将自身的元数据(如服务名称、IP 地址、端口号、版本号等)注册到注册中心。注册中心会将这些信息存储在一个内部的数据结构中,以便后续查询。服务提供者会以固定时间间隔,向注册中心发送包含服务运行状态、负载、资源消耗等健康信息的心跳消息,以此告知注册中心自身处于活动状态。注册中心接收并记录心跳消息,依据消息到达情况和内容判断服务可用性,若超过一定时间未收到心跳,会将对应服务实例状态标记为不健康,若继续超时而仍未收到,则从可用服务列表中剔除该实例。 当服务实例恢复发送心跳,可重新注册。 服务发现:服务消费者直接与注册中心交互,自主获取服务提供者的实例信息,并在本地实现负载均衡。在微服务架构中,服务提供者的实例可能会因为各种原因(如扩容、缩容、故障等)发生变化。服务消费者通过监听注册中心,可以实时感知这些变化,及时更新本地的服务实例列表,确保后续的服务调用能够准确地找到可用的服务提供者。
  • 责任共担 华为云秉承“将公司对网络和业务安全性保障的责任置于公司的商业利益之上”。针对层出不穷的 云安全 挑战和无孔不入的云安全威胁与攻击,华为云在遵从法律法规业界标准的基础上,以安全生态圈为护城河,依托华为独有的软硬件优势,构建面向不同区域和行业的完善云服务安全保障体系。 安全性是华为云与您的共同责任,如图1所示。 华为云:负责云服务自身的安全,提供安全的云。华为云的安全责任在于保障其所提供的 IaaS、PaaS 和 SaaS 各类各项云服务自身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。 华为云租户的安全责任在于对使用的 IaaS、PaaS 和 SaaS 类各项云服务内部的安全以及对租户定制配置进行安全有效的管理,包括但不限于虚拟网络、 虚拟主机 和访客虚拟机的操作系统,虚拟防火墙、API 网关和高级安全服务,各项云服务,租户数据,以及身份账号和密钥管理等方面的安全配置。 《华为云安全白皮书》详细介绍华为云安全性的构建思路与措施,包括云安全战略、责任共担模型、合规与隐私、安全组织与人员、基础设施安全、租户服务与租户安全、工程安全、运维运营安全、生态安全。 图1 华为云安全责任共担模型 父主题: 安全
  • 与其他服务的关系 云原生架构模式下,完成业务功能需要很多服务相互配合: CSE一般和数据库、缓存和消息中间件同时使用,完成业务功能的开发。 AOM APM 、LTS等工具,则为业务提供运维能力,帮助检测业务故障、分析故障原因。 以Spring Cloud为例,典型的云原生架构和技术选型如下: 云原生架构和DevOps通常是密不可分的,配合使用ServiceStage,可以实现云原生环境的管理、部署流水线,简化微服务应用部署到容器CCE的流程。
  • 版本支持机制 引擎创建 只能创建最新版本的ServiceComb引擎,不支持指定版本创建引擎。 引擎维护 CSE后台同时支持维护最新的3个正式版本。其余的版本,CSE将不再提供技术支持,包括支持新的功能、社区bugfix回合、漏洞修复、升级等。 引擎升级 正式版本升级,支持当前最新的3个正式版本中的2个较低版本升级到最新版本。例如,当前最新的3个正式版本为2.3、2.2、2.1,则支持由2.1、2.2升级到2.3。 当引擎升级已超出可支持升级的版本范围,例如由2.0升级到2.3,可能导致ServiceComb引擎的管理功能不可用,请谨慎操作。 您可以通过提交工单,进行升级前风险评估。 补丁版本升级,CSE后台提供补丁版本自动升级,例如由2.3.0升级到2.3.1。
  • CSE权限 默认情况下,新建的 IAM 用户没有任何权限,您需要将其加入用户组,并给用户组授予策略,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于策略对云服务进行操作。 CSE资源通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域对应的项目中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问CSE时,需要先切换至授权区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。 如表1所示,包括了CSE的所有系统权限。 表1 CSE系统权限说明 系统角色/策略名称 描述 类别 依赖关系 CSE FullAccess 微服务引擎服务管理员权限。 系统策略 无 CSE ReadOnlyAccess 微服务引擎服务查看权限。 系统策略 无 如果表1所列权限不满足实际需求,可以在这个基础上创建微服务引擎自定义策略。 更多CSE相关功能需要依赖的服务权限,请参见表2所示。 表2 CSE控制台依赖服务的角色或策略 控制台功能 依赖服务 需配置角色/策略 删除、创建引擎 虚拟私有云 VPC 如果需要创建与删除引擎,需要设置VPC ReadOnlyAccess权限。 创建应用网关、查看应用网关详情 弹性负载均衡 ELB 如果需要创建应用网关及查看应用网关详情,需要设置ELB ReadOnlyAccess权限。 仪表盘 应用运维管理 AOM 如果需要查看仪表盘等图表数据,需要设置AOM ReadOnlyAccess权限。 标签管理 标签管理服务 TMS 如果需要使用TMS为ServiceComb引擎、Nacos引擎或应用网关添加标签,可以方便用户识别和管理拥有的ServiceComb引擎、Nacos引擎或应用网关资源,需要设置TMS ReadOnlyAccess权限。 导入IAM用户 统一身份认证 服务 IAM 如果需要导入IAM用户,需要设置IAM ReadOnlyAccess权限。 表3列出了微服务引擎常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表3 常用操作与系统权限之间的关系 操作 CSE ReadOnlyAccess CSE FullAccess 创建微服务引擎 x √ 维护微服务引擎 x √ 查询微服务引擎 √ √ 删除微服务引擎 x √ 创建微服务 x √ 查询微服务 √ √ 维护微服务 x √ 删除微服务 x √ 创建微服务配置 x √ 查询微服务配置 √ √ 编辑微服务配置 x √ 删除微服务配置 x √ 创建微服务治理策略 x √ 查询微服务治理策略 √ √ 编辑微服务治理策略 x √ 删除微服务治理策略 x √
  • Spring-cloud-huawei、Servicecomb及Sermant功能对比 一级特性 二级特性 servicecomb-java-chassis spring-cloud-huawei sermant agent 备注 微服务网关 服务端限流 √ √ √ - 服务端隔离仓 √ √ √ - 客户端熔断 × √ × - 客户端容错 × √ × - 客户端降级 × × × - 客户端故障注入 × × × - 负载均衡策略 √ √ × - 灰度发布 × √ √ - 优雅停机 √ √ × - 微服务治理 优雅上下线 √ √ √ - 无损升级 √ √ √ - 服务端限流 √ √ √ - 客户端容错 √ √ √ - 客户熔断 √ √ √ - 客户端降级 √ √ √ - 服务端隔离仓 √ √ √ - 客户端隔离仓 √ √ √ - 负载均衡策略 √ √ √ - 灰度发布 √ √ √ - 全链路日志追踪 √ √ × - 服务治理状态上传 √ √ × - 快速失败 √ √ × - 故障注入 √ × √ - 黑白名单 √ √ × - 注册发现 本地注册发现 √ √ × - 单注册-CSE √ √ √ - 单注册-ServiceCenter √ √ √ - 双注册 × × √ 双注册指同时注册到两个注册中心,当前sermant支持同时注册到cse和宿主原生注册中心。 配置中心支持 servicecomb引擎 √ √ √ 可基于配置中心下发配置, 例如服务治理规则、业务配置。 Nacos引擎 √ √ √ servicecomb-kie √ √ √ zookeeper × × √ 轻量化配置中心(zero-config) √ × × apollo × × × 安全特性 安全认证 √ √ × 服务实例与注册中心以及消费端与生产端之间的认证。 开发 多协议支持 √ × × JavaChassis针对消费与生产端支持多种通信协议,如下: 生产端:JAX-RS、SpringMVC、透明RPC。 消费端:透明RPC、RestTemplate、InvokerUtils。 拓展 支持用户自定义处理链处理流量。 支持用户扩展流量治理。 支持Spring Cloud原生扩展。 支持用户扩展流量治理。 基于插件开发模式新增能力。 -
  • 配额说明 配额是指您引擎实例中可创建的资源数量限制。如需使用更大配额,请提交工单申请扩大配额。 Nacos引擎实例中可创建的资源数量限制如表1所示。 表1 Nacos引擎资源配额限制 资源 最大配额 是否支持修改配额 注意事项 Nacos单实例命名空间数量 50个 否 - Nacos单个配置文件大小上限 100KB 否 - Nacos单个命名空间配置总计大小 10MB 否 - 带宽(网络流出+流入之和) 2Mbit/s 否 - ServiceComb引擎实例中可创建的资源数量限制如表2所示。 表2 ServiceComb引擎资源配额限制 功能 资源 最大配额 是否支持修改配额 注意事项 微服务管理 微服务版本数量(个) 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框架。 如果希望使用ServiceComb引擎提供的开箱即用的治理能力和高性能的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。 系统升级、改造过程中,三方软件冲突是最常见的问题。随着软件迭代速度越来越快,传统的软件兼容性管理策略已经不适应软件的发展,您可以参考三方软件版本管理策略来解决版本冲突。
  • Nacos引擎版本兼容性说明 CSE Nacos引擎版本 兼容Nacos社区版本 兼容性 2.1.0.x 2.1.0 100% CSE Nacos引擎很好地兼容社区Nacos 2.1.0及其以下版本,且向下兼容。例如:微服务使用开源Nacos 1.x.x版本,也可以使用CSE Nacos引擎。 配置中心兼容Nacos 1.0起所有的客户端版本,服务发现兼容Nacos 1.2起的所有客户端版本, 因此建议使用Nacos 1.2.0之后客户端版本。 Nacos 2.x.x版本新增了长连接功能,需要使用长连接能力请升级至2.x.x版本。 Nacos 2.1.0版本后,默认关闭了双写能力,因此无法支持从Nacos 1.x版本平滑升级到2.1.0+的能力,如需要使用平滑升级能力,从Nacos 1.x直接升级到Nacos 2.1.0+版本,需要在application.properties文件中配置参数nacos.core.support.upgrade.from.1x=true。
  • Nacos引擎与微服务框架版本关系 CSE Nacos引擎版本 Spring Cloud Alibaba版本 Spring Cloud版本 Spring Boot版本 2.1.0.x 2022.0.0.0-RC* Spring Cloud 2022.0.0 3.0.0 2021.0.4.0* Spring Cloud 2021.0.4 2.6.11 2021.0.1.0 Spring Cloud 2021.0.1 2.6.3 2021.1 Spring Cloud 2020.0.1 2.4.2 2.2.10-RC1* Spring Cloud Hoxton.SR12 2.3.12.RELEASE 2.2.9.RELEASE Spring Cloud Hoxton.SR12 2.3.12.RELEASE 2.2.8.RELEASE Spring Cloud Hoxton.SR12 2.3.12.RELEASE 2.2.7.RELEASE Spring Cloud Hoxton.SR12 2.3.12.RELEASE 2.2.6.RELEASE Spring Cloud Hoxton.SR9 2.3.2.RELEASE 2.2.1.RELEASE Spring Cloud Hoxton.SR3 2.2.5.RELEASE 2.2.0.RELEASE Spring Cloud Hoxton.RELEASE 2.2.X.RELEASE 2.1.4.RELEASE Spring Cloud Greenwich.SR6 2.1.13.RELEASE 2.1.2.RELEASE Spring Cloud Greenwich 2.1.X.RELEASE 2.0.4.RELEASE(停止维护,建议升级) Spring Cloud Finchley 2.0.X.RELEASE 1.5.1.RELEASE(停止维护,建议升级) Spring Cloud Edgware 1.5.X.RELEASE
  • 私有镜像相关操作费用 操作 计费标准 上传外部镜像文件至OBS桶 按照OBS服务的标准收取存储费用,建议及时删除不再使用的镜像文件。 使用系统盘镜像或整机镜像创建云服务器 系统盘镜像或整机镜像本身不收取费用,按照EVS服务的标准收取镜像的磁盘容量对应的云硬盘费用。 例如:使用整机镜像(包含系统盘40GB、数据盘100GB)创建云服务器时,按照系统盘和数据盘总容量收取云硬盘费用。假设云硬盘计费标准为¥0.00049/小时/GB,那么所收取的云硬盘费用为¥0.0686/小时。 说明: 通过私有镜像创建云服务器时,如果私有镜像是由市场镜像创建的云服务器创建的,则会根据华为云云商店价格收取镜像费用。 区域内复制系统盘镜像、数据盘镜像 复制后的镜像存储在OBS桶中,免费使用。 跨区域复制系统盘镜像、数据盘镜像 按照OBS跨区域复制功能收取复制流量费用。 跨区域复制整机镜像 按照CSBS或CBR跨区域复制功能收取复制流量费用。 复制后的镜像关联的备份按照CSBS或CBR服务的标准收取存储费用。 导出镜像 导出的镜像会按照所占用的OBS存储空间收取费用。
  • 不同镜像类型的费用 镜像类型 费用 公共镜像 银河麒麟(KylinOS)、统信(UnionTechOS)、麒麟信安(Kylinsec)、SUSE、SUSESAP收费,其余公共镜像免费。 说明: Windows操作系统为市场镜像,该服务由第三方提供。为方便用户选用,在公共镜像中提供入口。具体收费以镜像供应商提供的信息为准。 私有镜像 创建系统盘镜像、数据盘镜像或ISO镜像:免费。 系统盘镜像、数据盘镜像或ISO镜像存储在OBS桶中,但并非用户的私有桶,对用户不可见,镜像的管理维护必须通过 镜像服务 来实现。目前这部分存储免费供用户使用。 创建整机镜像:涉及的费用为云服务器备份或云备份的存储费用。 使用云服务器备份创建整机镜像,收取镜像关联的云服务器备份费用;使用云备份创建整机镜像,收取镜像关联的云备份费用。 共享镜像 来源于他人共享的系统盘镜像、数据盘镜像:免费。 来源于他人共享的整机镜像:涉及云备份存储费用。 说明: 仅云备份创建的整机镜像支持共享。 市场镜像 以镜像供应商提供的信息为准。
  • 为什么由市场镜像创建的云服务器切换操作系统时,无法切换到其他市场镜像? 如果由市场镜像创建的云服务器无法切换到其他市场镜像,表示系统不支持此切换场景。 市场镜像的操作系统切换约束如下: “包年/包月”方式购买的弹性云服务器,除了由伊登公司提供的Windows标准操作系统之外,仅支持由免费的操作系统切换至免费的操作系统。 使用源镜像为市场镜像(除了由伊登公司提供的Windows标准操作系统)的私有镜像创建,且购买方式为“包年/包月”的云服务器不支持切换操作系统 。 仅中国大陆区域的“包年/包月”方式购买的弹性云服务器支持“Linux操作系统与由伊登公司提供的Windows标准操作系统互相切换”和“由伊登公司提供的Windows标准操作系统不同版本之间互相切换”这两个场景。 支持的区域包括:华北-北京一、华北-北京四、华北-乌兰察布一、华东-上海一、华东-上海二、华南-广州、华南-广州-友好用户环境、华南-深圳、西南-贵阳一。
  • 怎么将自己的镜像发布为市场镜像? 镜像按照一定的规范发布到华为云云商店,即可成为市场镜像。华为云云商店是值得信赖的软件及服务交易交付平台,致力于为用户提供优质、便捷的基于云计算、大数据业务的软件、服务和解决方案,满足华为云用户快速上云和开展业务的诉求。 镜像发布为市场镜像的前提条件如下: 已有创建成功的系统盘镜像 数据盘镜像和整机镜像不支持在华为云云商店发布。 账号必须为企业实名认证方式 必须使用账号登录控制台,而非IAM用户 详细操作请参见“发布镜像类商品操作指导”。
  • 私有镜像相关操作费用 操作 计费标准 上传外部镜像文件至OBS桶 按照OBS服务的标准收取存储费用,建议及时删除不再使用的镜像文件。 使用系统盘镜像或整机镜像创建云服务器 系统盘镜像或整机镜像本身不收取费用,按照EVS服务的标准收取镜像的磁盘容量对应的云硬盘费用。 例如:使用整机镜像(包含系统盘40GB、数据盘100GB)创建云服务器时,按照系统盘和数据盘总容量收取云硬盘费用。假设云硬盘计费标准为¥0.00049/小时/GB,那么所收取的云硬盘费用为¥0.0686/小时。 说明: 通过私有镜像创建云服务器时,如果私有镜像是由市场镜像创建的云服务器创建的,则会根据华为云云商店价格收取镜像费用。 区域内复制系统盘镜像、数据盘镜像 复制后的镜像存储在OBS桶中,免费使用。 跨区域复制系统盘镜像、数据盘镜像 按照OBS跨区域复制功能收取复制流量费用。 跨区域复制整机镜像 按照CSBS或CBR跨区域复制功能收取复制流量费用。 复制后的镜像关联的备份按照CSBS或CBR服务的标准收取存储费用。 导出镜像 导出的镜像会按照所占用的OBS存储空间收取费用。
  • 不同镜像类型的费用 镜像类型 费用 公共镜像 银河麒麟(KylinOS)、统信(UnionTechOS)、麒麟信安(Kylinsec)、SUSE、SUSESAP收费,其余公共镜像免费。 说明: Windows操作系统为市场镜像,该服务由第三方提供。为方便用户选用,在公共镜像中提供入口。具体收费以镜像供应商提供的信息为准。 私有镜像 创建系统盘镜像、数据盘镜像或ISO镜像:免费。 系统盘镜像、数据盘镜像或ISO镜像存储在OBS桶中,但并非用户的私有桶,对用户不可见,镜像的管理维护必须通过镜像服务来实现。目前这部分存储免费供用户使用。 创建整机镜像:涉及的费用为云服务器备份或云备份的存储费用。 使用云服务器备份创建整机镜像,收取镜像关联的云服务器备份费用;使用云备份创建整机镜像,收取镜像关联的云备份费用。 共享镜像 来源于他人共享的系统盘镜像、数据盘镜像:免费。 来源于他人共享的整机镜像:涉及云备份存储费用。 说明: 仅云备份创建的整机镜像支持共享。 市场镜像 以镜像供应商提供的信息为准。
  • 步骤4:执行变更流水线 代码更新完成后,即可通过变更流水线执行变更。 在微服务变更列表页面,单击变更名称,进入“变更详情”页面。 单击右上角“提交发布”,弹出“提交发布”确认框,提示是否确认将变更提交至变更流水线。 图1 提交发布 单击“确定”,完成变更提交,页面跳转至对应变更流水线发布列表页面。 单击右上角“执行”,弹出“执行配置”弹窗,选择刚提交的变更,其他配置保持默认。 图2 执行配置 单击“执行”,启动变更流程。 微服务变更流水线在运行过程中,会自动增加“合并集成分支”和“合并主干”阶段,并将本次变更关联的特性分支合并到该集成分支上。 代码检查、构建任务执行成功后,系统自动进入“合并主干”阶段,并弹出“手动确认”对话框。 图3 执行流水线 单击“继续执行”,“合并主干”阶段执行完成后,系统将自动完成以下事项。 将本次发布的变更状态更新为“已发布”。 将本次发布的变更关联的工作项状态更新为“已关闭”。 将本次发布使用的集成分支代码内容合并到微服务默认分支,实现代码自动合并。 至此,即完成了一次基本的微服务变更发布流程。 若变更流水线执行失败,可根据报错提示排查失败原因,详情可参考常见问题。
  • 准备工作 已开通并授权使用CodeArts Pipeline。 新建项目(选择“Scrum”模板,命名为“Project_Test”),并在项目下新建工作项(以修复一个BUG单为例,命名为“BUGFIX”)。 新建代码仓库(选择“Java Maven Demo”模板,命名为“Repo_Test”)。 新建CodeArts Repo HTTPS服务扩展点(命名为“HttpsEndpoint01”)。
  • 步骤3:新建变更流水线 在微服务列表页面,单击微服务名称,进入微服务“概览”页面。 切换到“流水线”页签,进入微服务流水线列表页面。 单击“新建流水线”,进入“新建流水线” 页面,配置以下信息。 表4 新建变更流水线 参数项 说明 名称 变更流水线的名称,输入“Pipeline-Test”。 所属项目 变更流水线所在的项目,不可更改。 流水线源 变更流水线关联的源码类型,自动和微服务保持一致。 代码仓 变更流水线关联的源码仓库,自动和微服务保持一致。 默认分支 默认使用的分支,自动和微服务保持一致。 Repo HTTPS授权 打开“基于变更触发”后需配置“Repo HTTPS授权”,配置授权扩展点以提升代码仓操作权限。选择准备工作中已创建的授权扩展点“HttpsEndpoint01”。 别名 仓库别名,设置别名后可生成仓库对应的系统参数,这里不设置。 基于变更触发 打开“基于变更触发”,将当前流水线设置为微服务变更流水线。 描述 该参数为非必填。对变更流水线的介绍说明,长度不超过1024个字符。 单击“下一步”,选择“Maven构建”模板,自动生成阶段和任务,使用默认配置即可。 单击“保存”,完成微服务变更流水线的创建。
  • 方案概述 CodeArts Pipeline为企业提供了一种微服务模型,将企业大军团的作战方式转变为小团队精英作战方式,支持每个微服务独立进行开发、验证、部署及上线发布,缩短需求发布周期。同时支持企业按照业务功能组织团队,优化管理模型,使运作更精细化,有效提升团队运作效率。 在微服务中,用户可以创建流水线资源,并将其设置为变更流水线,用于与微服务下变更资源进行联动,通过变更流水线发布一个或多个变更来实现项目的快速交付。
  • 步骤2:新建微服务变更 重新进入微服务“概览”页面。 切换到“变更”页签,进入微服务变更列表页面。 单击“新建变更”,进入“新建变更” 页面,配置以下信息。 表3 新建变更 参数项 说明 变更标题 变更的名称,输入“fix-a-bug”。 代码仓 变更关联的源码仓库,自动和微服务保持一致。 代码分支 变更新需求的开发分支,变更通过流水线发布成功后,会将代码分支自动合并至微服务的默认分支。选择“从默认分支拉取新分支”并输入分支名称“bugfix”。 关联工作项 变更关联的工作项,选择准备工作中已创建的工作项“BUGFIX”。 单击“确定”,完成变更的创建。 变更创建完成后,进入代码开发阶段,系统基于微服务默认分支自动创建出本次变更的特性分支,开发人员可以基于该特性分支进行代码开发,问题修复后,模拟向该分支提交代码。向分支提交代码请参考上传代码文件到Repo。
  • 操作流程 本文以版本号参数为例,介绍如何将流水线参数传递给编译构建任务和部署应用,基本操作流程如下: 表1 操作流程说明 流程 说明 新建编译构建任务 新建编译构建任务,新增版本号参数,并在构建步骤引用该参数。 新建部署应用 新建部署任务,新增软件包参数,并在部署步骤引用该参数。 新建并执行流水线 新建流水线,新增版本号参数,并在流水线上添加编译构建任务及部署应用。 在编译构建任务的版本号参数引用流水线版本号参数。 在部署应用软件包参数引用流水线版本号参数。 查看编译构建和部署结果 分别查看编译构建结果和部署结果。 编译构建包版本号为流水线传递的动态参数。 部署任务成功获取软件包。
  • 操作流程 本文基于流水线准出条件-Check代码检查规则策略,通过添加代码检查任务所在阶段的准出条件,对代码检查任务的检查结果进行自动化校验,只有检查结果满足准出条件,才可以进入下一个阶段。 图1 操作流程示意图 基本操作流程如下: 表1 操作流程说明 流程 说明 计费说明 新建规则并配置阈值 新建一个代码检查类型规则,基于代码检查插件的输出结果,设置比较关系和阈值条件,供策略使用,作为准出条件的判断依据。 需升级CodeArts套餐至基础版才可使用,开通套餐可参考CodeArts计费模式概述。 新建策略并添加规则 新建一个策略,并添加如上代码检查类型规则。 需升级CodeArts套餐至基础版才可使用,开通套餐可参考CodeArts计费模式概述。 配置流水线 在流水线阶段准出条件添加如上策略,根据设置的规则条件,来控制流水线执行。 不涉及计费。 执行流水线验证准出条件 执行流水线,验证准出条件拦截结果。 代码检查插件满足规则条件,通过准出条件校验,流水线继续执行。 代码检查插件如果不满足规则条件,没有通过准出条件校验,流水线终止执行。 不涉及计费。
  • 准备工作 已开通并授权使用CodeArts Pipeline。 新建项目(选择“Scrum”模板,命名为“Project_Test”)。 新建代码仓库(选择“Java Maven Demo”模板,命名为“Repo_Test”)。 新建代码仓库时会自动创建与代码仓库同名的代码检查任务,将代码检查任务名称修改为“CheckTask01”,操作方法请参考创建代码检查任务。 基于“Repo_Test”仓库新建构建任务(选择“Maven”模板,命名为“BuildTask01”)。 基于已创建的代码仓库新建流水线(选择空模板,命名为“Pipeline-Test”)。
  • 步骤2:新建策略并添加规则 策略实行分层管理,可分为租户级策略和项目级策略。其中,租户级策略可以应用到当前租户下所有项目的流水线,项目级策略可以应用到当前项目下所有流水线。本节以租户级策略为例进行介绍。 单击左侧导航栏“策略”,进入策略管理页面。 租户级策略中默认存在一条“系统策略”,用户可查看和使用该策略,但不能进行编辑和删除。 单击“新建策略”,进入“新建策略”页面,输入策略名称,勾选步骤1中新建好的规则。 图3 新建策略 单击“确定”,完成策略创建。
  • 方案概述 传统软件质量保障以人工验收测试为主,效率低。当前软件能力难以支持业务需要,大量测试验收需要人工手动进行,自动化覆盖率低,且需要人工筛查识别满足验收条件的版本进行后续发布等处理流程,整体测试效率低下。 CodeArts Pipeline提供统一的准出条件管理能力,通过配置规则和策略,实现阶段准出校验,并最终控制流水线的执行。用户根据实际需要将策略资源应用到流水线作为准出条件,帮助高效管理项目,保障产品高质量交付。 通过流水线准出条件-Check代码检查规则策略自动化看护,拦截70%+问题,提高测试效率的同时,提高软件质量。
  • CodeArts Pipeline最佳实践汇总 本文汇总了基于流水线(CodeArts Pipeline)常见应用场景的操作实践,为每个实践提供详细的方案描述和操作指导,助力用户完成CI/CD持续交付。 表1 CodeArts Pipeline最佳实践一览表 实践 描述 通过微服务变更流水线修复项目BUG并快速发布 该解决方案介绍如何通过微服务变更流水线模拟修复项目下的一个BUG,并快速发布。 配置准出条件并对代码检查结果进行校验 该解决方案基于流水线准出条件-CodeArts Check代码检查规则策略,通过添加代码检查任务所在阶段的准出条件,对代码检查任务的检查结果进行自动化校验,只有检查结果满足准出条件,才可以进入下一个阶段。 通过流水线参数串联编译构建服务和部署服务 该解决方案以版本号参数为例,介绍如何将流水线参数传递给CodeArts Build任务和CodeArts Deploy应用。 通过流水线自动为代码仓库创建标签 该解决方案以通过流水线自动为代码仓库创建标签为例,介绍流水线上下文在流水线任务间的传递过程。 基于Kubernetes原生Service的场景完成微服务蓝绿发布 该解决方案介绍在不占用集群额外资源安装插件的情况下,基于Kubernetes原生Service的场景完成微服务蓝绿发布。 HE2E DevOps实践之配置流水线 该解决方案以“DevOps全流程示例项目”为例,介绍如何将代码检查任务、构建任务和部署任务串联起来,实现持续交付。
共100000条
提示

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