使用 KubeBlocks 为 K8s 提供稳如老狗的数据库服务

news2024/12/25 0:25:31

原文链接:https://forum.laf.run/d/994

大家好!今天这篇文章主要向大家介绍 Sealos 的数据库服务。在 Sealos 上数据库后端服务由 KubeBlocks 提供,为用户的数据库应用保驾护航。无论你是在公有云还是本地环境中使用,Sealos 都能为你管理关系数据库、NoSQL、向量数据库和流数据库等各种类型的数据库。它专为生产环境而设计,提供可靠、高性能、可观测且经济高效的数据基础设施。

让我们来看看数据库应用的魅力吧:

功能介绍

创建数据库

Sealos 提供了一个简单易用的数据库前端应用,屏蔽了繁琐的命令行操作。你只需通过 Database 应用就能轻松创建各种数据库,包括 Mysql、PostgreSQL、MongoDB、Redis 等多种类型的数据库。

连接使用

进入详情页面,你可以查看数据库的详细信息,并通过一键连接功能与数据库进行交互。这让操作变得更加便捷,让你与数据库之间的互动更加高效。

高可用测试

Sealos 在提供高可用服务方面表现出色,确保在关键时刻数据库能够正常工作,不会出现故障。这为你的数据提供了额外的保障,让你放心使用。我们将通过一个小小的测试来验证数据库的高可用。

首先创建一个实例数大于 1 的数据库应用,这里我们创建一个 3 实例的 PostGreSQL:

创建完成后便可通过一键连接功能进入到数据库命令终端:

我们点击 Add a Terminal 按钮创建第二个终端应用。

同时我们查看一下当前的主节点是哪个,发现是 test-postgresql-1

现在我们要删除这个主节点,通过 kubectl delete pod test-postgresql-1 命令即可进行删除操作:

备份恢复功能

我们的数据库还提供了强大的备份恢复功能,这意味着即使出现数据丢失或损坏的情况,你也能轻松恢复到备份时的状态。无论是数据误删,还是面临灾难情况,备份都能帮助你快速恢复数据库,减少业务中断的时间。

下面也通过实例具体测试一下,我提前准备了一些数据用来测试:

进入到备份列表点击「备份」按钮进行备份操作:

这里我们演示一下手动备份的功能,备份名和备注都可以进行修改,我们直接点击「开始备份」按钮进行备份:

备份完成后通过状态可以查看备份的结果:

我们可以点击 「恢复」的图标进行恢复功能,并且等待恢复的数据库成功启动:

进入到恢复的数据库中进行数据查看,可以发现数据成功的恢复出来:

监控功能

在 Sealos 中,你不仅能轻松管理数据库,还能享受到用户友好的监控功能。你可以随时查看数据库的运行状态,并通过图表和指标监控数据库的性能表现。

实现原理

看到这里你可能会好奇 KubeBlocks 为何能在 Sealos 上提供稳定、高效的数据库服务。让我们一起深入了解它的实现原理并了解一下它的高可用架构以及备份恢复策略吧!

有状态服务设计

KubeBlocks 以一种灵活的方式进行数据库拓扑设计。它通过使用复制关系的 Replicated State Machine(RSM)作为核心组件,将复杂的分布式数据库拆分成无缝连接的基础组件(block)。无论是 Stateless、StatefulSet 还是 RSM,都可以轻松应用于 KubeBlocks 中。这意味着,你可以将任何数据库引擎与 KubeBlocks 结合使用,构建出更加灵活的系统架构。

高可用架构设计

KubeBlocks 实现了两种高可用算法:quorum-based 和经典主备。对于 quorum-based 类的数据库,KubeBlocks 提供了角色探测、角色校正和重建等功能,而数据库本身则负责更完整的探测、决策和切换等主体功能。对于经典主备场景,如 MySQL 和 PostgreSQL 主备,KubeBlocks 负责执行完整的探测、决策、切换、重建和角色校正等任务。此外,KubeBlocks 还采用通用的高可用架构,支持各种数据库类型,例如复制集群和分片集群,通过增加副本数量来提高可靠性和可用性,降低数据丢失的概率。

