基于 Rainbond 的混合云管理解决方案
内容概要:文章探讨了混合云场景中的难点、要点,以及Rainbond平台在跨云平台的混合云管理方面的解决方案。包括通过通过统一控制台对多集群中的容器进行编排和管理,实现了对混合云中应用的一致性管理。文章还介绍了Rainbond平台在混合云环境下的应用模板交付、跨云团队管理等功能,帮助用户简化跨云平台的应用交付和运维操作。
混合云的应用场景
随着云原生技术的逐渐成熟,混合云成为了企业在云原生领域中的热门话题之一。混合云的场景特点是企业应用和数据在多个云环境中进行部署和运行,包括私有云和公有云,以及不同的云服务提供商。这样的场景带来了许多挑战和机遇。
混合云的价值点主要在于:
-
灵活性和可扩展性:混合云能够让企业在不同云环境中选择最适合的部署方案,使得应用和服务的部署更加灵活和可扩展。
-
高可用性和容灾能力:混合云能够通过在多个云环境中部署应用和数据,提高系统的可用性和容灾能力,从而减少系统停机时间和数据损失。
-
降低成本:混合云能够让企业根据应用和数据的需求,在不同的云环境中选择最优惠的价格和性能比例,从而降低总体成本。
混合云管理要点
混合云场景相较于单一的私有云或公用云场景而言复杂很多,建设混合云的难点往往来自于不同供应商提供的云平台之间有很多差异,很难做到统一的管理体验。而且,多个供应商提供的云平台之间不互通,跨云进行数据同步时,需要考虑一致性与安全性。
-
跨云平台标准化:不同的云平台之间存在着各种差异,使得跨云平台的操作和管理变得复杂。标准化能够让不同平台之间的操作和管理更加一致,减少管理难度。
-
数据一致性:不同云平台之间的数据交换和同步需要确保数据一致性,以避免数据冲突和丢失。
-
安全性:在混合云场景下,不同云平台之间的数据和应用需要得到适当的安全保护,以保障数据的机密性和完整性。
-
用户管理:在混合云场景下,不同的云平台之间的用户体系并不相通。统一的混合云管理平台能够利用一套用户体系纳管多个集群中的计算资源,极大的降低了管理成本。
混合云场景功能需求
在混合云场景中,以下跨云功能通常具有很强的需求:
-
一致性操作体验:以一致性的管理体验,抹平用户使用不同云资源的操作差异。使得用户可以通过一套操作,完成应用从发布到上线到多个云环境的核心过程。一致性操作体验可以极大的弱化用户在面对多个不同云环境的不适感,使底层计算资源对用户透明。
-
用户管理:通过在统一控制台层面抽象用户体系,完成一套用户管理所有集群的效果。可以极大的降低企业管理成本。
-
跨云迁移和部署:随着企业在多个云平台上部署应用程序,跨云迁移和部署变得非常重要。能够将应用程序从一个云平台迁移到另一个云平台,无缝部署并在多云环境中进行管理,将大大提高企业的灵活性和敏捷性。
-
多云容灾:由于云服务提供商可能会遇到可用性问题,因此在混合云场景中,多云容灾变得非常重要。通过在多个云平台上部署应用程序,企业可以在一个云平台遇到问题时,快速切换到另一个云平台上运行,以保持业务的连续性。
-
跨云数据管理:在混合云场景中,跨云数据管理也是一个重要的需求。能够在多个云平台上进行数据备份和恢复,以及在不同云平台之间共享数据,将为企业提供更强的灵活性和可扩展性。
基于Rainbond 的混合云建设
Rainbond云原生应用管理平台在设计之初就考虑了如何适应混合云管理场景。在产品设计中,Rainbond可以从逻辑上划分为控制台和集群端组件两大部分,其中控制台的多云管理模块可以使其对接并管理多个集群。而集群端组件可以部署在各类 Kubernetes 集群之中,通过与 Kube-apiserver 的通信来管理 Kubernetes 集群之中的各类资源。Rainbond 集群端组件可以部署到各类 Kubernetes 集群之中,包括标准 Kubernetes 集群、 K3s 集群,也可以部署到阿里云ACK托管服务、腾讯云 TKE 服务等托管集群之中。并能够适配公有云服务商所提供的多种云服务,比如通过CSI为业务Pod分配阿里云硬盘存储。
Rainbond控制台则提供了多集群管理的唯一入口,用户不需要过多学习,就可以掌握面向不同云环境发布应用的操作步骤。而这些操作步骤是统一且易用的,不受低层不同云环境的掣肘。
团队工作空间隔离
Rainbond云原生应用管理平台在控制台层建设用户体系,这意味着用户体系与低层云环境无关,Rainbond 通过自身RBAC权限体系来决定用户可以访问哪些云环境所对应的工作空间中的资源。Rainbond 通过团队这一抽象概念来划分用户的工作空间。团队与低层云环境的对应关系可以是共享的,也可以是独享的。用户一旦加入指定的团队,即可使用团队所开通的集群。
- 共享模式:即一个团队在多个不同的集群中开通,团队一旦在多个集群中开通,就会在其中同时创建同名的命名空间。在这个团队中的用户,自然可以在不同的集群中部署自己的业务系统。不同集群的操作入口由控制台提供,非常容易理解。
- 独享模式:独享模式更好理解,即在指定的集群中开通命名空间与之对应,用户仅可以使用这个集群中的计算资源。
基于团队这一工作空间的抽象,用户可以在其中完成应用的发布与管理操作。Rainbond 提供更多能力丰富其管理能力,包括操作审计、资源限额、权限管理等能力。
多云容灾
混合云多云容灾是在混合云场景中,为了确保应用的高可用性和容灾能力而采取的一种策略。在混合云环境中,由于应用可能部署在不同的云平台上,因此需要确保即使某一云平台出现故障或不可用,应用仍能够在其他云平台上继续运行。这就需要实现混合云多云容灾,使得应用可以在不同云平台之间实现无缝切换,确保应用的高可用性和容灾能力。
Rainbond 的多云管理机制为多云容灾打造了坚实的低层框架,纵使 Rainbond 在自身高可用能力上投入甚多,但我们依然不能假定集群级别的宕机崩溃不会发生。生产环境中常借助云服务商提供的其他能力一起建设健壮的多云容灾场景。额外要引用的能力包括:
- 智能化的网络入口切换能力:Rainbond 依靠 CDN 和智能 DNS 的协作,完成网络入口智能切换的能力。在平时,外部流量可以根据地域自动切换到就近的网关进行访问。在集群级别的宕机发生时,则将有故障的集群入口下线。
- 数据同步能力:无论用户访问到哪一个集群中的服务,都会得到同样的反馈,保障这个效果的前提是多个集群中的业务数据实时同步。Rainbond 不提供数据同步能力,这一部分我们需要依靠公有云供应商提供的数据同步服务来保障。阿里云提供的 DTS 服务是其中的代表。
- 专线网络能力:多个集群之间的数据同步往往不会轻易从公共网络中穿梭。从安全性和可靠性的角度出发,我们更倾向于使用专线网络进行多个集群之间的通信,尤其是在数据跨云同步场景里。
从整体架构上考虑多云容灾是我们的首要任务。但面对数据灾难,我们能做的不仅仅是防患未然,如何进行灾难后的恢复也是非常重要的一环。Rainbond云原生管理平台提供两个层次的备份恢复能力,首先是为Rainbond平台本身进行备份,确保平台自身可以恢复;其次是针对应用的备份能力,能够将包括持久化数据在内的应用进行整体备份。机房可以被战争、火灾或者自然灾祸摧毁,但只要运维人员手里拥有备份数据,整个Rainbond混合云平台及运行其上的应用就可以被重建。
跨云应用部署
在混合云场景中,业务应用是一等公民,应用如何能够在不同的云环境中自由部署实际上是对混合云管理场景最基础的要求。在这个方面,Rainbond云原生应用管理平台以应用模板的交付流程来打通应用跨云部署的屏障。
应用交付一直是 Rainbond 致力解决的痛点问题。现代微服务动辄会将业务系统拆分成为几十个相互关联的微服务,利用传统方式将其部署到 Kubernetes 容器云环境中,不免要为数十份复杂的 Yaml 文件和容器镜像头痛不已。加之不同的云供应商所提供的云环境也不相同,更加灾难化了应用交付的体验。
前文中已经说到,Rainbond云原生应用管理平台已经在混合云场景下抹平了不同云环境的使用体验。在应用跨云交付场景中也是如此,复杂的微服务系统在 Rainbond 中被抽象成为了一个可以统一管理、统一交付的应用。通过将应用发布成为应用模板,即可在不同的集群之间完成一键安装和升级。极大的降低了软件交付成本。
写在最后
混合云管理场景是眼下云计算领域最炙手可热的话题,利用 Rainbond 云原生应用管理平台打造的混合云可以解决大多数难点与痛点。面向未来展望,Rainbond 会在混合云管理领域继续发力,围绕更复杂的场景,纳管更多种不同的云资源。比如通过与 Kubedge 的集成,将混合云解决方案扩展到边缘计算场景。
相关文章:

