Apache Pulsar Helm Chart

这是官方支持的用于在云原生环境中安装 Apache Pulsar 的 Helm chart。 它是基于 StreamNative 的 Helm Chart 并做了增强。

简介

使用 Apache Pulsar Helm chart 是在 Kubernetes 环境中管理 Pulsar 最方便的方式之一。 这个 Pulsar Helm chart 包含了所有启动 Pulsar 必要的组件,并可扩容到大型部署。

这个 chart 包含了 Pulsar 完整体验的所有组件,而且每个部分都可以通过配置独立部署使用。

  • Pulsar 核心组件:
    • ZooKeeper
    • Bookie
    • Brokers
    • Function worker
    • 代理服务
  • 控制中心
    • Pulsar Manager
    • Prometheus
    • Grafana

它提供了如下能力:

  • 安全
  • 存储
    • 非持久化存储
    • 持久化存储数据卷
    • 本地持久化存储数据卷
  • Functions
    • Kubernetes 运行时
    • 进程运行时
    • 线程运行时
  • 运维
    • 所有组件使用独立的镜像版本,实现可控升级

Pulsar Helm chart 快速入门

如果你只是想在非生产环境中尽快运行起 Pulsar Helm charts,我们提供了用于的 PoC (Proof of Concept )环境的Helm 快速入门

本指南用于引导用户使用默认值和默认特性部署 Helm charts,但并不满足生产环境的使用要求。 如果需要在生产环境下部署 Pulsar Helm charts,请参考完整的安装指南

故障排除

我们已尽我们所能来确保这些 charts 没有错误。 但还是不可避免会有一些我们预期之外的错误发生。 我们已经收集了针对常见问题的排错建议和技巧。 你可以在提交 issue 之前先确认下这些排错建议,当然我们也很欢迎你尝试修复他们并给我们提交 Pull Request

安装

Apache Pulsar Helm chart 包含所有必须的依赖项。

如果你只是想在 PoC 环境下测试下部署,我们强烈建议你遵循 快速开始指引 来进行。

  1. 准备工作
  2. 部署

升级

一旦安装好 Pulsar Helm chart,请使用helm upgrade来完成完整的配置变更和 chart 升级。

  1. helm repo add apache https://pulsar.apache.org/charts
  2. helm repo update
  3. helm get values <pulsar-release-name> > pulsar.yaml
  4. helm upgrade <pulsar-release-name> apache/pulsar -f pulsar.yaml

更多详细的信息,请参考升级

卸载

如果需要卸载 Pulsar Helm chart,请执行以下命令:

  1. helm delete <pulsar-release-name>

为了保持连续性,有些包含了 Kubernetes 对象的 charts 在执行helm delete 命令后无法被清除。 我们还是推荐你主动去移除这些组件,因为它们会影响重新部署。

  • 有状态服务的 PVC:主动地去移除。
    • ZooKeeper:这是 Pulsar 的元数据管理中心。
    • BookKeeper:这是 Pulsar 消息数据的存储中心。
    • Prometheus:这是 Pulsar 的监控计量数据,可以被安全清除。
  • 密钥:如果密钥是由 prepare release script 脚本生成, 那它们包括了密钥和令牌。 你可以按需使用 cleanup release script 脚本来清理这些密钥和令牌。