备份恢复设计

为了进一步保护数据并防止丢失或损坏,KubeBlocks 提供了备份恢复策略。备份可以用于多种情况,例如数据丢失、灾难恢复和数据迁移。在 Sealos 中,我们提供了物理备份功能,这意味着直接复制数据库的物理文件(包括数据文件和日志文件)到备份介质(如磁盘或磁带)上。物理备份具有快速恢复、数据一致性和空间效率的特点。它可以更高效地将备份文件还原到原始数据库,保持与数据库的物理状态完全一致,并且占用较少的存储空间。特别适用于大型数据库的备份和恢复需求,进一步提升 Sealos 作为生产环境的能力。

如果你对数据库服务感兴趣,我强烈推荐你尝试 Sealos 上的数据库服务。无论你是开发者、数据工程师还是系统管理员,这个稳如老狗的数据库服务都能帮助你更高效地管理和运维你的数据。让 Sealos 成为你的得力助手,让你的数据库运行如飞!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/911946.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于JavaEE的ssm公司员工信息管理系统的设计与实现

基于JavaEE的ssm公司员工信息管理系统的设计与实现043 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存…

这么深入浅出理解k8s集群控制器,能行!

1、控制器,是k8s集群的“大脑” 控制器本身对我们来说并不陌生的。我们每天使用的洗衣机、冰箱、空调等,都是依靠控制器才能正常工作 K8S集群的核心组件逻辑上可以被分为三个部分:核心组件etc数据库,对etcd进行直接操作的入口组…

科学家使用DL和其他工具预测2019年新型冠状病毒宿主和传染性

一项新的研究表明,2019年新型冠状病毒(2019-nCoV)的人与人之间的传播可能早在2019年12月中旬就开始了。这些发现与武汉市卫生健康委员会在12月底或1月初的声明相矛盾,即“没有发现2019-nCoV在人与人之间传播的重要证据”。 这项研…

Netty核心源码解析(二)--ServerBootstrap启动过程

serverbootstrap用于建立netty服务端,核心逻辑-- 设置线程池-- bossGroup和workGroup设置accept连接handler定义服务器的serversocketchannel实现设置IO读写的业务逻辑相关childHanlder绑定监听端口-- 创建serversocketchannel对象初始化serversocketchannel--添加…

【HCIP】13.BGP选路

每条BGP路由至少携带3个属性,目的影响选路。 基本概念 公认必遵:所有厂家设备都要识别的属性;发送路由时必须携带的属性公认任意:所有厂家设备都要识别的属性;发送路由时候可以携带也可以不携带可选过渡:…

iPad怎么录屏?不会录屏?一步步教你操作!

ipad作为一款受欢迎的移动设备,不仅在娱乐和办公中发挥着重要作用,还可以用于创作和分享。录屏功能作为ipad的一项重要特性,允许用户将屏幕上的活动记录成视频,以便用于演示、教学、分享等用途。可是您知道ipad怎么录屏吗&#xf…

JVS低代码中表单引擎与逻辑引擎是如何联合调用外部API的?

在企业项目中,常常出现需要给外部系统提供一个api ,让外部系统触发调用,本系统直接数据入库,那么我们来看看jvs的表单引擎与逻辑引擎联合实现这个功能,先看实现效果: 配置步骤: 一、配置列表页…

算法竞赛入门【码蹄集新手村600题】(MT1200-1220)C语言

算法竞赛入门【码蹄集新手村600题】(MT1200-1220)C语言 目录MT1201 强数MT1202 克里希那穆提数MT1203 字母矩阵MT1204 字母三角MT1205 倒三角MT1206 金字塔MT1207 倒金字塔MT1208 菱形MT1209 沙漏MT1210 弗洛伊德三角MT1211 给定数字的乘法表MT1212 乘法表MT1213 x个…

春秋云境:CVE-2021-41402(flatCore-CMS v2.0.8 RCE)

目录 一、题目 1.一句话木马: 2.命令执行木马: 一、题目 靶标介绍: flatCore-CMS v2.0.8 存在后台任意代码执行漏洞 进入题目: robots.txt目录: /acp后台: admin/12345678 “Addons”-- “Installier…