基于 Rainbond 的混合云管理解决方案
内容概要:文章探讨了混合云场景中的难点、要点,以及Rainbond平台在跨云平台的混合云管理方面的解决方案。包括通过通过统一控制台对多集群中的容器进行编排和管理,实现了对混合云中应用的一致性管理。文章还介绍了Rainbond平台在混合云环境下…...

加强网络风险生命周期
当今业务环境中云原生应用程序的激增帮助组织简化了运营。 企业现在可以近乎实时地监控数据、与客户互动并分享见解,帮助他们克服曾经阻碍生产力的低效率问题。 然而,使用云也极大地扩展了企业可利用的攻击面。 CSPM、CWPP、CNAPP、SAST、SCA、IaC、D…...

Java——二叉树的深度
题目链接 牛客网在线oj题——二叉树的深度 题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度,根节点的深度视为 1 。 数据范围&am…...
一般现在时(二)
一般现在时(二) 1.什么叫实义动词? 实义动词是指表示有具体意思的动词,也叫行为动词。 例如:like(喜欢) eat(吃) live(居住) have(有) run(跑)等等。 实义动词占英语中动词的绝大多数 🔖我们已学过的be动词可译为是,有时译为成为,有时则没有具体意…...
leetcode657. 机器人能否返回原点
题目描述解题思路执行结果 leetcode657. 机器人能否返回原点 题目描述 机器人能否返回原点 在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。 移动顺序由字符串 moves 表示。字符 mov…...
DAY 48 Nginx的 location与rewrite模块
[正则表达式] 常用的[Nginx] 正则表达式 $ :匹配输入字符串的结束位置* :匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll” :匹配前面的字符一次或多次。如“ol”能匹配“ol”及“oll”、“olll”,但不能匹配“…...

