方案概述
DaoCloud应用现代化多云协同解决方案(Multi-Cloud cooperation for Application Modernization)(以下简称“解决方案”、“多云方案”或“方案”)是以应用现代化方法体系为核心思想,帮助客户实现数字化转型所需的应用现代化落地,支撑客户分布式业务应用跨云跨地域统一协同治理的解决方案,包括多云集群管理、多云应用编排、多云服务网格。
该解决方案可实现多云和混合云的集中管理,支持包含华为云CCE、多个云厂商的容器云以及自建K8s集群的统一管理;帮助用户实现跨云的应用部署、发布和运维的能力;降低跨云微服务应用迁移成本、简化运维管理、提质增效;帮助用户实现基于集群资源的应用弹性扩缩,实现全局负载均衡;支持跨云跨集群东西向互通,跨云跨集群的双模微服务治理,灰度发布,流量治理可视化,丰富的应用流量路由策略;支持X86和ARM芯片架构所构建云平台的统一管理;为用户提供故障恢复的能力,解决多云应用灾备的问题;帮助组织构建更加高效、轻量、智能、开放、弹性和韧性的现代化应用。
应用场景
DaoCloud应用现代化多云协同解决方案主要应用于多云统一管理、多云多实例管理、集群一键导入、多云应用分发、应用故障切换、可观测性、对接全局管理权限等。主要场景如下:
- 场景1:多云资源与应用统一编排管理
图1 多云资源与应用统一编排管理
客户痛点:
随着企业私有云与异构公有云的集群增加,多云集群与应用管理困难的问题日益突出。- 集群繁多:面临繁琐重复的集群配置、云厂商的集群管理差异、碎片化的API访问入口等挑战。
- 业务分散:被应用在各集群的差异化配置、业务跨云访问、集群间的应用迁移等问题困扰。
- 集群的边界限制:资源调度受限于集群、应用可用性受限于集群、弹性伸缩受限于集群。
- 被云厂商绑定:缺少中立的多集群管理平台。
解决方案:
通过DaoCloud的应用现代化多云协同解决方案实现多云资源与应用统一编排管理,分布式资源协同调度能力,支持从最小单元到超大规模资源节点下的集群,和应用跨云自动弹性伸缩,实现跨地域跨服务商条件下的应用特殊化部署,帮助客户实现云成本最优解。- 多云资源统一管理:支持多云资源的一键接入,并实时同步接入的集群最新信息,获取多云资源动态,协助用户感知集群、工作负载等资源变化,实现在统一的界面下可视化管理和运维不同厂商提供的各种类型的云资源。
- 多云应用编排管理:将多个云服务集群资源抽象为多云实例,实例之间隔离工作,互不感知、互不影响;可对所有云上应用进行统一发布和运维管理,支持多维度调度策略,跨云实现应用透明互访及弹性伸缩。
- 应用一键升级:单云应用一键升级为多云应用,零迁移成本。
- 避免厂商锁定:可自由选择多个公有云厂商和私有云解决方案,避免受限于单一云厂商,达到云成本特出化的效果。
- 场景2: 多云资源编排与应用交付运维一体化
图2 多云资源编排与应用交付运维一体化
客户痛点:
- 管理复杂度高:随着企业采用多云策略,不同云平台在操作和管理上的差异性使得配置和管理的复杂度不断升级。
- 集群全生命周期管理的挑战:集群管理不仅涉及部署和运行,还包括更新、扩展、监控和最终的下线,要同时手动管理多个集群比较耗时且容易出错。
- 业务需求的复杂性和多样性带来的部署挑战:随着业务扩展和多样化,业务应用需要在不同的云平台上灵活部署,以满足各种性能、合规性和地理位置的需求。这种需求的复杂性和多样性使得跨多云环境的持续交付面临巨大挑战。
解决方案:
通过DaoCloud应用现代化多云协同解决方案提供GitOps新运维范式融合实现多云架构下的运维全生命周期的一体化与自动化。包括:
- 声明式云资源编排:云平台工程师可通过声明式代码编写云基础设施资源定义与资源编排规则定义,通过GitOps驱动编排任务的执行,实现集群全生命周期管理与Day2 Operation。
- GitOps应用交付:通过更彻底地使用代码定义整个应用的发布交付过程,结合 K8S能够利用自动交付流水线将更改应用到指定的任意多个集群中,从而解决跨云部署的一致性问题。
- 声明式应用运维:使用配置代码方式对于应用资源和应用状态的定义,通过编排引擎驱动应用运维的自动化执行。
- 场景3:多云应用服务治理
图3 多云应用服务治理
客户痛点:
应用分布式的部署在不同的异构云上,由非常多的服务组成。不同服务之间相互调用,组成复杂的调用链路,缺少有效的服务治理能力。
解决方案:
通过DaoCloud的应用现代化多云协同解决方案实现应用服务的统一治理,为多云架构下的应用提供具备高度兼容性的透明通讯与流量治理能力、双模微服务治理能力及全链路观测能力。
- 跨云应用透明与健壮通信:基于 Service Mesh 技术实现跨云跨集群流量治理能力,提供一致透明的应用层服务发现、请求路由、健康检查、以及超时、重连、限流等通讯容错管理能力。
- 双模微服务治理:支持传统微服务与新一代微服务技术融合,统一管理。
- 多云应用全链路观测:对于多云环境下的现代化微服务应用,提供完整的应用全链路观测能力和应用数据分析与可视化能力。
- 跨云应用服务认证访问控制:以 service-based 的认证与授权机制,在跨多云环境下实现统一可控的服务认证与访问控制管理。
- 场景4:跨云业务连续性:应用多活、多云容灾
图4 跨云业务连续性:应用多活、多云容灾
客户痛点:
为保障业务连续性,实现应用跨云高可用面临技术复杂性、可扩展性、可用性和弹性挑战。
解决方案:
DaoCloud的应用现代化多云协同解决方案提供应用跨云多活能力,可部署业务应用到不同区域集群,避免单个区域的故障造成应用不可用;平台的统一多云资源管理中心自动监控每个集群的健康状态,出现单个云环境故障时,可以快速自动完成跨云迁移及流量切换。
方案架构
业务架构
该方案的软件部分的业务架构如下:
- 该方案的软件部分是架构现代化中的多云协同平台,该平台的底层技术架构采用华为云产品,包括
数据服务:云搜索服务CSS、GaussDB for MySQL、GaussDB for Redis;
基础云服务:弹性云服务器ECS、企业主机安全HSS、NAT网关、弹性负载均衡ELB、弹性公网IP EIP、弹性文件服务SFS、云硬盘EVS、硬盘备份VBS。
- 该解决方案的软件部分(方案平台软件)在典型场景部署中运行的功能组件如上,包含:全局管理Global management组件、UI组件、应用工作台Workspace组件、容器管理与镜像仓库Container Management组件、服务网格与微服务引擎Service Governance组件、可观测Insight组件、多云编排Karmada Management组件、网络组件、存储Local Storage System组件以及ElasticSearch(ES)中间件(可使用云搜索服务CSS)、MySQL Database(可使用GaussDB for MySQL)中间件。
- 这些组件分别以容器形式运行,通过集群内网络交互,ES和MySQL对内部组件提供数据存储能力;与底层PaaS(华为云容器引擎CCE)通过网络组件及存储组件进行交互,网络组件通过容器标准网络接口CNI自动与CCE的网络层连接,存储组件通过容器标准存储接口CSI自动与CCE连接。
- 方案平台软件的安全、监控和高可用主要由自身提供,也可按需求结合华为云相关服务。
- 方案平台软件的用户主要为租户(运维人员、应用开发/发布人员、存储管理员、网络管理员)和管理员(全局管理员)。
- 方案平台软件对外连接客户已有公有云或私有数据中心的容器云或自建K8s集群,与这些集群的连接可通过公网或VPN专线连接。
部署架构
本部署架构使用华为云的云原生服务、数据服务及基础云服务等为解决方案提供计算、存储和网络资源,DaoCloud多云协同部分是该解决方案最终落地实施的软件平台部分,为现代化应用提供多云集群管理、多云应用编排、多云服务网格。部署架构图如下:
- 华为云服务层
- 云容器引擎CCE和弹性云服务器ECS:该解决方案的软件部分以容器形式运行在CCE集群之上,华为云容器CCE服务的底层使用华为弹性云服务ECS部署。
- NAT网关:该解决方案的软件部分的相关组件(如:多云实例、容器管理)需要和外部被纳管集群的API-Server通信,同时,这些组件可被调度到集群任意节点,因此,这些节点上都配置了NAT网关以确保对外的网络联通,也可根据实际安全需求配置安全组或更严格的互联网访问策略。
- Anti-DDos流量清洗:通过对互联网访问公网IP的业务流量进行实时监测,及时发现异常DDoS攻击流量。在不影响正常业务的前提下,根据用户配置的防护策略,清洗掉攻击流量。同时,Anti-DDoS为用户生成监控报表,清晰展示网络流量的安全状况。
- 弹性负载均衡ELB:为应对不同场景下的访问压力,该解决方案采用华为云弹性负载均衡ELB服务,将访问流量自动分发到全局集群的多个容器上,扩展平台对外的服务能力。
- 弹性公网IP EIP:在弹性负载均衡ELB、NAT网关资源上绑定EIP,使得该解决方案的内部组件可以对互联网提供服务。
- 企业主机安全HSS:集成了主机安全、容器安全和网页防篡改,旨在解决混合云、多云数据中心基础架构中服务器工作负载的独特保护要求。
- 云硬盘EVS:使用高可靠、高性能、规格丰富并且可弹性扩展的块存储服务并对运行容器提供本地数据库逻辑卷服务。
- 云搜索服务CSS:华为云ELK生态的一系列软件集合,为多云协同方案提供ELK服务。
- GaussDB for MySQL:用于存储多云协同方案的关键业务数据。
- GaussDB for Redis:用于多云协同方案的缓存数据。
- 多云协同方案平台软件层
- 软件功能:主要部署的软件功能组件包括全局管理组件、容器管理组件、服务网格组件、可观测组件、多云编排组件、镜像仓库组件、微服务引擎组件、应用工作台组件、网络组件、存储组件。以上组件以容器形式部署,计算资源、存储资源和网络连接通过CCE提供。其中,网络组件通过容器网络接口CNI自动与CCE的网络层连接,存储组件通过容器存储接口CSI自动与CCE交互,以使得可以使用底层云硬盘EVS的存储资源,并对运行容器提供本地数据库逻辑卷服务。
- 运维方式:用户和管理员通过该解决方案的平台门户登录进行使用和运维操作,方案平台软件本身可通过云容器引擎CCE提供的门户进行运维操作,可以借助方案平台软件的可观测组件实时监控应用及资源使用情况并配置告警规则及时发现运行问题。
- 安全防护:主要包括静态安全(容器镜像)和动态安全(容器运行时),方案平台软件各组件的静态安全由DaoCloud维护和保障,动态安全由云原生安全模块进行监测。方案平台软件之上的安全可以结合华为云提供的DDoS防护AAD、Web应用防火墙WAF或第三方相关服务,之下的安全(如底层运行环境安全)可以结合华为云企业主机安全服务HSS或第三方相关服务实现。
- 高可用部署:该方案平台软件的各组件基于同AZ集群内部署方式,以多副本方式分布在多节点上;使用的GaussDB for MySQL数据库服务,基于跨AZ主备部署,具有主备能力。
- 备份方案
云搜索服务CSS的备份:CSS中存放平台及平台应用容器的监控指标、链路数据、日志。为避免数据丢失,将集群的索引数据进行备份,当数据发生丢失或者想找回某一时间段数据时,可以通过恢复索引操作快速获得数据。详细内容请参考:https://support.huaweicloud.com/intl/zh-cn/usermanual-css/css_01_0033.html
GaussDB for MySQL的备份:GaussDB for MySQL中存放平台相关配置数据。定期进行全量备份和增量备份,用户可恢复数据到任意时间节点。详细内容请参考https://support.huaweicloud.com/intl/zh-cn/usermanual-gaussdbformysql/gaussdbformysql_03_0060.html
应用现代化多云协同平台的备份:平台的备份包括平台自身和应用部署信息的备份与恢复,具体操作为定期通过备份集群ETCD和通过ETCD进行恢复。
- 部署要点
- 在接入层,使用华为云ELB的负载均衡能力,用户可通过EIP从公网访问该方案的平台门户入口,对于安全高要求的场景,建议通过VPN接入;
- 在VPC内部,该方案平台不涉及客户最终业务和数据,因此应用和数据通常不划分到不同子网区域;
- 对于安全高要求的场景,可划分DMZ区,将平台门户入口前置到DMZ区,构建独立的供运维人员和平台用户专用接入的运维区。也可以通过VPN通道供平台用户和运维人员接入;
- 在对外网络安全方面,如果将该方案平台门户对外暴露,使用华为云WAF和DDos云服务进行防护;
- 该方案平台的应用资源和数据资源,通过以多副本方式分布在底层K8s集群的多个节点上具备高可用和灾备能力,即该方案平台软件自身的设计以及底层K8s集群的伸缩和调度能力实现;
- 该方案平台软件的运维运营主要通过自有能力—可观测组件实现,在极端情况下如果平台软件无法访问,应通过底层K8s集群的控制台进行运维操作;
- 该方案平台软件使用的中间件包括ElasticSearch和MySQL,使用云搜索服务CSS和云数据库GaussDB for MySQL替换;
- 该方案平台软件的数据存储借助自身存储组件提供的提供本地数据库逻辑卷能力实现,以满足高速存取的需求;
- 该方案平台软件不涉及华为云IoT和AI服务能力,使用华为云的PAAS即云容器引擎CCE服务能力;
- 该方案平台软件的身份认证、访问权限、账号管理以及加密通过内部自有能力实现,也支持基于LDAP和OIDC协议的单点登录以及通过对接身份提供商使用企业或组织已有的账号体系。
方案优势
- 效能升级
管理超过 50 万个节点和 200 万个Pod海量容器集群统一管理;集群检索性能提升 10 倍;降低企业 IT 基础设施投资成本 50% 以上。
- 第三方云中立
遵循中立的原则,客户可为不同的业务选择有特定优势的云服务商,降低对云巨头的依赖;与华为云在多云格局与自主可控市场中均无业务合作禁区。
- 解决方案独特功能
跨云故障转移、双模微服务应用统一治理、单云应用一键升级为多云应用、应用跨云迁移、应用跨云调度、高性能多集群检索。
- 多云管理技术指引
在解决方案所包含核心开源项目参与公司贡献度世界前列,具备核心代码维护能力,包括多云协同 Karmada 全球第二、服务网格 Istio全球第三(2022年度管理委员会指导席位)、 Kubernetes 近一年全球第三、自主开源多云检索Clusterpedia、自主开源多云压测工具Kwok;拥有如果干多云协同发明专利。
- 应用现代化标准指引
面向全球发布应用现代化方法体系白皮书,深度参与《应用现代化建设指南》和《应用现代化成熟度标准》编撰。
- 跨云平台一体化体验
支持纳管主流厂商及开源云原生集群,跨云统一管理配置,丰富的企业级权限管理,多云运维监控。
- 分布式资源协同
支持协同调度的节点资源超过五十万,跨云自动弹性伸缩,应用跨云故障迁移,实现不同地理位置、资源等条件下的应用特出化部署。
- 智能路由与弹性流量管理
支持跨云跨集群东西向互通,跨云跨集群的双模微服务治理,灰度发布,流量治理可视化,丰富的应用流量路由策略。