• 关于 Milvus
  • 开始使用
  • 概念
  • 用户指南
  • 数据导入
  • AI 工具
  • 管理指南
  • 工具
  • 集成
  • 教程
  • 常见问题解答
  • API Reference

将 Kafka 用作 Milvus 消息队列

Apache Kafka 是 Milvus 支持的消息队列(WAL)后端之一。 在 Milvus 3.x 中,Woodpecker是默认的消息队列;但对于偏好使用 Kafka 的用户,系统仍提供全面支持。Kafka 主要与 Milvus Distributed(集群)配合使用;独立部署通常使用嵌入式的 Woodpecker 或RocksMQ

版本兼容性

  • Milvus 仅支持Kafka 2.x 和 3.x版本。
  • 可通过 Helm 或 Milvus Operator 为 Milvus Distributed(集群)配置 Kafka。

使用 Helm 部署基于 Kafka 的 Milvus 集群

安装与配置

若要使用外部 Kafka 服务,请禁用内置的 Pulsar,并在 `values.yaml ` 覆盖配置中启用 `externalKafka `,然后使用该配置安装 Milvus:

pulsarv3:
  enabled: false
externalKafka:
  enabled: true
  brokerList: <your_kafka_address>:<your_kafka_port>
  securityProtocol: SASL_SSL
  sasl:
    mechanisms: PLAIN
    username: ""
    password: ""
helm install my-release zilliztech/milvus -f values.yaml

有关 SASL/SSL 身份验证的详细信息,请参阅《使用 SASL/SSL 连接到 Kafka》。

卸载

helm uninstall my-release

使用 Milvus Operator 部署带 Kafka 的 Milvus 集群

使用 Milvus Operator 时,请在spec.dependencies.kafka (仅限集群)下设置spec.dependencies.msgStreamType: "kafka" 并配置 Kafka。kafka 支持externalinCluster

外部 Kafka

apiVersion: milvus.io/v1alpha1
kind: Milvus
metadata:
  name: my-release
  labels:
    app: milvus
spec:
  config:
    kafka:
      # securityProtocol supports: PLAINTEXT, SSL, SASL_PLAINTEXT, SASL_SSL
      securityProtocol: PLAINTEXT
      # saslMechanisms supports: PLAIN, SCRAM-SHA-256, SCRAM-SHA-512
      saslMechanisms: PLAIN
      saslUsername: ""
      saslPassword: ""
  dependencies:
    msgStreamType: "kafka"
    kafka:
      external: true
      brokerList:
        - "kafkaBrokerAddr1:9092"
        - "kafkaBrokerAddr2:9092"

Milvus Operator v0.8.5 及更高版本支持 SASL 配置。

内部(集群内)Kafka

apiVersion: milvus.io/v1alpha1
kind: Milvus
metadata:
  name: my-release
  labels:
    app: milvus
spec:
  dependencies:
    msgStreamType: "kafka"
    kafka:
      inCluster:
        values: {}  # see https://artifacthub.io/packages/helm/bitnami/kafka
  components: {}
  config: {}

应用配置(假设文件名为milvuscluster.yaml ):

kubectl apply -f milvuscluster.yaml

卸载

kubectl delete milvus my-release

注意事项

  • 从 2.5.x 升级至 2.6.x: 消息队列限制:升级至 Milvus v3.0.0 时,必须保留当前的消息队列选择。升级过程中不支持在不同的消息队列系统之间切换。未来版本将支持更改消息队列系统。 如果您正在运行 Kafka 且希望继续使用它,请在升级过程中不要更改消息队列。
  • 仅支持Kafka 2.x 和 3.x版本。
  • 有关 SASL/SSL 连接,请参阅《使用 SASL/SSL 连接到 Kafka》。

后续步骤

翻译自DeepL

想要更快、更简单、更好用的 Milvus SaaS服务 ?

Zilliz Cloud是基于Milvus的全托管向量数据库,拥有更高性能,更易扩展,以及卓越性价比

免费试用 Zilliz Cloud
反馈

此页对您是否有帮助?