README

Go Report Card GitHub stars Rainbond version Build Status GoDoc

项目官网文档

Rainbond初识

Rainbond 是以企业云原生应用开发、架构、运维、共享、交付为核心的Kubernetes多云赋能平台, 向下结合Kubernetes云原生资源管理模式,对接管理各类传统基础设施,通过多维度的软件定义屏蔽了底层资源的差异,甚至包括CPU架构差异和操作系统差异,从而对上层提供以应用为中心的新一代基础设施; 向上定义了标准应用模型(RAM,OAM),内置ServiceMesh微服务架构框架, 提供用户基于源码/已有镜像构建服务组件的能力,编排服务组件的能力,发布共享完整应用模型的能力,交付运维业务应用的能力。

应用场景

  • 企业云原生DevOps

面向应用的DevOps开发流水线,提供从源码或简单镜像持续构建云原生应用的能力,不要求开发者具有容器化能力,面向开发者友好,对源码无侵入,业务持续发布到云端。

  • 企业微服务治理

内置ServiceMesh微服务框架,微服务治理开箱即用,传统业务上云即服务化。插件化扩展和增强微服务治理功能体现,与SpringCloud Dubbo等微服务框架协同工作,有效降低微服务技术门槛。

  • Kubernetes多云管理

Kubernetes技术复杂上手难;大量Deployment、Statefulset或Operator资源管理复杂都是直接使用Kubernetes集群的难题,Rainbond以应用为中心的资源管理模型屏蔽了Kubernetes的复杂度,Kubernetes资源交给Rainbond来编排管理。

  • 企业中台建设与应用交付

企业业务系统多,交付项目多,IT产品多,建设统一的企业业务中台,整合企业所有数字系统、通用组件库形成数字资产,内部各团队高效复用,ToB交付场景中实现最大层度的自动化,标准化与可定制相结合。

  • 国产易用的PaaS

Rainbond完成与龙芯、飞腾、麒麟操作系统等为代表的国产化计算基座的双向认证,使Rainbond具有屏蔽底层CPU架构、操作系统的差异,对用户提供统一的国产化业务应用管理平台。

主要功能特性

特性 描述
Kubernetes多云管理 平台底层基于Kubernetes,但用户无需学习和编辑复杂的yaml文件,开发者仅需要以最简单的方式构建和维护应用模型,所有Kubernetes资源由Rainbond编排创建和维护。
Service Mesh微服务架构 内置跨语言、跨协议、代码无侵入的Service Mesh微服务架构原生支持,传统应用直接变成微服务架构。同时支持常见微服务架构Spring Cloud、Dubbo等,通过插件扩展架构能力及治理功能。
源码构建 开发者无需关注底层资源,从源代码(无需Dockerfile)或已有简单镜像即可持续发布应用组件。支持常用的Java Python PHP Golang NodeJS NodeJS前端 .NetCore 等开发语言。
一体化DevOps 以应用为中心,衔接开发、测试、构建、上线、运维的一体化DevOps。
企业级应用市场 非镜像市场和服务目录,支持各类企业级应用,像手机应用一样即点即用,全流程管理(应用开发、应用发布、应用展示、应用离线导入/导出、应用安装/升级、应用运维)
自动化运维 应用自动化运维。节点自动安装、扩容、监控、容错。平台支持高可用、多数据中心管理、多租户管理。
无侵入性 Rainbond在源码构建,服务组装,服务治理,微服务框架等多个方面体现无侵入性
Serverless PaaS 以应用为核心,使用过程不需要了解服务器相关概念,简单灵活。通过对接行业应用,快速构建行业专有PaaS。
应用网关 基于HTTP、HTTPs、TCP、UDP等协议应用访问控制策略,轻松操作应用灰度发布、A/B测试。
异构服务统一管理 以第三方组件集成的方式,支持集群内外不同架构服务统一管理、监控和通信治理。
应用描述模型 以应用为中心描述应用包含的组件特性,应用特性,部署运维特性,实现复杂应用的标准化交付。

更多功能特性详见:

Rainbond功能特性说明 Rainbond开发计划

快速开始

  1. 快速安装 Rainbond 集群
  2. 创建第一个应用(服务)
  3. 观看教程视频,快速学习Rainbond
  4. 搭建 ServiceMesh 微服务架构

参与社区

Rainbond 开源社区 欢迎你在社区中查阅或贡献Rainbond的用例用法。

Rainbond 项目官网 查阅关于Rainbond的更多信息。

Gitter 在线IM与Rainbond开发者进行相关话题探讨。

添加微信,申请加入微信群,了解Rainbond更多资讯

参与贡献

我们非常欢迎你参与Rainbond社区关于平台使用经验、标准化应用、插件分享等领域的贡献和分享。

若你是正在使用Rainbond的用户,且对Rainbond有深入的了解和技术路线的认同,在你的企业内部有较大的需求,我们非常欢迎你 参与Rainbond项目开发贡献

相关项目

当前仓库为Rainbond数据中心端核心服务实现代码,项目还包括以下子项目:

License

Rainbond 遵循 LGPL-3.0 license 协议发布,详情查看LICENSELicensing

