前一段时间了解了Pulsar这个开源项目,感觉是一个替换kafka的好东西!它具体的特性各位自行搜索吧!
为了自己项目尝试使用Pulsar,我决定进行部署实验。但是,目前网上看到的都是在公网上公有云部署Pulsar的说明,没有人在私有Kubernetes集群离线部署Pulsar。
一般的大型企业公司都有自己的私有云,禁止连接外网使用,为此我重新查看了官方文档,终于搞定了在私有云部署Pulsar集群。
本文章将指导使用 Helm 将 Apache Pulsar 快速地安装及运行在私有部署的 Kubernetes 上,内容包括以下几个部分:
- 使用 Helm 将 Apache Pulsar 安装在 Kubernetes 上
- 启动与停止 Apache Pulsar
- 使用 pulsar-admin 创建主题
- 使用 Pulsar 客户端生产与消费消息
- 通过 Prometheus 和 Grafana 来监控 Apache Pulsar 的状态
一、前提条件
- kubectl 1.14 or higher, compatible with your cluster (+/- 1 minor release from your cluster)
- Helm v3 (3.0.2 or higher)
- Kubernetes 集群,版本 1.14 或以上
- 一台能够上外网的电脑(安装kubectl、helm、下载镜像、部署操作等)
- 在电脑上安装 helm 和 kubectl
二、将 Pulsar 集群部署于生产用途的配置选项设置方式:
安装 Pulsar Helm chart
1、 添加 Pulsar Helm 仓库。
helm repo add apache https://pulsar.apache.org/charts
helm repo update
2、 克隆 Pulsar Helm chart 的仓库。
git clone https://github.com/apache/pulsar-helm-chart
cd pulsar-helm-chart
3、 配置Pulsar chart参数:
在运行 helm install之前, 你需要决定如何运行 Pulsar。 可以使用 Helm 的 --set option.name=value 命令行参数配置选项。
- –选择配置选项
在每个部分,收集与 helm install 命令合并使用的选项。同时,除helm命令参数以为,其他为修改charts/values.yaml文件内相对应内容。 - 3.1 Kubernetes 命名空间
默认情况下,Pulsar Helm chart 安装到 pulsar 命名空间。
namespace: pulsar
要将其安装到 Kubernetes 的其它命名空间,可以在 helm install 命令中添加一下选项。
–set namespace=
默认情况下,Pulsar Helm chart 不会创建命名空间。
namespaceCreate: false
可以在 helm install 命令中添加以下选项让 Pulsar Helm chart 自动创建 Kubernetes 命名空间。
–set namespaceCreate=true - 3.2 持久化
默认情况下,Pulsar Helm chart 会创建持久卷声明,并期望动态提供者创建底层持久卷。 </