在Gopher 大会上,我们做了一个K8s Operator使用情况的小调查,没想到结果竟然是这样!!!...

6月11日,Gopher大会胜利召开,每个开发者都收获满满。云猿生数据作为Gopher China本次大会的合作伙伴,也非常荣幸的参与了本次大会。

在会上,云猿生数据联合创始人&CTO,前阿里云数据库研发总监,云数据库架构师,蔡松露针对K8s上的运行数据库的话题进行了题为《KubeBlocks - A domain-driven design operator for stateful workloads》的分享。我们还面向Go语言开发者们做了一个小调研,结论很有趣。

在K8s上管理数据的现状与挑战

在K8s上运行数据是一个事实

蔡松露给大家介绍了去年DoKC(Data on Kubernetes Community)组织的一份详细的调查报告(我们本次的调研内容见下文)。报告表明,目前有94%的参与调研的组织部署了K8s,其中90%认为K8s已经准备好运行有状态服务了(stateful workload),而其中70%的公司已经在生产环境中将数据运行在K8s之上。而有状态服务中,以数据库服务是最为典型。

a21fa24743edd163a6545ee85cb0a110.png

在K8s上运行数据库真正的挑战是什么

蔡松露提到,实际上其实在K8s之上管理数据会有很多问题,诸如:

  • 数据不一致的风险

  • 标准化程度也较低

  • 易用性也不是很好

  • 管理的复杂度高

  • 与现有的平台和工具集成度不够

一般成熟的商业公司往往会使用至少5种以上的数据库产品,比如使用MySQL、Redis、MongoDB支撑在线业务,使用Kafka和Flink、Spark支持离线业务,还有训练大模型需要的向量数据库等等,多种数据库的管理对用户是一种比较大的技术挑战和成本支出。

的确,“在数据领域,K8s Operator解决问题都是比较特化的,解决的问题领域比较窄。” 如MongoDB的Operator只解决MongoDB的问题,也有的产品是没有Operator支持的,即便有也需要花时间维护,大部分只是处理了生命周期,对于备份恢复等功能的支持也不到位,并且也未必好用.

df56f78def77c2ce0bbf086b8ea410a7.png

很多开发工程师可能每天花三四个小时去处理数据库的问题,耽误真正产生价值的业务。

e2274e244773a3938c6014a7b7db5b91.png

KubeBlocks——一个有趣的开源小项目

蔡松露表示,“我们做了一个比较有趣的尝试,开源了一个小项目,叫KubeBlocks。希望基于我们在数据库领域摸爬滚打了十几年的经验,在 K8s上去把这个问题给彻底解决掉,也在 K8s 的生态上填补一个空白。

  • 第一,针对大多数Operator只处理了生命周期,缺少备份、恢复监控,HA,等这些常用的功能的问题。KubeBlocks首先在这些方面把Feature补齐了。

  • 第二,有状态应用是复杂的,包含很多角色,我们对角色也进行了梳理。此外,一个分布式数据库组件都十几个,这时用K8s编排,很难搞起来。通过KubeBlocks,您也不需要担心这个问题。

  • 第三,我们抽象了两种Set,将一个高内聚的主备组,当成一个基本的集合,三节点也可以当成一个集合,一个集合可以当作一个原子来看待,也可以理解为一个个的Block了(也就是KubeBlocks产品名字里的Block的由来啦)。我们对这种依赖关系做了高度的抽象,实现了两类,一类是ReplicationSet,一类是ConsensusSet。这里面做了十几个接口,通过这种抽象,就能把一个复杂的数据库集群的操作内置化。

有了这两个基本的Block之后,就有了更大的抽象。我们可以在KubeBlocks上面的构建一个更大的集群,有的集群很复杂,它在里面既包含了这个MySQL,又包含了 etcd 等,但是在我们这个KubeBlocks里面,你依然可以用一个拓扑就把很复杂形态描述出来。

c208435ca0d8d1e40ff285eb0068fba7.png

此外,KubeBlocks还给CRD和Controller方面做了一些设计。支持Grafana监控、水平和垂直扩展,比如说我要把 PG 的实例从一主一备变成一主两备,可以用一条命令就完成操作……

KubeBlocks虽然还是个年轻的平台,但是已经稳定的运行在客户的生产系统了。KubeBlocks已经全面开源了,也希望大家到我们Github的项目中去了解一下。

3acc35cc336ed0250cd1b9faafc1b561.png

现场我们还做了一个小调研

在Gopher现场,我们也做了一个简短的小调研。这个简短的问卷调查,一共回收问卷233份。

根据调研结果,我们发现,参与调研者中,有近90%的人对K8s很了解。

3b8ce59d05f744323f14bccff2afc4a3.png

K8s的供应商,是云厂商和自建各一半。这个也符合我们的预期。

d01b176a3d572a0ad7d74fc7ae95f874.png

有很多用户在K8s上使用Operator,占了整体的70%。小猿姐更没想到使用Operator的受访者其中居然有80%多十分了解数据库的Operator,并在数据库管理中包含了Percona,Redis Operator,和MongoDB Operator。

e10dae0830a18e41080c7eba5450c896.png

再次感谢参与调研的小伙伴。他们来自以下企业。

d8827a7bd5b41426ed3bfa42c0ab0e8d.png

对了,上篇公众号,有个说抽到隔壁展台大奖的小哥哥,我们就是“隔壁展台”。

bbea5a94e3fcb9ecfbf8a2563de28def.jpeg


ApeCloud——云猿生数据有限公司

ApeCloud致力于为应用开发者和运维工程师提供经济、高效的云原生数据服务。

KubeBlocks官网:www.kubeblocks.io

GitHub地址:https://github.com/apecloud/kubeblocks

公众号:

3be8bce6aef82ce8de3b7184b519e2ce.png

想要了解Go更多内容,欢迎扫描下方👇关注公众号,回复关键词 [实战群]  ,就有机会进群和我们进行交流

4a6d4d0d7edb7372a8352c1e097703a6.png

分享、在看与点赞Go 60a3950616012d1d2713e67cd5334720.gif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值