Expand ▾ Collapse ▴

Directories

Path Synopsis
api/api
api/api_routers/cloud
api/api_routers/doc
api/api_routers/license
api/api_routers/version2
api/api_routers/websocket
api/controller
api/controller/upload
api/controller/validation
api/daemon
api/db
api/discover
api/handler
api/handler/cloud
api/handler/group
api/handler/share
api/middleware
api/model
api/proxy
api/region
api/server
api/util
builder
builder/api
builder/api/controller
builder/build
builder/clean
builder/cloudos
builder/discover
builder/exector
builder/job
builder/model
builder/monitor
builder/parser
builder/parser/code
builder/parser/code/multisvc
builder/parser/compose
builder/parser/discovery
builder/parser/types
builder/sources
builder/sources/registry
cmd
cmd/api Rainbond datacenter api binary
cmd/api/option
cmd/api/server
cmd/builder
cmd/builder/option
cmd/builder/server
cmd/certutil
cmd/eventlog
cmd/eventlog/server
cmd/gateway
cmd/gateway/option
cmd/gateway/server
cmd/grctl
cmd/grctl/option
cmd/grctl/server
cmd/init-probe
cmd/init-probe/cmd
cmd/init-probe/healthy
cmd/mesh-data-panel
cmd/monitor
cmd/monitor/option
cmd/mq
cmd/mq/option
cmd/mq/server
cmd/mqcli
cmd/node
cmd/node/option
cmd/node/server
cmd/webcli
cmd/webcli/option
cmd/webcli/server
cmd/windowsutil
cmd/windowsutil/option
cmd/worker
cmd/worker/option
cmd/worker/server
db Package db is a generated GoMock package.
db/config
db/dao Package dao is a generated GoMock package.
db/errors
db/etcd
db/model
db/mysql
db/mysql/dao
db/test/fixtures
discover
discover.v2
discover.v2/config
discover/config
event Package event is a generated GoMock package.
eventlog/cluster
eventlog/cluster/connect
eventlog/cluster/discover
eventlog/cluster/distribution
eventlog/conf
eventlog/db
eventlog/entry
eventlog/entry/grpc/client
eventlog/entry/grpc/pb
eventlog/entry/grpc/server
eventlog/exit/monitor
eventlog/exit/web
eventlog/store
eventlog/test/dockerserver
eventlog/test/eventserver
eventlog/util
gateway/annotations
gateway/annotations/cookie
gateway/annotations/header
gateway/annotations/l4
gateway/annotations/parser
gateway/annotations/proxy
gateway/annotations/resolver
gateway/annotations/rewrite
gateway/annotations/upstreamhashby
gateway/annotations/wight
gateway/cluster
gateway/controller
gateway/controller/config
gateway/controller/openresty
gateway/controller/openresty/model
gateway/controller/openresty/nginxcmd
gateway/controller/openresty/template
gateway/controller/zeus
gateway/defaults
gateway/metric
gateway/metric/collectors
gateway/store
gateway/util
gateway/v1
grctl/clients
grctl/cmd
monitor
monitor/api
monitor/api/controller
monitor/callback
monitor/custom
monitor/prometheus
monitor/utils
mq/api
mq/api/controller
mq/api/grpc/pb
mq/api/grpc/server
mq/api/model
mq/api/mq
mq/client
mq/monitor
node/api
node/api/controller
node/api/model
node/api/router
node/core
node/core/config
node/core/envoy/v1
node/core/envoy/v2
node/core/service
node/core/store
node/core/worker
node/event
node/initiate
node/kubecache
node/masterserver
node/masterserver/monitor
node/masterserver/node
node/monitormessage
node/nodem
node/nodem/client
node/nodem/controller
node/nodem/docker
node/nodem/envoy
node/nodem/envoy/conver
node/nodem/gc
node/nodem/healthy
node/nodem/healthy/probe
node/nodem/info
node/nodem/logger
node/nodem/logger/streamlog
node/nodem/logger/testlog
node/nodem/monitor
node/nodem/service
node/statsd
node/statsd/exporter
node/utils
util
util/ansible
util/cert
util/constants
util/endpoint
util/etcd
util/etcd/etcdlock Package etcdlock Master election using etcd.
util/http
util/k8s
util/leader
util/license
util/log
util/prober
util/prober/probes
util/prober/types/v1
util/sync
util/watch
util/windows
util/zip
webcli/app
webcli/cmd
webcli/term
worker
worker/appm
worker/appm/controller
worker/appm/conversion
worker/appm/f
worker/appm/prober
worker/appm/store Package store is a generated GoMock package.
worker/appm/thirdparty
worker/appm/thirdparty/discovery
worker/appm/types/v1
worker/appm/volume
worker/client
worker/discover
worker/discover/model
worker/gc
worker/handle
worker/master
worker/master/podevent
worker/master/volumes/provider
worker/master/volumes/provider/lib/controller/metrics
worker/master/volumes/provider/lib/util
worker/master/volumes/statistical
worker/master/volumes/sync
worker/monitor
worker/monitor/collector
worker/server
worker/server/pb
worker/util