Mat*_*ves 4 mysql apache-kafka kubernetes confluent apache-kafka-connect
我已按照以下说明https://docs.confluent.io/current/installation/installing_cp/cp-helm使用Helm图表https://github.com/confluentinc/cp-helm-charts在本地Minikube上安装了Kafka。-charts / docs / index.html像这样:
helm install -f kafka_config.yaml confluentinc/cp-helm-charts --name kafka-home-delivery --namespace cust360
Run Code Online (Sandbox Code Playgroud)
kafka_config.yaml与默认yaml几乎相同,唯一的例外是我将其缩减为1个服务器/代理,而不是3个(只是因为我试图节省本地minikube上的资源;希望这与我的问题)。
MySQL实例也在Minikube上运行。这是的输出kubectl get pods --namespace myNamespace:
我想使用其中一种连接器(例如Debezium MySQL CDC)连接MySQL和Kafka 。在说明中说:
安装连接器
使用Confluent Hub客户端通过以下方式安装此连接器:
confluent-hub install debezium/debezium-connector-mysql:0.9.2
听起来不错,除了1)我不知道要在哪个Pod上运行此命令,2)所有Pod似乎都没有可用的confluent-hub命令。
问题:
理想情况下,它应该可以作为helm脚本的一部分进行配置,但不幸的是,目前还不是。解决此问题的一种方法是从Confluent的Kafka Connect Docker映像构建一个新的Docker。手动下载连接器,然后将内容提取到文件夹中。将其内容复制到容器中的路径。像下面这样。
Dockerfile的内容
FROM confluentinc/cp-kafka-connect:5.2.1
COPY <connector-directory> /usr/share/java
Run Code Online (Sandbox Code Playgroud)
/usr/share/java是Kafka Connect查找插件的默认位置。您也可以plugin.path在helm安装过程中使用其他位置并提供新的位置()。
构建此映像并将其托管在可访问的位置。在helm安装过程中,您还必须提供/覆盖图像和标签详细信息。
这是values.yaml文件的路径。您可以在此处找到image和plugin.path值。
| 归档时间: |
|
| 查看次数: |
1049 次 |
| 最近记录: |