当前位置: 首页 > Linux

Rainbond5.0正式发布,支持现有Kubernetes集群的对接和管理

时间:2023-04-06 11:08:08 Linux

Rainbond5.0正式发布,支持现有Kubernetes集群的对接和管理今天很高兴的宣布Rainbondv5.0正式发布,Rainbond是一个开源企业应用云操作系统,支持企业应用开发、架构、交付、运维全流程。通过非侵入式架构,无缝对接各类企业应用,底层资源可与IaaS、虚拟机、物理服务器打通和管理。此前发布的Beta版本已被数十家企业用户安装测试。我们非常感谢社区用户提出的每一个问题。我们在5.0版本中进行了大量的优化和重构,同时也增加了一些重要的功能,使得Rainbond的社区兼容性和稳定性得到全面提升。下面介绍一下新版本的主要特性:对接已有的Kubernetes集群,升级内置的Kubernetes和Docker版本基于之前版本生产和使用中积累的经验和问题,我们对Rainbond应用进行了全面重构运行。本次重构升级了Kubernetes和Docker的版本,引入了Kubernetes的Deployment、Secret、Ingress、ConfigMap等资源,支持与已有的Kubernetes集群对接。在应用存储方面,runtime提供了分布式存储和本地存储的provider,在网络方面增加了对Flannel的支持,在服务调度方面增加了更多的调度选择机制。在服务日志方面,增加了计算节点日志收集器,完成日志收集,并与第三方日志系统对接。本次重构改进了Rainbond服务抽象,使Rainbond抽象更好地支持Kubernetes原生抽象模型,并为Rainbond5.1版本支持HelmChart源码创建应用打下基础。新应用网关在之前的版本中,我们支持基础域名绑定和四层访问支持,这些它只解决了基本的访问需求,用户现在可以通过应用网关体验到大量开箱即用的访问控制功能。应用网关是应用核心抽象的关键部分。术语网关大家都很熟悉,无论是传统的流量网关还是API网关,都是业务服务的外在壁垒。Rainbond应用网关在Openresty的基础上进行了功能扩展,其核心功能是应用访问的负载路由和安全控制。5.0版的重点是负载路由。在当前版本中,我们设计了两种路由策略管理:HTTP访问策略(L7)HTTP协议是目前最重要的业务服务协议。Rainbond支持基于域名、请求路径、请求头、Cookies等条件的路由规则,支持后端服务按权重分配。可以满足用户对服务的访问控制需求,实现A/B测试和灰度发布。TCP/UDP访问策略(L4)TCP/UDP协议工作在第四层,可以支持目前几乎所有的服务,通过IP地址和端口进行服务路由。Rainbond应用网关自动发现运行在该层的所有服务端点当前数据中心,并根据用户配置的访问策略透明工作。在后续版本中,应用网关将持续升级,带来以下特性:多种负载均衡算法、服务安全控制(插件扩展业务安全控制)、多维度监控数据、支持更多L7应用层协议gRPC等路由策略升级源码构建支持Gradle构建Rainbond提供的源码构建功能有在过去的版本中一直受到用户的好评,从5.0版本开始,会提高源码CI机制相关功能更新的优先级,在当前版本中,我们首先带来了Runtime版本的升级所有支持的语言,具体升级版本见源码支持文档Java增加Gradle编译方式支持.NetCore增加自定义编译命令功能服务增加构建源设置区console,提供各种支持语言编译环境的相关设置,后续版本会提供更丰富的设置项,方便用户灵活选择。引入对Windows应用程序的支持(Alpha)Windows应用程序仍然存在于大多数传统企业中,得益于微软的对容器化的大力支持,Windows容器技术现已商用,Windows系统是一个完全独立的系统,应用程序的编译、构建、调度和运行都独立于Linux环境,因此Windows支持的工作量巨大。在5.0版本中,我们完成了对Windows应用程序自动构建、调度和运行的支持。但在节点安装、应用源码构建等方面还不够完善。当前版本的Windows应用程序支持只是一个试用功能。丰富丰富的文档Rainbond之前的版本缺少文档,我们也认识到文档对于开源项目的重要性。随着5.0版本的发布,我们对文档的结构和内容进行了整体调整,从控制台使用、平台安装运维、技术架构等多方面完善了文档。100多项功能改进除了当前版本吸引人的功能变化外,我们还在集群(节点)管理、应用程序管理和应用程序控制台UI方面进行了100多项改进。详细功能列表1.新增应用网关(1)去掉了原有的rbd-entrancerbd-lb两个组件,新增了rbd-gateway组件(2)支持HTTP、TCP服务访问策略管理(3)HTTP策略支持域名、访问路径,请求头,Cookie访问路由控制(4)支持配置HTTPs规则,HTTP到HTTPs规则(5)支持通用域名规则(6)支持SSL证书管理(7)支持A/B测试,灰度发布控制(8)TCP策略支持基于IP和端口的访问控制(9)自定义负载均衡策略,目前支持轮询算法,后续测试版本支持一致性Hash算法,Session粘附算法(10)rbd-gateway支持集群部署,高可用和流量共享,可以在第4层高性能软件和硬件负载平衡背后工作。2.支持与已有的Kubernetes集群对接(1)完整重构应用运行时,提供以应用为中心的控制器抽象(2)将无状态服务的部署类型改为Kubernetes部署资源(3)有状态服务的本地存储和共享存储提供改为动态PV,运行时提供Provider(4)应用状态维护由集中式改为分布式,消除单点间歇性故障(5)有状态和无状态服务均提供自动滚动升级策略(6)默认Kubernetes版本升级到1.10版本,Docker版本升级到17.06版本(七)支持社区版Kubernetes集群对接3.源码构建更新版本,支持Gradle。(1)Java,PHP,Python,NodeJS,Golang.NetCore,各语言可选择Runtime版本升级(2)Java语言支持Gradle源码构建,支持War和Jar包部署(3)Dockerfile支持多阶段构建(4)支持离线环境源码持续构建(离线环境已有必要的语言包仓库)4.简化应用操作,优化控制台体验。(1)明确定义应用/服务两级抽象。(2)实时刷新应用Dashboard页面拓扑图的应用状态。(3)应用Dashboard页面增加了快速创建服务组件的流程。(4)应用Dashboard页面增加了应用级别的启动、停止、升级控件。(5)增加应用网关完整控制流程页面(已完成)。(6)服务组件支持(更新升级)操作。(7)服务组件支持源码构建配置。(8)应用安装支持先安装、配置再启动选择。5.Windows支持(5.0仅作为测试功能)(1)node组件支持windows节点部署,管理windows节点和平台服务(2)rbd-chao组件支持windows节点部署,构建windows应用(3)服务构建调度支持区分windows和linux应用程序。(4)服务运行调度,存储支持Windows节点。(5)数据中心镜像仓库升级支持Windows镜像。6、简化安装维护(1)系统安装策略由SaltStack替换为Ansible(2)新增windowsutil组件,支持将传统程序或脚本部署为windows服务(3)支持多个配置文件配置节点服务(4))支持Windows节点Serviceguard和健康检查(5)grctl多命令升级(6)内置支持安装flannelhost-gateway网络相关链接Rainbond网站githubgitee文档技术社区