Linux 常用操作技巧
Linux 操作技巧大全 Linux是一种强大的操作系统,掌握各种操作技巧可以帮助我们惬意地使用它。在这篇博客中,我们将分享一些实用的Linux技巧,希望能对您有所帮助! 1. 使用Tab进行自动补全 在输入命令时,按下Tab键可…...

BetaFlight统一硬件配置文件研读之timer命令
BetaFlight统一硬件配置文件研读之timer命令 1. 源由2. 代码分析3. 实例分析4. 配置情况4.1 AFn配置查表4.2 timer4.3 timer show4.4 timer pin list 5. 参考资料 统一硬件配置文件的设计是一种非常好的设计模式,可以将硬件和软件的工作进行解耦。 1. 源由 cli命令…...

码出高效:Java开发手册笔记(java对象四种引用关系及ThreadLocal)
码出高效:Java开发手册笔记(java对象四种引用关系及ThreadLocal) 前言一、引用类型二、ThreadLocal价值三、ThreadLocal副作用 前言 “水能载舟,亦能覆舟。”用这句话来形容 ThreadLocal 最贴切不过。ThreadLocal 初衷是在线程并…...

为什么要进行数据决策?数据决策对企业而言有何重要意义?
“大数据”几乎已成为时下最时髦的词汇,不夸张地说,当今各行各业无不对大数据充满了向往,希望自己在新一轮的大数据营销中抢占先机。同时,从大数据中引申出的数据挖掘、数据分析、数据安全等数据运用技术也成为人们热捧的焦点。 …...

