0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何建设私有云原生Serverless平台

OSC开源社区 来源:Rainbond 2023-03-14 17:33 次阅读

随着云计算的普及,越来越多的企业开始将业务应用迁移到云上。然而,如何构建一套完整的云原生 Serverless 平台,依然是一个需要考虑的问题。

Serverless的发展趋势

云计算行业从 IaaS(基础设施即服务)到 PaaS(平台即服务),再到 Serverless(无服务器)的发展,经历了一个逐渐从底层到上层,从IT基础设施提供商到应用开发者的转移的过程。

IaaS 时代,云计算提供商主要提供基础设施服务,包括计算、存储、网络等,用户需要自己搭建运维应用。这个阶段主要面向IT运维人员和企业内部的应用开发团队。

随着 PaaS 的出现,云计算提供商开始提供更高层次的服务,包括开发框架、数据库、消息队列等,用户只需要关注应用开发,无需关心底层设施。这个阶段主要面向应用开发者和创业公司,可以大大提高开发效率和降低成本。

而 Serverless 的出现,则更进一步解放了应用开发者的手脚,将服务器管理交给云计算提供商,应用开发者只需关注业务逻辑的实现,无需关心服务器的管理和维护。Serverless的出现使得应用开发更加灵活和高效,也降低了开发和运维成本,因此受到了越来越多的关注。

总体来看,从IaaS到PaaS再到Serverless的发展,是云计算服务不断向上层抽象和自动化的过程,提高了IT基础设施和应用开发的效率,降低了成本,推动了数字化转型的进程。随着技术和市场的不断变化,未来云计算服务还将不断地向更高层次的抽象和自动化发展。

自建 Serverless 的意义与困境

建设私有化的云原生 Serverless 平台具有重要的意义和必要性。首先,相比于公共云平台,私有化的云原生 Serverless 平台可以更好地满足企业的特定需求,保障数据的安全性和隐私性,同时也能够更好地管理和控制计算资源的分配和利用。其次,随着数字化转型和云原生技术的普及,企业对于 Serverless 架构的需求也越来越大,建设私有化的 Serverless 平台可以更好地满足企业的需求,提高企业的业务效率和运营效果。

然而,建设私有化的云原生 Serverless 平台也具有一定的难点。首先,需要企业拥有一定的技术实力和人才储备,包括云计算、容器、微服务等多种技术的掌握和运用。其次,需要进行系统的架构设计和资源规划,包括容器集群的搭建、网络的配置、存储的规划等。此外,私有化的Serverless平台需要满足高可用、高性能、高安全的要求,需要进行多方面的测试和优化。最后,建设私有化的Serverless平台需要考虑成本的控制和效益的提升,需要综合考虑多种因素,包括硬件设备、软件开发和维护等成本。因此,建设私有化的云原生Serverless平台需要企业在技术、资源、人才和经济等多方面进行全面的规划和考虑,确保平台的稳定性和可持续性。

ServerLess 的特点

目前,Serverless 并没有一个业界统一的标准规范,因为 Serverless 并不是一种具体的技术或架构,而是一种基于云计算的应用运行和部署方式,这种部署方式凸显出开发人员不必关心服务器等基础设施。一般情况下,我们认为一个云原生的 Serverless 平台应该提供以下能力:

弹性伸缩:平台应该支持应用自动扩缩容,以便应对变化的负载和流量。

容器编排:平台应该支持容器编排,以方便管理应用的生命周期和资源分配。

无服务器计算:平台应该支持无服务器计算模式,以提高开发者的效率和降低成本。

自动化运维:平台应该支持自动化运维,包括自动部署、自动扩容、自动恢复等功能。

服务发现与负载均衡:平台应该支持服务发现和负载均衡,以确保应用的高可用性和稳定性。

日志监控和告警:平台应该支持日志监控和告警,以便及时发现和解决应用问题。

安全管理:平台应该支持安全管理,包括身份认证、访问控制、审计服务等功能,以确保应用的安全性和隐私性。

自动化CI/CD:平台应该支持自动化CI/CD,以便实现快速迭代和部署。

多云支持:平台应该支持多云环境,以便应用可以跨多个云平台部署和运行。

如此多的能力要求,为自建云原生 Serverless 平添了不少难度。那么是否可以选择一个开源的方案来完成这个目标呢?

基于 Rainbond 自建

Rainbond 是一款开源的云原生应用管理平台,它可以帮助用户快速构建和管理云原生应用,其很多功能特性都与 Serverless 的无服务器理念不谋而合。Rainbond 提供了一系列的工具和服务,包括应用编排、容器编排、自动化部署、监控告警、应用管理等功能,可以帮助用户实现应用的快速迭代和部署。此外,Rainbond 还支持多语言、多框架、多云环境的部署,用户可以根据自己的需要选择不同的部署方式。

8fd0b7e0-c228-11ed-bfe3-dac502259ad0.png

server-1

原生支持多云管理

