天津做网站最权威的公司,做学校网站素材图片素材,网站站点是什么?如何创建站点?,wordpress 导航设置本文转载自云猿生聊技术#xff08;CloudNativeDataTech#xff09;
前言
KubeBlocks#xff08;简称 KB#xff09;在最新发布的0.7版本中#xff0c;通过组件扩展#xff08;Addon#xff09;的形式新增了对OceanBase的支持功能。这一更新为企业级和非企业级用户提供…本文转载自云猿生聊技术CloudNativeDataTech
前言
KubeBlocks简称 KB在最新发布的0.7版本中通过组件扩展Addon的形式新增了对OceanBase的支持功能。这一更新为企业级和非企业级用户提供了更为便捷的方式能够在Kubernetes环境中创建和运维OceanBase数据库。
OceanBase × KubeBlocks
OceanBase是完全自主研发的分布式关系型数据库。它具备高性能、数据强一致性、高可用性等特点支持在线扩缩容并高度兼容SQL标准和主流关系型数据库并可帮助企业实现规模化降本已被1000企业应用。
KubeBlocks 是一个开源的在 K8s 上运行和管理数据基础设施的系统软件旨在帮助开发人员、SRE、平台工程师在企业中部署和维护专用的 DBPaaS并支持多种公共云和私有云环境部署。 KubeBlocks Architecture
KubeBlocks 是目前 CNCF Cloud Native LANDSCAPE 收录的唯一的开源多引擎数据 / 数据库管理系统项目。KubeBlocks 实现了对多种数据库系统的统一的抽象 具有以下特点
性能KubeBlocks 容器和云环境对 MySQL 与 PostgreSQL 数据库的内核和参数进行优化性能超过同规格 RDS。可用性KubeBlocks 支持多种数据库的高可用集群配置对 MySQL 支持 Raft 三节点复制从而实现 RPO0。可观察性KubeBlocks 从丰富的数据源采集监控指标集成了 Prometheus 堆栈并提供了富有洞察力的 Grafana 模板。此外还提供慢日志等排查工具。可扩展性KubeBlocks 对接入一个新的数据库引擎提供了良好的抽象通过组件扩展Addon机制可以快速集成并提供一致的使用体验和预期行为。
KubeBlocks 0.7 版本现已支持 30 数据库系统组件[3]。
在 KubeBlocks 社区的 0.7 版本KubeBlocks 完成了与 OceanBase 开源版的适配。正是因为 KubeBlocks 提供的一致性体验KubeBlocks 社区用户可以“0学习成本”快速掌握创建和运维 OceanBase 集群的方式。证书见后文。
轻松集成
KubeBlocks 对数据库系统的高度抽象带来的扩展性方便开发者轻松扩展一款新的数据库。细心读者已经发现了该 PR 只包含 500 行代码其中大部分是 YAML。 感谢来自 Powerfool 同学的贡献
使用 KubeBlocks 轻松管理 OceanBase 集群
准备工作
1. 安装 KubeBlocks 和 kbcli
如果这是你第一次使用 KubeBlocks请先安装 KubeBlocks 和 kbcli。
安装 kbclicurl -fsSL https://kubeblocks.io/installer/install_cli.sh | bash安装 KubeBlockskbcli kubeblocks install
更多安装方式请参考 KubeBlocks 官方文档: https://kubeblocks.io
2. 查看 OceanBase 组件版本
更新 KubeBlocks repohelm repo add kubeblocks https://apecloud.github.io/helm-chartshelm repo update kubeblocks查看最新的 OceanBase 组件版本helm search repo kubeblocks/oceanbaseNAME CHART VERSION APP VERSION DESCRIPTIONkubeblocks/oceanbase 0.7.1 4.2.0.0-100010032023083021 Unlimited scalable distributed database for dat...kubeblocks/oceanbase-cluster 0.7.1 4.2.0.0-100010032023083021 A oceanbase cluster Helm chart for KubeBlocks.
可以看到最新的 helm chart 版本为 v0.7.1可以部署OceanBase v4.2.0。
其中 kubeblocks/oceanbase 就是 OceanBase 的组件扩展定义了符合 KubeBlocks 统一抽象模型的 OceanBase 数据库拓扑包括有哪些组件如何配置和启动。
kubeblocks/oceanbase-cluster 提供了创建 OceanBase 数据库所需资源CPUMemoryDiskReplica 等的最佳实践。
KubeBlocks 0.7 版本已经集成了 30 数据库系统组件可以通过类似方式查看。完整列表请参考https://kubeblocks.io/docs/release-0.7/user_docs/overview/supported-addons 3. 安装 OceanBase 组件扩展
helm install oceanbase kubeblocks/oceanbase --version 0.7.1
该组件只需安装一次。
创建 OceanBase 集群
仅需一条命令行即可快速拉起一个 OceanBase 集群。
helm install obcluster kubeblocks/oceanbase-cluster --version 0.7.1
查看 pod可以看到一个三节点的 OceanBase 集群成功创建
kubectl get po -l app.kubernetes.io/instanceobcluster-oceanbase-clusterNAME READY STATUS RESTARTS AGEobcluster-oceanbase-cluster-ob-bundle-0 1/1 Running 0 13mobcluster-oceanbase-cluster-ob-bundle-1 1/1 Running 0 11mobcluster-oceanbase-cluster-ob-bundle-2 1/1 Running 0 9m10s
连接 OceanBase 集群
KubeBlocks 命令行工具 kbcli 提供便捷的集群运维和管理命令的同时也提供了丰富的运维操作让用户以一致的体验操作不同的数据库引擎。例如可通过 connect 命令连接到刚创建的 OceanBase 集群
kbcli cluster connect obcluster-oceanbase-cluster
即可开始你的 OceanBase 之旅。
水平扩展 OceanBase 集群
若 3 个节点已经无法满足你的业务需求可以快速扩展为 5 个节点。
kbcli cluster hscale obcluster-oceanbase-cluster --components ob-bundle --replicas 5
未来 KubeBlocks 还会和 OceanBase 深度合作完善对 OceanBase 的深度运维能力为企业级和非企业级用户提供更加便捷的数据库使用和运维体验。 参考资料
[1]KubeBlocks 官网: https://kubeblocks.io/OceanBase 官网: https://www.oceanbase.com/KubeBlocks 已支持 30 数据库系统组件: https://kubeblocks.io/docs/release-0.7/user_docs/overview/supported-addons GitHub: GitHub - oceanbase/oceanbase: OceanBase is an enterprise distributed relational database with high availability, high performance, horizontal scalability, and compatibility with SQL standards. GitHub: GitHub - apecloud/kubeblocks: KubeBlocks is an open-source control plane that runs and manages databases, message queues and other data infrastructure on K8s.