海外移动应用广告变现平台——AdMob特点

海外的移动互联网广告平台非常多,比如 Admob、Facebook Audience Network、Applovin MAX、Unity、Vungle、Mopub、Amazon、Pubmatic、Fyber等等。 根据《2020全球手游广告买量投放与变现报告》,各国Top收益广告平台(针对游戏产品&#xff09…

回归预测 | MATLAB实现SSA-RF麻雀搜索优化算法优化随机森林算法多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现SSA-RF麻雀搜索优化算法优化随机森林算法多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现SSA-RF麻雀搜索优化算法优化随机森林算法多输入单输出回归预测(多指标,多图)…

【算法日志】动态规划刷题:路径数问题(day34)

代码随想录刷题60Day 目录 前言 不同路径 不同路径(2) 前言 今天的动态规划题与昨天的题很类似&#xff0c;只不过今天的题是在二维上讨论&#xff0c;难度上略有提升。 不同路径 int uniquePaths(int m, int n) {vector<int> dp(n 1, 1);for (int i 1; i < m; …

问道管理:股票印花税是多少?印花税降低有何影响?

股票印花税&#xff0c;是指对证券商场上买卖、承继、赠与所确立的股权转让根据&#xff0c;按买卖额纳税。那么&#xff0c;我国股票印花税是多少&#xff1f;印花税下降有何影响&#xff1f;问道管理为我们预备了相关内容&#xff0c;以供参考。 股票印花税是多少&#xff1f…

初始C语言(7)——详细讲解有关初阶指针的内容

系列文章目录 第一章 “C“浒传——初识C语言&#xff08;1&#xff09;&#xff08;更适合初学者体质哦&#xff01;&#xff09; 第二章 初始C语言&#xff08;2&#xff09;——详细认识分支语句和循环语句以及他们的易错点 第三章 初阶C语言&#xff08;3&#xff09;——…

C++信息学奥赛2049:【例5.19】字符串判等

这段代码的功能是比较两个输入的字符串是否相等&#xff08;忽略大小写和空格&#xff09;&#xff0c;并输出 “YES” 或 “NO”。 解析注释后的代码如下&#xff1a; #include<bits/stdc.h> using namespace std; int main() {string arr; // 定义字符串变量arr&…

Python网络爬虫入门到实战

&#x1f482; 个人网站:【工具大全】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 网络爬虫&#xff08;We…

C++信息学奥赛1130:找第一个只出现一次的字符

这段代码的功能是找出输入字符串中第一个重复出现的字符&#xff0c;并输出该字符。 解析注释后的代码如下&#xff1a; #include<bits/stdc.h> using namespace std; int main() {string arr;getline(cin, arr); int a0;for(int i0;i<arr.length();i){for(int j0;j…

怎么看电脑型号?5个方法,快速查看!

“弟弟快上大学了&#xff0c;想给他买一部性价比好一点的电脑&#xff0c;但是我对电脑又不太熟悉&#xff0c;请问大家怎么查看电脑型号呢&#xff1f;感谢回答&#xff01;” 每台电脑不一样&#xff0c;它的电脑型号也可能有差别。电脑型号是指一台电脑特定的标识&#xff…

在外SSH远程连接macOS服务器

文章目录 前言1. macOS打开远程登录2. 局域网内测试ssh远程3. 公网ssh远程连接macOS3.1 macOS安装配置cpolar3.2 获取ssh隧道公网地址3.3 测试公网ssh远程连接macOS 4. 配置公网固定TCP地址4.1 保留一个固定TCP端口地址4.2 配置固定TCP端口地址 5. 使用固定TCP端口地址ssh远程 …

(vue)el-table 怎么把表格列中相同的数据 合并为一行

(vue)el-table 怎么把表格列中相同的数据 合并为一行 效果&#xff1a; 文档解释&#xff1a; 写法&#xff1a; <el-table:data"tableData"size"mini"class"table-class"borderstyle"width:100%"max-height"760":span-…