Rainbond是什么?
Rainbond 是一款基于 Kubernetes 的云原生应用管理平台, 100% 开源,致力于将复杂的容器编排与应用管理能力转化为简单易 用的开发运维体验。无需深入学习 Kubernetes 底层知识,即可通过图形化界面与标准化流程,实现应用的全生命周期管理,适用于企业快速构建云原生应用平台,降低技术门槛与落地成本。
为什么选择Rainbond?
1.使用简单
Rainbond
遵循 以应用为中心 的设计理念,统一封装容器、Kubernetes和底层基础设施相关技术,让使用者专注于业务本身, 避免在业务以外技术上花费大量学习和管理精力。同时,Rainbond 深度整合应用开发、微服务架构、应用交付、应用运维、资源管理,管理高度自动化,实现统一管理所有应用、所有基础设施和所有IT流程。
2.一步将传统应用变成云原生应用
Rainbond 通过“无侵入”技术,让传统应用不需要改动或少量改动就能快速变成云原生应用。 传统应用转成成云原生应用的方式:
- 有源代码和软件包的应用,平台自动识别开发语言类型和包类型,不改变开发者习惯,代码直接编译、构建成支持云原生特性的应用。
- 对于想实现微服务架构的传统应用,Rainbond提供Service Mesh 微服务架构,应用不改代码就能变成微服务架构。
- 传统应用想要扩展运维和治理功能,Rainbond提供“无侵入”的插件,按需加载插件,开启运维和服务治理能力。
3.实现数字化能力积累和复用
Rainbond能将企业内部各种数字化能力一键发布成组件,并具备组件安装使用、组件编排、组件版本管理、组件升级和持续迭代等完整的管理流程,将企业内部可复用的能力积累到组件库,既避免重复建设,还能将这些组件变成数字资产,为企业创新提供动力。
4.解决2B行业的交付问题,实现各种交付流程自动化
Rainbond提供企业应用的业务集成、多云交付、私有交付、SaaS交付、离线交付、个性化交付、应用市场等能力,将交付过程最大限度自动化,提高企业应用交付效率,降低交付成本。
与其他产品差异
Rainbond | Rancher | KubeSphere | |
---|---|---|---|
核心定位 | 应用级PaaS,应用抽象与交付,无需学习 Kubernetes 的容器平台 | Kubernetes管理平台,多集群管理与运维 | 分布式操作系统,全栈容器化解决方案 |
面向用户 | 开发者、应用运维人员、企业IT人员 (尤其是不熟悉K8s的团队) | K8s管理员、平台运维团队 | K8s管理员、DevOps工程师、有K8s经验的开发者 |
与K8s关系 | 高度抽象K8s,用户无需感知K8s细节;可纳管已有K8s或一键安装K8s(可跑在Rancher之上) | 管理和编排K8s集群 (有自己的发行版本RKE和K3s) | K8s之上的扩展各种能力 快速安装K8s集群,也可纳管其他K8s集群 |
核心价值 | 极简应用管理:源码/软件包/镜像直接部署,应用级运维 软件资产化:应用模版化,一键交付与复用 业务连续性:无感知升级、回滚 低门槛:无需K8s经验 | 多集群统一管理:跨云、跨数据中心 简化K8s运维:监控、告警、日志、安全 生态整合:丰富的应用商店 (Helm) | 全栈能力:整合DevOps、服务网格、可观测等工具 一致的用户体验:友好的UI 即插即用架构:灵活扩展 |
学习曲线 | 低:专注于应用本身,模版扩展能力 | 中:需理解K8s集群管理 | 中高:需理解K8s及相关生态组件 |
适用场景 |
|
|
|
Rainbond的功能及架构
应用级多云管理
应用级强调以“应用”为中心,跟应用相关技术概念对外暴露,跟应用不直接相关的技术概念统一包装,底层的基础设施通过软件定义系列技术(SDN、SDS、SD-WAN、docker、LB)包装,把底层重复性工作实行实 行自动化,并在应用抽象之上支撑应用的开发、架构、交付和运维,这种抽象粒度,即能简化应用的管理,又能满足业务的灵活性。
多云管理的核心是将应用和计算资源解耦,根据场景任意组合,可以实现混合云、边缘云、应用级多云,应用的生命周期管理跟计算资源不直接相关,也就是说应用的开发可以在任何类型的计算资源上,开发好的应用可以直接安装运行在任何类型的计算资源上,还可以随时从一种云迁移到另一种云,应用不用做任何改动。
应用全生命周期管理
应用全生命周期管理包括应用开发、微服务架构、应用交付和应用运维。
- 开发阶段,Rainbond提供开箱即用的开发测试环境,对接各类源代码仓库,自动识别开发语言并编译构建和打包,通过应用市场安装各种开发工具。
- 架构阶段,支持各种常见微服务架构,业务服务可以模块化编排,通过服务拓扑可视化了解业务的结构和依赖关系,通过插件扩展各种服务治理能力。
- 交付阶段,支持应用持续交付流程,开发的应用以应用模版的形式存放到应用市场,通过应用市场对应用展示和分类,对于联网的用户,远程连接应用市场,一键安装和升级。对于离线用户,从应用市场导出离线应用包,到用户环境导入离线应用包,一键安装和运行。
- 运维阶段,把所有应用运维工作通过web界面呈现,除了基本的应用管理(启动、关闭、重启、删除)操作外,主要的运维过程都是自动化的,提供可观测性深入了解自动化的执行过程。面对大数据 和大用户的应用场景,支持业务快速伸缩,及时响应业务的变化。
能力复用和共享
组件是独立运行、可复用、可扩展、可集成的单元,支持不同的粒度大小,支持版本管理,组件可以在不同应用场景中复用,组件自身可以迭代升级,积累的组件统一存放到组件库,当有应用需要使用组件时,只需通过“拖拉拽”的方式快速拼装,当积累的组件越多,交付应用的速度也越快。
Rainbond怎么工作?
Rainbond主要有两部分组成,一个是提供Web界面的Rainbond控制台,另一个是安装在K8s集群内部的Rainbond集群管理端。
Rainbond控制台提供控制面的监控和管理,主要服务开发人员和管理人员,控制台通过Rainbond集群管理端提供的API来管理K8s集群和运行在K8s集群上的应用,并把元数据存储在本地,控制台关闭不影响K8s集群和业务服务的运行。一个控制台能监控和管理多个K8s集群。
Rainbond集群管理端通过控制台或Helm方式安装到一个或多个K8s集群内,由它对接标准K8s API,控制台的监控和管理指令通过调用K8s API实现,通过控制台部署的应用,也可以使用K8s的命令查看和管理。