Cloud Bursting解决方案,Serverless容器降本增效极致体验

本文主要是介绍Cloud Bursting解决方案,Serverless容器降本增效极致体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文分享自华为云社区《DTSE Tech Talk | 第42期:Cloud Bursting解决方案,Serverless容器降本增效极致体验》,作者:华为云社区精选。

线下IDC自建K8s集群容量无法满足业务峰值诉求?IDC基础设施扩容流程慢,一次性投入大,管理维护成本高?在《云原生Bursting,如何助力企业降本增效》的主题直播中,华为云云原生 DTSE 技术布道师刘雨青,聚焦华为云Serverless容器服务CCI提供的云原生Cloud Bursting解决方案,结合典型场景案例及实操演示,帮助企业和用户快速构建降本增效方案。

什么是Cloud Bursting

Cloud Bursting(云爆发)是一种在本地基础设施到达峰值容量时使用云计算资源的配置方法。当企业内部数据中心的计算资源不足时,他们会将额外的工作负载突增到外部第三方云服务。Cloud Bursting是一种方便而经济高效的方式,可为具有不同需求模式和周期性需求峰值的工作负载提供支持。

cke_120.png

通过Cloud Bursting,云消费者可以执行以下操作:

  • 高效使用本地资源
  • 减少对本地基础设施的进一步投资
  • 享受公有云带来的规模和灵活性
  • 避免因业务激增而导致业务关键型应用程序服务中断

Cloud Bursting在云原生场景下新实现

Gartner预测,2025年,基于云原生平台的数字化业务比例将达到95%。云原生技术持续发展且市场占比不断提高, Serverless容器成为云原生2.0时代企业上云新的选择。

Serverless即通过容器来运行一个应用,且基于Serverless架构,我们无需为基础设施维护做管理,当前Serverless容器的采用规模也在逐渐增高,使用公有云Serverless容器服务可以有效降低运维成本和减少资源浪费。

华为云Serverless容器服务CCI ( Cloud Container Instance)是基于Serverless架构的容器服务。它具有极致弹性、随取随用、安全隔离、大规模多元算力、低成本等一系列特点。CCI服务是作为云原生Cloud Bursting场景下的资源提供者。云原生Bursting解决方案主要有三种接入方式——客户IDC接入、华为云容器集群接入、Console/API接入。

客户IDC接入

客户IDC场景下,即用户在自己的线下IDC中,拥有自建的K8s集群或者已使用类似华为云CCE 敏捷版服务,它托管了一套K8s集群,通过安装CCI提供的弹性套件,将自己的IDC业务弹性到云上的CCI。

华为云容器集群接入

用户通过华为云提供的CCE/ CCE Turbo,可以一键式创建K8s集群,但用户还需要自行管理Node节点。安装弹性套件后,用户可以将CCE内的高峰业务,弹性到CCI,做一个灵活的配合——用户可以将常用业务运行在集群上,高峰场景业务将它弹性到CCI。

Console/API接入

正常的接口调用,用户通过Console/API接入,进行业务下发。这种场景比较使用一些当前内部未使用K8s服务的企业,但内部具备自有的调度平台,虚机和容器同时使用,这种状态下,我们建议其可以采用这种方式。

云原生Bursting关键能力解析

云原生Bursting重要插件Virtual Kubelet

Virtual Kubelet是基于社区Virtual Kubelet开源项目开发的插件,作为一种虚拟的Kubelet用来连接Kubernetes集群和其他平台的API,主要场景是将K8s集群内业务弹性扩展到Serverless容器平台(如CCI等)。

社区VK基础能力:

  • 管理VK-Node的生命周期
  • 管理调度到VK-Node Pod的生命周期
  • 提供节点级API(Pod Exec、Logs等)

CCI增强型VK扩展能力:

  • Pod间网络互通、Service互通
  • 支持挂载存储
  • 智能校验、智能调度、智能屏蔽弹性资源池
  • 云上日志、监控打通
  • 环境一致性优化(DNS解析、Hostname、同步Event等)
  • 大规模、可靠性增强

