使用 Helm 部署 StarRocks
目标
本快速入门的目标是:
- 使用 Helm 部署 StarRocks Kubernetes Operator 和 StarRocks 集群
- 为 StarRocks 数据库用户
root
配置密码 - 通过部署三个 FE 和三个 BE 保证高可用性
- 在持久化存储中存储元数据
- 在持久化存储中存储数据
- 通过 MySQL 客户端从外部连接 Kubernetes 集群
- 通过 Stream Load 从外部向 Kubernetes 集群中导入数据
- 导入公共数据集
- 查询数据
本教程中的数据集和查询与基础快速入门中使用的相同。主要区别在于使用 Helm 和 StarRocks Operator 部署。
使用的数据由 NYC OpenData 和美国国家环境信息中心提供。
这些数据集都很大,因为本教程旨在帮助您熟悉使用 StarRocks,所以不会导入过去 120 年的数据。推荐您使用三个 e2-standard-4
(或类似的)机器构建的 GKE Kubernetes 集群,磁盘大小为 80GB。对于更大规模的部署,请参考部署文档。
本文档包含大量信息,在文档的开头是分步内容,技术细节在文章末尾,这样的顺序安排是为了:
- 使用 Helm 部署系统。
- 允许读者在 StarRocks 中导入数据并分析这些数据。
- 解释导入过程中数据转换的基本知识。
前提条件
Kubernetes 环境
本指南编写时使用的 Kubernetes 环境由三个节点组成,每个节点配备四个 vCPU 和 16GB 内存(GCP e2-standard-4
机器)。Kubernetes 集群是通过以下 gcloud
命令部署的:
这个命令仅供参考,如果你使用的是 AWS、Azure 或其他 Kubernetes 提供商,你需要根据自身环境进行修改。在 Google Cloud 中,你需要指定自己的项目和合适的位置。
gcloud container --project enterprise-demo-422514 \
clusters create ee-docs \
--location=southamerica-west1-b \
--machine-type e2-standard-4 --disk-size 80 --num-nodes 3
Helm
Helm 是一个用于 Kubernetes 的包管理器,简化了应用程序的部署和管理。在本实验中,你将使用 Helm 来部署 CelerData Enterprise Edition Kubernetes operator 和示例 StarRocks 集群。
SQL 客户端
您可以使用在 Kubernetes 环境中提供的 SQL 客户端,或使用您系统上的客户端。本指南使用 mysql CLI
。许多兼容 MySQL 的客户端都可以使用。
curl
curl
用 于向 StarRocks 发送数据导入任务,以及下载数据集。您可以通过在操作系统命令提示符下运行 curl
或 curl.exe
检查您是否安装了它。如果没有安装 curl,点击这里获取 curl。
术语
FE
FE 节点负责元数据管理、客户端连接管理、查询规划和查询调度。每个 FE 在其内存中存储并维护完整的元数据副本,保证 FE 之间服务无差别。
BE
BE 节点负责数据存储和执行查询计划。
添加 StarRocks Helm Chart 仓库
Helm Chart 包含 StarRocks Operator 的定义和自定义资源 StarRocksCluster。
-
添加 Helm Chart 仓库。
helm repo add starrocks https://starrocks.github.io/starrocks-kubernetes-operator
-
将 Helm Chart 仓库更新到最新版本。
helm repo update
-
查看您添加的 Helm Chart 仓库。
helm search repo starrocks
NAME CHART VERSION APP VERSION DESCRIPTION
starrocks/kube-starrocks 1.9.7 3.2-latest kube-starrocks includes two subcharts, operator...
starrocks/operator 1.9.7 1.9.7 A Helm chart for StarRocks operator
starrocks/starrocks 1.9.7 3.2-latest A Helm chart for StarRocks cluster
starrocks/warehouse 1.9.7 3.2-latest Warehouse is currently a feature of the StarRoc...
下载数据
将这两个数据集下载到您的机器上。
纽约市交通事故数据
curl -O https://raw.githubusercontent.com/StarRocks/demo/master/documentation-samples/quickstart/datasets/NYPD_Crash_Data.csv