您现在的位置是:首页 >技术杂谈 >Kubernetes 部署 StarRocks 集群网站首页技术杂谈

Kubernetes 部署 StarRocks 集群

寻花之梦~~ 2023-05-12 20:06:59
简介StarRocks 是新一代极速全场景 MPP (Massively Parallel Processing) 数据库。StarRocks 的愿景是能够让用户的数据分析变得更加简单和敏捷。用户无需经过复杂的预处理,就可以用 StarRocks 来支持多种数据分析场景的极速分析。

StarRocks简介

官方链接? https://docs.starrocks.io/zh-cn/latest/introduction/what_is_starrocks

系统架构图

来源于官网:https://docs.starrocks.io/zh-cn/latest/introduction/Architecture

在这里插入图片描述

安装部署StarRocks

手动部署

官方链接? https://docs.starrocks.io/zh-cn/latest/quick_start/Deploy

通过 Docker部署

官网链接? https://docs.starrocks.io/zh-cn/latest/administration/deploy_with_docker

使用 StarGo 部署管理

官方链接? https://docs.starrocks.io/zh-cn/latest/administration/stargo

通过 StarRocks Manager部署管理

官方链接? https://docs.starrocks.io/zh-cn/latest/administration/deploy_with_manager

通过 Kubernetes部署

贴近于当下时代的潮流趋势云原生化,具有维护便捷、故障自愈能力强、可快速扩缩容等特性。
StarRocks产品研发团队提供了CRD(CustomResourceDefinitions)自定义资源的二次开发能力来扩展kubernetes API,“StarRocks Operator”,部署成功后会有专门的Controller控制器,来支撑后续的StarRocks产品组件部署。

官方链接? https://docs.starrocks.io/zh-cn/latest/administration/sr_operator

工作原理逻辑图

在这里插入图片描述

部署 StarRocks Operator
1、添加定制资源 StarRocksCluster
kubectl create -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/starrocks.com_starrocksclusters.yaml

root@k8s-m01:/srv/k8s_yaml/starrocks# kubectl get crd |grep starrocks
starrocksclusters.starrocks.com                       2023-04-11T09:13:13Z

2、部署 StarRocks Operator。可以选择使用默认配置文件或者自定义配置文件
kubectl create -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml
StarRocks Operator 会部署至 Namespace starrocks,并且管理所有 Namespace 下的 StarRocks 集群。
自定义可参考官方说明操作!

3、检查 StarRocks Operator 的运行状态。

在这里插入图片描述

部署 StarRocks 集群

此处使用官方提供的 starrocks-fe-and-be.yaml配置文件,部署一个 StarRocks 集群,包含三个 FE 和三个 BE 节点。

kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/examples/starrocks/starrocks-fe-and-be.yaml

它会先创建启动fe,然后再启动be;
在这里插入图片描述
StarRocks 集群已经成功运行。
在这里插入图片描述

访问 StarRocks 集群

访问 StarRocks 集群的各个组件可以通过其关联的 Service 实现,比如 FE Service。

集群内访问 StarRocks 集群
  • 在 Kubernetes 集群内,通过 FE Service 的 ClusterIP 访问 StarRocks 集群。
    • 查看 FE Service 内部虚拟 IP CLUSTER-IP 和端口 PORT(S)。
      在这里插入图片描述
    • 在 Kubernetes 集群内通过 MySQL 客户端访问 StarRocks 集群
      在这里插入图片描述
集群外访问 StarRocks 集群

此处不做相关演示了,官方教程写的比较详细,有需要可以去官方自行查阅,包括后续的升级、扩缩容、CN弹性自动扩缩容等。
附链接? https://docs.starrocks.io/zh-cn/latest/administration/sr_operator#%E9%9B%86%E7%BE%A4%E5%A4%96%E8%AE%BF%E9%97%AE-starrocks-%E9%9B%86%E7%BE%A4

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。