rainbond云原生应用管理平台部署
rainbond简介
rainbond 是 一个 开源的Kubernetes 云原生应用管理平台。
Rainbond 核心100%开源,Serverless体验,不需要懂K8s也能轻松管理容器化应用,平滑无缝过渡到K8s,是国内首个支持国产化信创、适合私有部署的一体化应用管理平台。

官方网站:https://www.rainbond.com/
项目地址:https://github.com/goodrain/rainbond
helm安装rainbond
Helm chart地址:https://github.com/goodrain/rainbond-chart
前置要求:
准备3个kubernetes节点
root@node1:~# kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
node1 Ready control-plane 33d v1.27.3 192.168.72.30 <none> Ubuntu 22.04.2 LTS 5.15.0-76-generic containerd://1.6.21
node2 Ready control-plane 33d v1.27.3 192.168.72.31 <none> Ubuntu 22.04.2 LTS 5.15.0-76-generic containerd://1.6.21
node3 Ready control-plane 33d v1.27.3 192.168.72.32 <none> Ubuntu 22.04.2 LTS 5.15.0-76-generic containerd://1.6.21
准备可用的storageclass,能够支持RWO及RWX,本示例为longhorn,能够同时支持RWO及RWX两种类型。longhorn数据存储路径/var/lib/longhorn/所在磁盘大小推荐200G.
# kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
longhorn (default) driver.longhorn.io Delete Immediate true 48m
添加Rainbond Helm 仓库
helm repo add rainbond https://openchart.goodrain.com/goodrain/rainbond
安装rainbond
helm install rainbond rainbond/rainbond-cluster \
-n rbd-system --create-namespace \
--set operator.env[0].name=CONTAINER_RUNTIME \
--set operator.env[0].value=containerd \
--set Cluster.RWX.enable=true \
--set Cluster.RWX.config.storageClassName=longhorn \
--set Cluster.RWO.enable=true \
--set Cluster.RWO.storageClassName=longhorn
参数说明:
- CONTAINER_RUNTIME ,指定容器运行时为containerd,与kubernetes集群一致
- storageClassName,指定rainbond使用的存储类
等待rainbond部署完成,查看运行的pods
root@node1:~# kubectl -n rbd-system get pods
NAME READY STATUS RESTARTS AGE
dashboard-metrics-scraper-6948f9475-lmgd4 1/1 Running 0 12m
kubernetes-dashboard-cd594bb64-mn29s 1/1 Running 0 12m
metrics-server-56df97f57-snb7t 1/1 Running 0 12m
rainbond-operator-85bb988bb8-wxwmm 1/1 Running 0 12m
rbd-api-7d7b876b74-xg4vt 1/1 Running 0 12m
rbd-app-ui-765669864b-jwrf4 1/1 Running 0 11m
rbd-chaos-nbn4d 1/1 Running 0 12m
rbd-chaos-qgxfs 1/1 Running 0 12m
rbd-db-0 2/2 Running 0 12m
rbd-etcd-0 1/1 Running 0 12m
rbd-eventlog-0 1/1 Running 0 12m
rbd-gateway-8tqkr 1/1 Running 0 12m
rbd-gateway-bpzkp 1/1 Running 0 12m
rbd-hub-868ccb6645-nfbqs 1/1 Running 0 12m
rbd-monitor-0 1/1 Running 0 12m
rbd-mq-5c766bf9cf-2rqp6 1/1 Running 0 12m
rbd-node-d7cjv 1/1 Running 0 12m
rbd-node-j57vw 1/1 Running 0 12m
rbd-node-kjfcf 1/1 Running 0 12m
rbd-resource-proxy-947f9fc96-jhkjg 1/1 Running 0 12m
rbd-webcli-6b785c49b5-74fl2 1/1 Running 0 12m
rbd-worker-7d7786c46f-mxp9t 1/1 Running 0 12m
查看service
root@node1:~# kubectl -n rbd-system get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
dashboard-metrics-scraper ClusterIP 10.96.0.201 <none> 8000/TCP 27m
kubernetes-dashboard ClusterIP 10.96.0.180 <none> 443/TCP 27m
metrics-server ClusterIP 10.96.1.195 <none> 443/TCP 27m
rbd-api-api ClusterIP 10.96.1.178 <none> 8443/TCP 26m
rbd-api-api-inner ClusterIP 10.96.2.253 <none> 8888/TCP 26m
rbd-api-healthz ClusterIP 10.96.2.237 <none> 8889/TCP 26m
rbd-api-websocket ClusterIP 10.96.1.102 <none> 6060/TCP 26m
rbd-app-ui ClusterIP 10.96.2.126 <none> 7070/TCP 25m
rbd-chaos ClusterIP 10.96.3.227 <none> 3228/TCP 26m
rbd-db-exporter ClusterIP None <none> 9104/TCP 27m
rbd-db-rw ClusterIP None <none> 3306/TCP 27m
rbd-etcd ClusterIP None <none> 2379/TCP,2380/TCP 28m
rbd-eventlog ClusterIP 10.96.1.219 <none> 6363/TCP,6362/TCP,6166/TCP 26m
rbd-hub ClusterIP 10.96.1.97 <none> 5000/TCP 28m
rbd-monitor ClusterIP 10.96.1.73 <none> 9999/TCP 27m
rbd-resource-proxy ClusterIP 10.96.0.152 <none> 80/TCP 27m
查看pvc卷
$ kubectl -n rbd-system get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
data Bound pvc-47df4ec7-db05-4205-9f6a-520a9531bde3 20Gi RWO longhorn 25m
data-rbd-monitor-0 Bound pvc-50ae8cbc-e904-42a0-ac0e-544c6ce17154 20Gi RWO longhorn 26m
rbd-api Bound pvc-7c6b7721-8056-4b93-8a9e-2f1002f78773 1Gi RWX longhorn 26m
rbd-app-ui Bound pvc-7e4f6720-e1c0-43f5-a86a-6095ed089c31 10Gi RWX longhorn 24m
rbd-chaos-cache Bound pvc-e13698a0-f4cb-4378-a272-4f2647b7fd1b 10Gi RWX longhorn 25m
rbd-cpt-grdata Bound pvc-778b8ae0-c37d-4d2e-9267-6e922505fb8a 20Gi RWX longhorn 27m
rbd-db-rbd-db-0 Bound rbd-db 1Gi RWO manual 26m
rbd-etcd-rbd-etcd-0 Bound rbd-etcd 1Gi RWO manual 27m
rbd-hub Bound pvc-b17d53bb-b382-45b8-b18b-e37da729d28f 10Gi RWX longhorn 26m
访问rainbond UI
查看网关所在节点IP
root@node1:~# kubectl -n rbd-system get pods -l name=rbd-gateway -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
rbd-gateway-8tqkr 1/1 Running 0 16h 192.168.72.32 node3 <none> <none>
rbd-gateway-bpzkp 1/1 Running 0 16h 192.168.72.31 node2 <none> <none>
浏览器访问rainbond UI,其中192.168.72.31为任意网关节点IP地址
http://192.168.72.17:7070
总览:

