From 5887d2fb9ba7323b7ea71d684db57e63986b5c4f Mon Sep 17 00:00:00 2001 From: yandongxiao Date: Tue, 14 Nov 2023 17:27:50 +0800 Subject: [PATCH] [Documentation] update README_ZH-CN.md (#311) Signed-off-by: yandongxiao --- README_ZH-CN.md | 101 ++++++++++++++++++++++++++++-------------------- 1 file changed, 60 insertions(+), 41 deletions(-) diff --git a/README_ZH-CN.md b/README_ZH-CN.md index d968728e..10b6b73a 100644 --- a/README_ZH-CN.md +++ b/README_ZH-CN.md @@ -4,73 +4,92 @@ ## 概述 -本文档描述了如何使用StarRocks Operator在Kubernetes环境中部署StarRocks集群。更多文档请查看 [doc](./doc/README.md) 目录。 +StarRocks Kubernetes Operator 实现了在 Kubernetes 上部署和操作 StarRocks 的功能。StarRocks 是一款高性能分析型数据仓库,使用向量化、MPP +架构、CBO、智能物化视图、可实时更新的列式存储引擎等技术实现多维、实时、高并发的数据分析。Operator 便于在您的 Kubernetes 环境中部署 +StarRocks 的 Frontend(FE)、Backend(BE)和计算节点(CN)组件。它还包括 Helm chart 以便于安装和配置。使用 StarRocks Kubernetes +Operator,您可以轻松管理 StarRocks 集群的生命周期,如安装、扩展、升级等。 -## 要求 +## 先决条件 -* kubernetes 1.18+ -* golang 1.19+ +1. Kubernetes 版本 >= 1.18 +2. Helm 版本 >= 3.0 -## 支持的功能 +## 特性 -* FE与CN和BE解耦。FE是必须的组件,BE和CN可选部署。 -* CN集群支持v2版本的HPA。 +### Operator 特性 -## 安装operator +- 支持分别部署 StarRocks 的 FE、BE 和 CN 组件。FE 组件是必须的,BE 和 CN 组件可以选择性部署 +- 支持在一个 Kubernetes 集群中部署多个 StarRocks 集群 +- 支持外部客户端通过 STREAM LOAD 将数据加载到 StarRocks +- 支持根据 CPU 和内存使用情况自动扩展 CN 节点 +- 支持为 StarRocks 容器挂载持久卷 -为operator应用自定义资源定义 (CRD): +### Helm Chart 特性 -```console -kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/starrocks.com_starrocksclusters.yaml -``` +- 支持 Helm Chart 以便于安装和配置 +- 使用 kube-starrocks Helm chart 同时安装 operator 和 StarRocks 集群 +- 使用 operator Helm Chart 安装 operator,使用 starrocks Helm Chart 安装 starrocks 集群 +- 支持在安装过程中初始化 StarRocks 集群的 root 密码 +- 支持与 Kubernetes 生态系统中的其他组件集成,如 Prometheus、Datadog 等 -应用operator清单。默认情况下,operator配置为在starrocks命名空间中安装。如果您要在自定义命名空间中使用operator,请下载 [operator yaml](https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml) -并编辑所有的命名空间,然后,使用`kubectl apply -f {local-file-path}`命令,而不是下面的命令,将这个版本的清单应用到集群中。 +## 安装 -```console -kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml -``` +要在 Kubernetes 中使用 StarRocks,您需要安装: -## 部署StarRocks集群 +1. StarRocksCluster CRD +2. StarRocks Operator +3. StarRocksCluster CR -您需要准备一个独立的yaml文件,以部署StarRocks的FE、BE和CN组件。StarRocksCluster CRD 的字段含义在[api.md](./doc/api.md) -中解释。[examples](./examples/starrocks) 目录包含了一些简单的参考示例。 +有两种方式可以安装 Operator 和 StarRocks Cluster。 -为了演示目的,我们使用[starrocks-fe-and-be.yaml](./examples/starrocks/starrocks-fe-and-be.yaml) -示例模板启动一个3FE和3BE的StarRocks集群。 +1. 通过 yaml Manifest 安装 Operator 和 StarRocks Cluster。 +2. 通过 Helm Chart 安装 Operator 和 StarRocks Cluster。 -```console -kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/examples/starrocks/starrocks-fe-and-be.yaml -``` +> 注意:在每个版本中,我们都会提供最新版本的 yaml Manifest 和 Helm +> Chart。您可以在 https://github.com/StarRocks/starrocks-kubernetes-operator/releases 中找到它们。 + +### 通过 yaml Manifest 安装 -## 连接到部署的StarRocks集群 +请参阅 [使用 Operator 部署 StarRocks 文档](./doc/deploy_starrocks_with_operator_howto.md) 以获取更多详细信息。 -部署StarRocks集群后,您可以使用`kubectl get svc -n `来查找连接的IP。例如,如果starrocks部署在`starrocks` -命名空间中,您可以: +首先,Apply 自定义资源定义 (CRD): ```console -kubectl get svc -n starrocks +kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/starrocks.com_starrocksclusters.yaml ``` -使用`-fe-service`的clusterIP作为连接到StarRocks FE的IP。 - -## 停止StarRocks集群 - -删除自定义资源: +其次,Apply Operator manifest: ```console -kubectl delete -f starrocks-fe-and-be.yaml +kubectl apply -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml ``` -删除operator: +默认情况下,Operator 配置为在 starrocks 命名空间中安装。要在自定义命名空间中使用 +Operator,下载 [Operator manifest](https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml) +并编辑所有的 namespace: starrocks 以指定您的自定义命名空间。然后使用 kubectl apply -f {local-file-path} 将这个版本的 +manifest 应用到集群。 + +最后,部署 StarRocks 集群。 + +您需要准备一个单独的 yaml 文件来部署 StarRocks。starrocks 集群 CRD 字段在 [api.md](./doc/api.md) +中有解释。 [examples](./examples/starrocks) 目录包含一些简单的示例供参考。 您可以使用任何模板 yaml +文件作为起点。您可以根据此部署文档将更多配置添加到模板 yaml 文件中。 + +为了演示目的,我们使用 [starrocks-fe-and-be.yaml](./examples/starrocks/starrocks-fe-and-be.yaml) 示例模板启动一个包含 3 个 +FE 和 3 个 BE 的 StarRocks 集群。 ```console -kubectl delete -f https://raw.githubusercontent.com/StarRocks/starrocks-kubernetes-operator/main/deploy/operator.yaml +kubectl apply -f starrocks-fe-and-be.yaml ``` -## 使用Helm安装StarRocks +### 通过 Helm Chart 安装 + +请参阅 [kube-starrocks](./helm-charts/charts/kube-starrocks/README.md) 了解如何通过 Helm Chart 安装 operator 和 +StarRocks 集群。 如果您希望在管理 StarRocks +集群时有更多的灵活性,您可以使用 [operator](./helm-charts/charts/kube-starrocks/charts/operator) Helm Chart 部署 +Operator,使用 [starrocks](./helm-charts/charts/kube-starrocks/charts/starrocks) Helm Chart 部署 StarRocks。 -StarRocks已经采用Helm进行部署需求。您可以在[artifacthub](https://artifacthub.io/packages/helm/kube-starrocks/kube-starrocks) -找到StarRocks的Helm图表。 +## 其它文档 -更多详情,请查看[deploy_starrocks_with_helm.md](./doc/deploy_starrocks_with_helm_howto.md)。 +- 在 [doc](./doc) 目录中,您可以找到更多关于如何使用 StarRocks Operator 的文档。 +- 在 [examples](./examples/starrocks) 目录中,您可以找到更多关于如何编写 StarRocksCluster CR 的示例。