2. Java 异常体系
2.1 Throwable java.lang.Throwable 类是 Java 程序执行过程中发生的异常事件对应的类的根父类。 Throwable 中的常用方法: public void printStackTrace():打印异常的详细信息。 包含了异常的类型、异常的原因、异常出现的位置、在开发和调试阶段都得…...
如何学好STM32,需要哪些步骤?
学习STM32应用于项目开发需要以下步骤: 学习STM32的基本知识:包括STM32的架构、寄存器、外设等,理解STM32的工作原理和基本操作方法。 学习嵌入式系统和RTOS的基础知识:了解嵌入式系统的概念、RTOS的基本原理和使用方法ÿ…...
武忠祥老师每日一题||不定积分基础训练(四)
∫ d x 1 x 3 \int \frac{\rm dx}{1x^3} ∫1x3dx 解法一: 待定系数法: ∫ d x 1 x 3 \int \frac{dx}{1x^3} ∫1x3dx ∫ d x ( 1 x ) ( x 2 − x 1 ) \int \frac{dx}{(1x)(x^2-x1)} ∫(1x)(x2−x1)dx 1 3 ∫ ( 1 x 1 − x 2 x 2 − x …...

记一次产线打印json导致的redis连接超时
服务在中午十一点上线后,服务每分钟发出三到四次redis连接超时告警。错误信息为: Dial err:dial tcp: lookup xxxxx: i/o timeout 排查过程 先是检查redis机器的情况,redis写入并发数较大,缓存中保留了一小时大概400w条数据。red…...

FPGA入门系列12--RAM的使用
文章简介 本系列文章主要针对FPGA初学者编写,包括FPGA的模块书写、基础语法、状态机、RAM、UART、SPI、VGA、以及功能验证等。将每一个知识点作为一个章节进行讲解,旨在更快速的提升初学者在FPGA开发方面的能力,每一个章节中都有针对性的代码…...

【三十天精通Vue 3】第二十六天 Vue3 与 TypeScript 最佳实践
✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: 三十天精通 Vue 3 文章目录 引言一、为什么使用TypeScript?二、Vue 3和TypeScript…...
ffmpeg-mov-metadate不识别Bug修复
文章目录 BUG起因类似问题反馈问题解决具体步骤: 阅读过文章ffmpeg命令行解析调试流程记录movenc.c源码分析 BUG起因 在ffmpeg参数默认可识别的metadata参数如下: 具体可见libavformat/movenc.c->mov_write_udta_tag() mov_write_string_metadata(s,…...
(8)(8.6) 引导程序更新
文章目录 前言 1 我在哪里可以下载最新的引导程序? 2 使用任务规划器进行升级...

汽车电路图、原理框图、线束图、元器件布置图的识读技巧与要点
摘要: 想要读懂汽车电路图就必须把电的通路理清楚,即某条线是什么信号,该信号是输入信号、输出信号还是控制信号以及信号起什么作用,在什么条件下有信号,从哪里来,到哪里去。 一、汽车电路图的识读技巧 1.…...

( 数组和矩阵) 667. 优美的排列 II ——【Leetcode每日一题】
❓667. 优美的排列 II 难度:中等 给你两个整数 n 和 k ,请你构造一个答案列表 answer ,该列表应当包含从 1 到 n 的 n 个不同正整数,并同时满足下述条件: 假设该列表是 answer [a1, a2, a3, ... , an] ࿰…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)
引言 工欲善其事,必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后,我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集,就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...

通过MicroSip配置自己的freeswitch服务器进行调试记录
之前用docker安装的freeswitch的,启动是正常的, 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...