cke_121.png

灵活的的调度控制策略

提供容器组(Pod)级别弹性控制能力

工作负载中添加virtual-kubelet.io/burst-to-cci标签,进行弹性控制,支持如下配置能力:

  • auto:根据用户集群内调度器实际打分结果自动决定是否弹性至CCI,其中在TaintToleration算法上会优先选择调度到CCE节点
  • localPrefer:集群资源不足时,将Pod部署到CCI
  • enforce:强制调度至CCI
  • off:不调度至CCI

cke_122.png

使用Scheduler Profile对象管理弹性数量和缩容优先级

cke_123.png

容器镜像线下线上统一管理

提供统一的镜像管理能力,简化Bursting过程镜像管理。

  • 默认对接华为云SWR仓库,支持SWR企业仓库
  • 提供工具一键式同步存量镜像到华为云SWR / SWR企业仓库
  • 提供工具支持新增镜像的增量、定时同步华为云
  • 支持直接访问自建harbor、云厂商企业仓库
  • 支持通过镜像快照能力提升容器镜像下载性能,单镜像5s内下载
  • Bursting弹性套件支持弹性过程中地址替换,业务配置零改造

基于Bursting套件,定义正则表达,替换pod yaml中镜像地址到华为云SWR。弹性过程业务无感,无需处理配置差异

自动匹配华为云仓库认证凭据,无需业务适配

cke_124.png

全局的一致体验

提供全局业务统一入口

  • Pod、ConfigMap、Service和Secret等资源统一从原K8s集群下发
  • Pod依赖项增量同步,避免全量同步造成的带宽压力
  • 支持K8s集群容器实例与弹性至CCI实例通过Service灵活互访

提供统一运维管理

  • CCI Pod提供普罗标准监控接口,支持对接客户普罗监控平台
  • CCI Pod内置fluent-bit插件,支持上传业务日志至kafka
  • Virtual Kubelet根据用户Pod变化上报event等信息回传用户集群

cke_125.png

华为云开发者联盟

,赞3

云原生Bursting客户案例

基于Serverless容器打造Cloud Bursting灵活上云新体验

Q公司是全球最大的中文在线旅行网站,为消费者提供机票、酒店、会场、度假产品的实时搜索,并提供旅游产品团购以及其他旅游信息服务,为旅游行业合作伙伴提供在线技术、移动技术解决方案。

客户核心诉求

受前期疫情等影响,客户减少IDC的硬件资源投资,改用云上资源,以降本增效。客户业务已经容器化,并在线下IDC中使用Kubernetes进行容器编排,希望减少或避免应用改造。

方案价值

打通IDC和华为云容器CCI,实现IDC资源在公有云上弹性伸缩,云上资源按需使用,按秒计费,成本节省30+%。云上实例秒级弹性扩缩容,构筑基础设施层支撑上层业务流量变化的动态响应能力和稳定性。通过华为云提供的Virtual Kubelet组件完成从IDC的K8S集群到云上Serverless容器对接,无需客户二次开发,云上/IDC体验一致。

cke_126.png

基于云原生Bursting打造开放、高效的云原生大数据平台

Z公司拥有2.3亿职场人用户,累计合作企业数达616万家。依托强大的数据实力,颠覆传统招聘模式,建设开放职岗生态系统,重塑人力资源市场招聘服务标准。凭借大数据和AI技术打造开放的人力资本生态,让人才和机会更精准高效的建立连接,为生态内的合作伙伴创造更多价值。

客户核心诉求 

  • 春招秋招及日常活动,算力流量上浮几倍,无法提前预测,需实时弹性
  • 未来计划与业务应用、算法业务等统一资源池和技术栈,混合部署;Yarn调度无法按部门按业务统计费用,预算申请与资源分配难。
  • 原有大数据集群CPU、内存及硬盘等资源使用率低,但资源仍不足,节点弹性颗粒度大,资源浪费严重。

