【资料图】
作为一名经验丰富的专业人士,我作为 Apache Druid k8s operator 的维护者获得了丰富的经验,并且与人合着并致力于各种 k8s operators/库。通过我的经验,我认识到需要建立特定于应用程序的控制平面,以促进大数据在 Kubernetes 上的顺利运行。
在我过去的角色中,我为 RillData 的 Druid、Startree 的 Pinot 和 Chistadata 的 Clickhouse 构建了 Kubernetes 控制平面。在所有三个 OLAP 商店工作之后,我现在完全致力于我的最新企业 DataInfra,该公司专注于构建高效的控制平面,使数据能够在 Kubernetes 上无缝运行。
为什么 Pinot 的控制平面?我们相信 Kubernetes 可以作为任何应用程序的控制平面,包括那些具有数据和状态集的应用程序。虽然 Helm 图表对配置管理很有用,但它们不维护应用程序的状态。这就是我们基于 Kubernetes 操作符模式构建控制平面的原因,它充当您的应用程序需求和 Kubernetes 基础设施之间的桥梁。
k8s 的 Pinot 控制平面专门设计用于改善运行 Apache Pinot 集群的用户体验。作为一个分布式数据库,如果没有合适的工具,Pinot 很难在 Kubernetes 上运行。我们的项目基于DSOI 规范,并使用Operator-Runtime库构建,以提供更加用户友好和 Kubernetes 友好的体验。
本项目基于 Kubernetes 算子模式,但不限于此模式。鉴于 Pinot 的复杂性,仅依靠 Kubernetes 运营商可能不足以有效管理其运营。我们对该项目的愿景是创建一套全面的工具和实用程序,以实现 Pinot 在 Kubernetes 上的无缝部署和操作。
安装 Pinot 控制平面Pinot 控制平面支持基于Helm Chart 的部署。要安装图表,请运行以下命令。我们将使用 Makefile 命令来引导控制平面。
git clone https://github.com/datainfrahq/pinot-control-plane-k8s.git
部署 Pinot 控制平面——以下命令在 pinot-control-plane 命名空间中使用 helm 部署控制平面。make helm-install-pinot-control-plane
make helm-install-zk-operator
安装 Pinot Cluster导出 Kubernetes 存储类。
export STORAGE_CLASS_NAME=standard
安装 Pinot Clusterenvsubst < examples/00-pinot-basic/pinot-basic.yaml | kubectl apply -f - -n pinot
安装 Kafka 集群并创建主题添加 Helm 仓库并安装 Kafka 集群# Add Kafkahelm repo add kafka https://charts.bitnami.com/bitnami# Deploy kafkahelm install -n pinot kafka kafka/kafka --set replicas=1,zookeeper.image.tag=latest
Kafka Pod 启动并运行后,创建主题# Add Kafkahelm repo add kafka https://charts.bitnami.com/bitnami# Deploy kafkahelm install -n pinot kafka kafka/kafka --set replicas=1,zookeeper.image.tag=latest
创建 Pinot 模式Pinot 控制平面支持模式的创建。kubectl apply -f examples/00-pinot-basic/pinotschema-basic.yaml -n pinot
创建比诺表Pinot 控制平面支持创建表。kubectl apply -f examples/00-pinot-basic/pinottable-basic.yaml -n pinot
将数据提取到 Kafka将数据提取到 kafka 主题中kubectl apply -f examples/00-pinot-basic/pinot-realtime-kafka.yaml
访问 Pinot 控制台通过端口转发控制器 pod 或 svc 访问 pinot 控制台。kubectl port-forward pinot-controller-controller-0 -n pinot 9000
关键词:
Copyright 2015-2022 大众礼仪网 版权所有 备案号:豫ICP备20014643号-14 联系邮箱: 905 14 41 07@qq.com