您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

15 分钟内,在 Kubernetes 上设置 Apache Pinot

时间:2023-05-18 14:47:07  来源:科技狠活与软件技术  作者:

了解如何在 Kube.NETes 上安装 Pinot Control Plane,配置您的第一个 Pinot 集群,并深入了解控制平面功能。

作为一名经验丰富的专业人士,我作为 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 命令来引导控制平面。

  • Clone the Repo




  •  
  •  
  •  

git clone https://Github.com/datainfrahq/pinot-control-plane-k8s.git

 

  • 部署 Pinot 控制平面——以下命令在 pinot-control-plane 命名空间中使用 helm 部署控制平面。

make helm-install-pinot-control-plane

 

  • 部署 Zookeeper Operator 和 Zookeeper — 以下命令需要几分钟才能完成。它将在 zookeeper-operator 命名空间中部署 zookeeper operator,在 pinot 命名空间中部署 zk statefulset

make helm-install-zk-operator

 

 

安装 Pinot Cluster

导出 Kubernetes 存储类。

export STORAGE_CLASS_NAME=standard

  • 安装 Pinot Cluster

envsubst < examples/00-pinot-basic/pinot-basic.yaml | kubectl Apply -f - -n pinot

安装 Kafka 集群并创建主题

  • 添加 Helm 仓库并安装 Kafka 集群

# Add Kafka
helm repo add kafka https://charts.bitnami.com/bitnami
# Deploy kafka
helm install -n pinot kafka kafka/kafka --set replicas=1,zookeeper.image.tag=latest

 

  •  Kafka Pod 启动并运行后,创建主题

# Add Kafka
helm repo add kafka https://charts.bitnami.com/bitnami
# Deploy kafka
helm 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