方案价值

  • 降本增效:改造后资源按需使用,CCE Turbo少量节点部署控制面,所有业务均弹性CCI,较之前的成本减低20%。利用云上高性能弹性资源,报表任务执行周期缩短一半,实时计算性能提高数倍。
  • 统一平台:将Flink on K8s实践和经验拓展到Spark领域,构建出高效低成本云原生大数据平台,为更多人才和机会提供更高效连接,为企业提供更高价值的数据服务。
  • 极致弹性助力头部社交公司轻松应对突发流量洪峰

W公司是互联网行业的重点和标杆,日活2.55亿、月活5.93亿,突发业务峰值流量高(如各种明星事件、春晚等),需要借助公有云实现快速弹性扩容能力。

客户核心诉求

  • IDC资源不足,应对突发事件难以支撑流量洪峰;
  • 流量预警后,弹性伸缩效率低下,未及时扩容导致业务中断后难以快速恢复,直到流量洪峰退去;
  • 远高于日常流量需求,高规格部署,资源成本造成巨大浪费。

方案价值

日峰伸缩,每日业务高峰触发扩容,按需申请资源,按需计费,节省资源成本30%+;热点事件平稳运行,规模虚机+容器实例扩容运行业务,30秒扩容2.4万核,帮助W公司应对50+次热点事件突发流量。

更多华为云Serverless容器服务CCI以及量身定制Cloud Bursting解决方案,欢迎访问华为云官网:

  • 产品页:云容器实例 CCI- 计算 - 产品-华为云
  • 帮助中心:成长地图_云容器实例 CCI_华为云

点击关注,第一时间了解华为云新鲜技术~

这篇关于Cloud Bursting解决方案,Serverless容器降本增效极致体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/223663

相关文章

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决

如何将Tomcat容器替换为Jetty容器

《如何将Tomcat容器替换为Jetty容器》:本文主要介绍如何将Tomcat容器替换为Jetty容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat容器替换为Jetty容器修改Maven依赖配置文件调整(可选)重新构建和运行总结Tomcat容器替

找不到Anaconda prompt终端的原因分析及解决方案

《找不到Anacondaprompt终端的原因分析及解决方案》因为anaconda还没有初始化,在安装anaconda的过程中,有一行是否要添加anaconda到菜单目录中,由于没有勾选,导致没有菜... 目录问题原因问http://www.chinasem.cn题解决安装了 Anaconda 却找不到 An

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

java常见报错及解决方案总结

《java常见报错及解决方案总结》:本文主要介绍Java编程中常见错误类型及示例,包括语法错误、空指针异常、数组下标越界、类型转换异常、文件未找到异常、除以零异常、非法线程操作异常、方法未定义异常... 目录1. 语法错误 (Syntax Errors)示例 1:解决方案:2. 空指针异常 (NullPoi

SpringCloud负载均衡spring-cloud-starter-loadbalancer解读

《SpringCloud负载均衡spring-cloud-starter-loadbalancer解读》:本文主要介绍SpringCloud负载均衡spring-cloud-starter-loa... 目录简述主要特点使用负载均衡算法1. 轮询负载均衡策略(Round Robin)2. 随机负载均衡策略(

C++从序列容器中删除元素的四种方法

《C++从序列容器中删除元素的四种方法》删除元素的方法在序列容器和关联容器之间是非常不同的,在序列容器中,vector和string是最常用的,但这里也会介绍deque和list以供全面了解,尽管在一... 目录一、简介二、移除给定位置的元素三、移除与某个值相等的元素3.1、序列容器vector、deque

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa

使用DrissionPage控制360浏览器的完美解决方案

《使用DrissionPage控制360浏览器的完美解决方案》在网页自动化领域,经常遇到需要保持登录状态、保留Cookie等场景,今天要分享的方案可以完美解决这个问题:使用DrissionPage直接... 目录完整代码引言为什么要使用已有用户数据?核心代码实现1. 导入必要模块2. 关键配置(重点!)3.