Rainbond 可以架设在多种不同的云之上,原生支持多云管理。这种多云管理能力可以帮助用户抹平多种不同云计算供应商之间的差异,提供一致的应用部署、应用管理体验。无论是公有云、私有云或混合云,对用户而言都变成透明层,用户的应用可以借助Rainbond提供的能力完成跨云的快速迁移。

900e1ca2-c228-11ed-bfe3-dac502259ad0.png

简化应用部署

Rainbond 支持用户部署由不同开发语言开发而来的应用,这个过程不需要用户编写 Dockerfile,不需要了解容器镜像如何打包。被支持的语言类型包括:JavaPython、Golang、PHP、NodeJS、.NetCore以及静态Html语言。用户在操作时仅需要提供代码仓库地址,或者直接上传 Jar、War 包即可将构建任务交给 Rainbond ,后者会自动识别语言类型,并自动配置语言的构建环境与最终运行环境。构建任务完成后,应用会自动运行起来,整个过程不需要用户过多参与。

部署过程中,用户可以自己选择以哪种 Workload 类型来部署应用,Rainbond 除了支持常见的 Deployment、StatefulSet 之外,也支持部署 Job、CronJob 类型的 Workload。

弹性伸缩能力

弹性伸缩能力是 Serverless 场景中最受关注的能力之一,自动化的弹性伸缩能够提升对计算资源的利用率。用户可以借助这种能力,自动化应对业务的峰谷流量。Rainbond 能够根据 CPU/MEM 资源利用情况进行实例数量上的 1-N 自动伸缩,用户仅需要做非常简单的一次设置即可。在更高阶的场景中,Rainbond 能够旁路感知Http业务的平均响应时间、吞吐率等性能指标,并据此实现自动伸缩能力。

微服务能力

Serverless架构与传统的微服务架构类似,都是基于分布式系统的思想,将一个应用拆分成多个小的、相对独立的服务单元来进行开发、部署和管理。而微服务框架可以帮助开发人员更好地设计和开发这些服务单元,提高系统的可维护性、可扩展性和可靠性。Rainbond内置灵活高效的ServiceMesh微服务框架,能够完成跨语言、跨协议、跨架构的微服务编排,并且提供全面的微服务治理、容错机制等能力。

自动化运维

Rainbond提供完善的自动化运维能力,能够极大的解放开发人员。许多应用运维工作都将由平台来接管,包括定时数据备份、健康检测、故障自愈等。

可观测性中心

可扩展的全方位可观测性能力,提供上至应用组件,下至平台的监控视图。全局日志功能与链路追踪能力,能够帮助开发者快速定位问题。实时告警能力,则保证了每一次异常都会得到开发者的关注。

自动CI/CD

Rainbond 能够对接 Git 或 Svn 类型的代码仓库,简化用户创建应用以及配置自动化 Webhook 的流程。开发者仅需要提交一次代码,就可以触动整个CI/CD链条,自动化完成代码更新后的上线。

一键配置网络入口

用户不需要学习复杂的负载均衡配置,仅仅需要一键,就可以开启 L4/L7 的网关策略,将应用的端口对外暴露,平台将会根据要求自动生成 IP:Port 或域名形式的访问地址。

安全管理

平台中采用双因素认证方式保证登录安全,并提供基于 RBAC 的设计方案来确保对应用的权限控制。除此之外,Rainbond 提供全局的操作日志审计功能,保留用户对应用的每一次操作记录。

Rainbond 作为一个开源的云原生应用管理平台,能够帮助企业应对建设私有化的云原生 Serverless 平台的难点。首先,Rainbond 提供了丰富的组件和工具,使得企业可以轻松构建容器集群、微服务架构、CI/CD流水线等,极大地降低了技术门槛。其次,Rainbond 提供了完善的应用管理和监控机制,包括应用部署、服务编排、负载均衡等功能,大大简化了应用开发和运维的工作量,实现了应用管理的自动化和免运维。此外,Rainbond 提供了网关组件,可通过一键即可对外暴露L4/L7层服务,提高了应用的安全性和可访问性。Rainbond 还支持 Job 任务类型或 CrontabJob 定时任务类型,使得企业能够方便地进行定时任务调度。最重要的是,Rainbond 提供了 ServerMesh 微服务框架和内置的应用编排模型,帮助企业轻松实现应用拓扑的编排和管理,实现应用的快速迭代和更新。此外,Rainbond 还能够对接 Git 类型代码仓库,实现自动化 CI/CD 流程,进一步提高了开发效率和运营效果。

写在最后

通过借助 Rainbond 建设私有化的云原生 Serverless 平台,企业能够更好地应对技术难点,提高平台的稳定性和可持续性。同时,Rainbond 还提供了完善的文档和社区支持,帮助企业更好地了解和掌握相关的技术和应用。因此,借助 Rainbond 建设私有化的云原生 Serverless 平台不仅能够解决技术难点,也能够提高企业的开发效率、降低运维成本,是建设私有化 Serverless 平台的理想选择。

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    38

    文章

    6960

    浏览量

    134713
  • PaaS
    +关注

    关注

    2

    文章

    117

    浏览量

    21224
  • 私有云
    +关注

    关注

    0

    文章

    84

    浏览量

    14886
  • serverless
    +关注

    关注

    0

    文章

    60

    浏览量

    4365
  • 云原生
    +关注

    关注

    0

    文章

    203

    浏览量

    7651