Tags:Kubernetes   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除。
▌相关推荐
了解如何在 Kubernetes 上安装 Pinot Control Plane,配置您的第一个 Pinot 集群,并深入了解控制平面功能。作为一名经验丰富的专业人士,我作为 Apache Druid k8s operator 的维...【详细内容】
2023-05-18  Tags: Kubernetes  点击:(0)  评论:(0)  加入收藏
大家好,我是哪吒。今天分享一下Kubernetes 多云的实现,丰富个人简历,提高面试level,给自己增加一点谈资,秒变面试小达人,BAT不是梦。随着云计算的快速发展,越来越多的企业开始关注...【详细内容】
2023-05-12  Tags: Kubernetes  点击:(17)  评论:(0)  加入收藏
背景在 Kubernetes 上,从部署 Deployment 到正常提供服务,整个流程可能会出现各种各样问题,有兴趣的可以浏览 Kubernetes Deployment 的故障排查可视化指南(2021 中文版)[1]。...【详细内容】
2023-05-04  Tags: Kubernetes  点击:(28)  评论:(0)  加入收藏
一、Kubernetes的优缺点1、Kubernetes的优点 高可用性:Kubernetes具有自动容错和自动扩缩容等功能,可以保证应用的高可用性。 多种应用类型支持:Kubernetes支持各种应用场景,例...【详细内容】
2023-05-04  Tags: Kubernetes  点击:(21)  评论:(0)  加入收藏
从 kube-scheduler 的角度来看,它是通过一系列算法计算出最佳节点运行 Pod,当出现新的 Pod 进行调度时,调度程序会根据其当时对 Kubernetes 集群的资源描述做出最佳调度决定,但...【详细内容】
2023-04-21  Tags: Kubernetes  点击:(22)  评论:(0)  加入收藏
kube-scheduler 是 kubernetes 的核心组件之一,主要负责整个集群资源的调度功能,根据特定的调度算法和策略,将 Pod 调度到最优的工作节点上面去,从而更加合理、更加充分的利用...【详细内容】
2023-04-17  Tags: Kubernetes  点击:(22)  评论:(0)  加入收藏
Kyverno 是来自 Nirmata 的开源项目,后来捐赠给了 CNCF。Kyverno 是一个具有验证和变异能力的 Kubernetes 策略引擎,但是它还有生成资源的功能,还加入了 API 对象查询的能力。K...【详细内容】
2023-04-12  Tags: Kubernetes  点击:(31)  评论:(0)  加入收藏
开源的 Kubernetes Dashboard 有助于基于 UI 的资源部署和管理,但其缺陷使用户不得不采用替代方案。什么是 Kubernetes 仪表板Kubernetes Dashboard是一个能够管理Kubernetes...【详细内容】
2023-03-07  Tags: Kubernetes  点击:(48)  评论:(0)  加入收藏
livenessProbe、readinessProbe和startupProbe作用kubelet使用livenessProbe(存活探针)来判断何时重启容器。例如,当程序中产生死锁的时候,程序还在运行,通过livenessProbe可以检...【详细内容】
2023-03-07  Tags: Kubernetes  点击:(80)  评论:(0)  加入收藏
译者 | 崔皓 本文主要讲述Service Mesh如何影响Kubernetes的成本,带大家深入了解什么是Service Mesh以及如何使用Service Mesh减少Kubernetes的使用成本。 一、什么是Kuberne...【详细内容】
2023-01-30  Tags: Kubernetes  点击:(67)  评论:(0)  加入收藏
▌简易百科推荐
了解如何在 Kubernetes 上安装 Pinot Control Plane,配置您的第一个 Pinot 集群,并深入了解控制平面功能。作为一名经验丰富的专业人士,我作为 Apache Druid k8s operator 的维...【详细内容】
2023-05-18    科技狠活与软件技术  Tags:Kubernetes   点击:(0)  评论:(0)  加入收藏
什么是自动化测试在软件测试中,自动化测试指的是使用独立于待测软件的其他软件来自动执行测试、比较实际结果与预期并生成测试报告这一过程。在测试流程已经确定后,测试自动化...【详细内容】
2023-05-18    政采云技术  Tags:框架   点击:(1)  评论:(0)  加入收藏
大家好呀,我是楼仔。RabbitMQ 的文章之前写过,但是当时给的示例是 Demo 版的,这篇文章主要是结合之前写的理论知识,将 RabbitMQ 集成到技术派项目中。不 BB,上文章目录:下面我们先...【详细内容】
2023-05-15  楼仔    Tags:RabbitMQ   点击:(11)  评论:(0)  加入收藏
如果你觉得k8s太重了,试试k3s吧。k3s是一个轻量级的Kubernetes发行版,它可以在低资源的环境中运行,比如边缘计算或者物联网设备。k3s包含了Kubernetes的核心功能,但是移除了一些...【详细内容】
2023-05-12  T锅侠  今日头条  Tags:k3s   点击:(1)  评论:(0)  加入收藏
MyBatis 是一个优秀的持久层框架,它提供了丰富的 SQL 映射功能,可以让我们通过 XML 或注解方式来定义 SQL 语句。它很大程度上简化了数据库操作,提高了开发效率。动态 SQL 是...【详细内容】
2023-05-12  互联网高级架构师  稀土掘金  Tags:MyBatis   点击:(18)  评论:(0)  加入收藏
今天分享一下【Kubernetes】 DaemonSet 详解,丰富个人简历,提高面试level,给自己增加一点谈资,秒变面试小达人,BAT不是梦。三分钟你将学会: DaemonSet是什么? DaemonSet的应用场景 ...【详细内容】
2023-05-08  哪吒编程  微信公众号  Tags:K8S   点击:(24)  评论:(0)  加入收藏
前言我们早期在做Spring项目的时候,需要手动添加很多xml配置,比如整合SpringMVC的配置,开启事务,整合Mybatis等等。这些都需要我们手动编写大量的配置,简直就是配置地狱。Spring...【详细内容】
2023-05-08    尚硅谷教育  Tags:SpringBoot   点击:(13)  评论:(0)  加入收藏
一、需求开发过程需求:前端浏览器请求url: http://localhost:8080/demo/handle01,前端⻚面显示后台服务器的时间开发过程1)配置DispatcherServlet前端控制器2)开发处理具体业务逻...【详细内容】
2023-05-06  日拱一卒程序猿  今日头条  Tags:Spring MVC   点击:(15)  评论:(0)  加入收藏
大家好,我是小米,一个热爱技术分享的程序员。今天我们来谈一下Spring事务传播。在使用Spring进行数据库操作时,我们经常会遇到需要使用事务的情况,而Spring对事务的管理非常方便...【详细内容】
2023-05-06  知其然亦知其所以然    Tags:Spring   点击:(20)  评论:(0)  加入收藏
背景在 Kubernetes 上,从部署 Deployment 到正常提供服务,整个流程可能会出现各种各样问题,有兴趣的可以浏览 Kubernetes Deployment 的故障排查可视化指南(2021 中文版)[1]。...【详细内容】
2023-05-04    云原生指北  Tags:Kubernetes   点击:(28)  评论:(0)  加入收藏
站内最新
站内热门
站内头条