使用 Helm 部署 StarRocks 集群
Helm 是 Kubernetes 的包管理工具。Helm Chart 是 Helm 包,包含在 Kubernetes 集群上运行应用程序所需的所有资源定义。本文介绍如何在 Kubernetes 集群上使用 Helm 自动化部署 StarRocks 集群。
环境准备
部署操作
-
添加 StarRocks 的 Helm Chart Repo。Helm Chart 包括 StarRocks Operator 和定制资源 StarRocksCluster 的定义。
-
添加 Helm Chart Repo。
helm repo add starrocks https://starrocks.github.io/starrocks-kubernetes-operator
-
更新 Helm Chart Repo 至最新版本。
helm repo update
-
查看所添加的 Helm Chart Repo。
$ helm search repo starrocks
NAME CHART VERSION APP VERSION DESCRIPTION
starrocks/kube-starrocks 1.8.0 3.1-latest kube-starrocks includes two subcharts, starrock...
starrocks/operator 1.8.0 1.8.0 A Helm chart for StarRocks operator
starrocks/starrocks 1.8.0 3.1-latest A Helm chart for StarRocks cluster
-
-
您可以使用 Helm Chart 默认的 values.yaml 来部署 StarRocks Operator 和 StarRocks 集群,也可以新建 YAML 文件并且自定义配置来部署。
-
使用默认配置进行部署。 执行如下命令,部署 StarRocks Operator 和 StarRocks 集群。StarRocks 集群包含一个 FE 和一个 BE。
$ helm install starrocks starrocks/kube-starrocks
# 返回如下结果,表示正在部署 StarRocks Operator 和 StarRocks 集群。
NAME: starrocks
LAST DEPLOYED: Tue Aug 15 15:12:00 2023
NAMESPACE: starrocks
STATUS: deployed
REVISION: 1
TEST SUITE: None -
使用自定义配置进行部署。
-
创建一个 YAML 文件,例如 my-values.yaml,在 YAML 文件中自定义 StarRocks Operator 和 StarRocks 集群的配置信息。支持配置的参数和说明,请参见 Helm Chart 默认的 values.yaml 中的注释。
-
执行如下命令,使用 my-values.yaml 中的自定义配置部署 StarRocks Operator 和 StarRocks 集群。
helm install -f my-values.yaml starrocks starrocks/kube-starrocks
部署需要一定时间。期间,您可以根据上述部署命令返回结果中的提示命令查询部署状态,默认的提示命令如下:
$ kubectl --namespace default get starrockscluster -l "cluster=kube-starrocks"
# 状态显示为 running,则表示已经成功部署。
NAME FESTATUS CNSTATUS BESTATUS
kube-starrocks running running您也可以执行
kubectl get pods
查看部署状态。如果所有 Pod 处于Running
状态且 Pod 内所有容器都READY
,则表示已经成功部署。$ kubectl get pods
NAME READY STATUS RESTARTS AGE
kube-starrocks-be-0 1/1 Running 0 2m50s
kube-starrocks-fe-0 1/1 Running 0 4m31s
kube-starrocks-operator-69c5c64595-pc7fv 1/1 Running 0 4m50s -
-