集群信息

相关文章:
rainbond云原生应用管理平台部署
rainbond简介 rainbond 是 一个 开源的Kubernetes 云原生应用管理平台。 Rainbond 核心100%开源,Serverless体验,不需要懂K8s也能轻松管理容器化应用,平滑无缝过渡到K8s,是国内首个支持国产化信创、适合私有部署的一体化应用管理…...
jemter连接数据json断言
文章目录 一、jmeter连接数据库1、加载JDBC驱动2、连接数据3、SQL Query的Query Type使用方法:4、Variable Name使用方法:5、Result variable name使用方法: 二、Json响应断言1、添加 》 断言 》 JSON断言2、JSON断言界面参数说明:…...
JavaFX 加载 fxml 文件
JavaFX 加载 fxml 文件主要有两种方式,第一种方式通过 FXMLLoader 类直接加载 fxml 文件,简单直接,但是有些控件目前还不知道该如何获取,所以只能显示,目前无法处理。第二种方式较为复杂,但是可以使用与 fx…...
(三)Redis——Set
SADD key value SMEMBERS 127.0.0.1:6379> SADD set aaa 1 127.0.0.1:6379> SMEMBERS set aaa 127.0.0.1:6379> SADD set aaa 0 127.0.0.1:6379> SMEMBERS set aaaSISMEMBER 判断 aaa 是否在 set 中 127.0.0.1:6379> SISMEMBER set aaa 1 127.0.0.1:6379>…...
Vue组件通信方式详解(全面版)
在Vue应用开发中,组件通信是一个重要的话题。不同的组件可能需要在不同的情况下进行数据传递和交互。Vue提供了多种方式来实现组件通信,每种方式都有其适用的场景。本文将详细介绍Vue中实现组件通信的各种方式,并为每种方式提供通俗易懂的代码…...
什么是Promise对象?它的状态有哪些?如何使用Promise处理异步操作?以及 async、await
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ Promise对象⭐ 创建Promise对象⭐ 使用Promise处理异步操作⭐ async、await⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅…...
Android 之自定义绘制一
绘制的基本要素 onDraw(Canvas) 绘制方法 Canvas 绘制工具 Paint 调整风格 粗细等 坐标系: x y ,3D 会有z轴,x 左到右,y 上至下,与数学中y颠倒 尺寸单位: 布局中 dp ,sp ,代码中 px;dp 为了适配不同的尺寸 绘制的关键: draw(Canvas )......(关键类:Paint) Paint.ANTI_A…...
vue3 计算两个表单得到第三个表单数据
<el-formref"ruleFormRef"label-width"150px"label-suffix":":rules"rules":disabled"drawerProps.isView":model"drawerProps.rowData"><el-form-item label"云平台名称" prop"cloudId&…...
Premiere Pro软件安装包分享(附安装教程)
目录 一、软件简介 二、软件下载 一、软件简介 Adobe Premiere Pro,简称PR,是Adobe公司开发的一款非线性视频编辑软件,被广泛应用于电影、电视剧、广告、纪录片、独立电影和音乐会等影视制作领域。它被公认为是行业内的标准工具,…...
springboot设置文件上传大小,默认是1mb
问题排查和解决过程 之前做了个项目,需要用到文件上传,启动项目正常,正常上传图片也正常,但这里图片刚好都小于1M,在代码配置文件里面也写了配置,限制大小为500M,想着就没问题(测试…...
Unity 之transform.LookAt() 调整一个物体的旋转,使其朝向指定的位置
文章目录 总的介绍补充(用于摄像机跟随的场景) 总的介绍 transform.LookAt 是 Unity 引擎中 Transform 组件的一个方法,用于调整一个物体的旋转,使其朝向指定的位置。通常情况下,它被用来使一个物体(如摄像…...
linux————haproxy
一、概述 HAProxy是一个免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上(CentOS、Ubuntu、Debian、OpenSUSE、Fedora、麒麟、欧拉、UOS)。 HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力,具备丰富的功能。HAProxy具…...
【80天学习完《深入理解计算机系统》】第十天 3.3 条件码寄存器【CF ZF SF OF】【set】
专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录) 文章字体风格: 红色文字表示&#…...
使用WSL修改docker文件存储位置
按照以下说明将其重新定位到其他驱动器/目录,并保留所有现有的Docker数据。 首先,右键单击Docker Desktop图标关闭Docker桌面,然后选择退出Docker桌面,然后,打开命令提示符: wsl --list -v您应该能够看到&a…...
软件设计师学习笔记6-存储系统
1.层次化存储体系 1.1层次化存储结构 局部性原理是层次化存储结构的支持 时空局部性:刚被访问的内容,立即又被访问(eg: 循环体 ) 空间局部性:刚被访问的内容,临近的空间很快被访问(eg:数组) 1.2层次化存储结构的分类 DRAM&…...
【TI毫米波雷达笔记】CCS雷达工程内存RAM指定(DATA_SECTION,以IWR6843AOP为例)
【TI毫米波雷达笔记】CCS雷达工程内存RAM指定(DATA_SECTION,以IWR6843AOP为例) 工程建立好以后会有一个cmd文件 此文件描述的是内存map /*----------------------------------------------------------------------------*/ /* r4f_linker…...
安卓移动应用开发实训室建设方案
一 、系统概述 安卓移动应用开发作为新一代信息技术的重点和促进信息消费的核心产业,已成为我国转变信息服务业的发展新热点:成为信息通信领域发展最快、市场潜力最大的业务领域。互联网尤其是移动互联网,以其巨大的信息交换能力和快速渗透能…...
我的编程学习过程
自信与经验 在毕业的时候就觉得繁体字很难。大陆都在使用简体字,戴季陶说这是在亡国,没有这么严 重。繁体字会意,简体字简单,中国文盲很多,为了加快经济建设的步伐,不得不牺牲很多 东西。为了解决温饱&…...
亚马逊云科技 云技能孵化营 初识机器学习
目录 前言 一、课程介绍 二、什么是机器学习 三、机器学习算法进阶过程 四、亚马逊云科技能给我们什么 总结 前言 近期参加了“亚马逊云科技 云技能孵化营”,该孵化营的亚马逊云科技培训与认证团队为开发者准备了云从业者的精要知识及入门课程,帮助…...
多种编程语言运行速度排名-10亿次除7求余数为0的数量
最佳方式是运行10次,取平均数,用时秒数显示3位小数。 因为第一次打开,可能CPU还没优化好,多次取平均,比较准确 第1次共10次,用时3秒,平均3秒 第2次共10次,用时4秒,平均3.…...
华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
小木的算法日记-多叉树的递归/层序遍历
🌲 从二叉树到森林:一文彻底搞懂多叉树遍历的艺术 🚀 引言 你好,未来的算法大神! 在数据结构的世界里,“树”无疑是最核心、最迷人的概念之一。我们中的大多数人都是从 二叉树 开始入门的,它…...