收藏 人收藏

    评论

    相关推荐

    持续优化云原生体验,阿里云在Serverless容器与多云上的探索

    云原生应用平台;轻松实现多云环境下应用开发,让用户更多关注自身业务创新。不断演进的云计算如今大家已经不再质疑“是否应该采用云计算”这个命题,更多的关注点
    发表于 05-15 23:22

    开放应用模型(OAM):全球首个云原生应用标准定义与架构模型

    云原生微信公众号(ID:Alicloudnative)关注微服务、Serverless、容器、Service Mesh等
    发表于 10-23 10:06

    只需 6 步,你就可以搭建一个云原生操作系统原型

    云原生 SIG 的运作机制,并诚挚地邀请大家一起来参与龙蜥云原生 SIG 的建设。一、龙蜥社区云原生 SIG回头看我在操作系统和云原生两个领域的一些经历是非常有意义的,因为它可以让我从不同的视角
    发表于 09-15 14:01

    云原生技术将是企业落地微服务的优秀伴侣

    云原生演进了。所谓云原生,就是将微服务、DevOps的架构理念与云所提供的容器、Serverless无服务器更好的结合,提升资源的使用效率,提高研发运维效率。那么在云原生时代,微服务应该如何与云原生相辅相成呢?
    的头像 发表于 10-08 14:37 1587次阅读

    容器技术和云原生诞生的历史背景

    云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。 聊容器技术避不开
    的头像 发表于 10-26 09:57 6155次阅读
    容器技术和<b>云原生</b>诞生的历史背景

    云原生应用中的“云”指的是什么?

    云原生应用中的云指的是什么?如果应用是云原生应用,那么它专门用于跨私有云、公共云和混合云提供始终如一的开发与自动管理体验。企业采用云计算来提高应用的可扩展性与
    的头像 发表于 11-27 17:24 1670次阅读

    华为云正式提出云原生2.0的概念

    云原生产业白皮书,并提出云原生2.0的概念。
    的头像 发表于 12-07 11:51 3179次阅读

    引领云原生2.0时代,赋能新云原生企业

    云原生成为潮流。Forrester首席分析师戴鲲表示,云原生是企业数字化转型的基础,企业需要建立云原生优先的战略,构建一体化全栈
    的头像 发表于 12-11 16:04 1431次阅读

    如何更好地构建云原生应用生态,推动业界更好地落地云原生

    云原生”成为炙手可热的概念,云原生技术在制造、政务、电信、金融等垂直行业的应用占比也在快速攀升,有力地支撑了业务系统重构,越来越多的企业和开发者开始把业务与技术向云原生演进。   中国
    的头像 发表于 12-24 11:13 2175次阅读

    解读腾讯云原生 鹅厂云原生的“新路”与“历承”

    云原生是一个长期讨论的“老话题”。而在今年新基建、产业数字化的宏观背景下,云原生的应用主体开始扩张,关于这条技术路径的讨论也重新火热了起来。 云原生突然“翻红”的原因,或许在于更多
    的头像 发表于 12-28 18:10 3044次阅读

    openEuler Summit开发者峰会:中国移动磐基PssS平台释放云原生价值

    平台释放云原生价值,打造K8S云原生开发环境,满足云原生开发测试需求。
    的头像 发表于 11-10 11:35 1392次阅读
    openEuler Summit开发者峰会:中国移动磐基PssS<b>平台</b>释放<b>云原生</b>价值

    华为云中什么是云原生服务中心

    云原生服务中心(Operator Service Center,OSC)是面向服务提供商和服务使用者的云原生服务生命周期治理平台,提供大量的云原生服务,并使用自研部署引擎,支持所有服务包统一管理
    发表于 07-27 15:44 422次阅读
    华为云中什么是<b>云原生</b>服务中心

    什么是分布式云原生

    云原生应用时,感受不到地域、跨云、流量的限制,把云原生的能力带入到企业的每一个业务场景,加速千行百业拥抱云原生。 分布式云原生服务是一个分布式集群的统一管理平台,在CNCF首个多云容器编排项目Karmada的基础上,实现了云原生应用跨云跨地域统一协同
    发表于 07-27 15:52 1039次阅读

    云原生应用加速 数字化+降本增效成为共识

    云原生应用的概念由云和原生两个部分组成,云在这里指的是云平台,也就是平台即服务(Platform as a Service,PaaS);原生应用指的是专门针对云平台而设计和实现的,充分利用了云
    发表于 07-27 16:30 367次阅读

    Java与云原生的矛盾原因

    云原生时代下 Java,主要内容是云原生时代下的挑战与 Java 社区的对策。
    的头像 发表于 10-31 11:15 611次阅读