切换消息队列

本指南介绍了如何将现有 Milvus 部署的消息队列 (MQ)在 Woodpecker 与另一个消息队列之间进行切换,该操作可在不影响服务的情况下在线完成,且不会造成停机。

此功能尚待发布,具体内容可能会有变动。如果您想试用该功能或有任何疑问,请联系 Milvus 支持团队。

先决条件

  • “切换消息队列”功能仅在 Milvus 3.0 及更高版本中提供。使用前请将您的 Milvus 实例升级至 Milvus 3.0 或更高版本——此功能在早期版本中不可用。
  • 实例运行正常。

适用范围

本指南仅涵盖在 Woodpecker 与另一消息队列之间进行切换的情况。Pulsar 与 Kafka 之间的直接切换不在本指南范围内。

通用工作流

  1. 确保 Milvus 实例运行正常。
  2. 确认源 MQ 类型和目标 MQ 类型。
  3. 将目标MQ的访问设置映射到Milvus配置中,同时保持mqType 的值不变
  4. 通过在 MixCoord 上调用 WAL alter API 触发切换。
  5. 监控日志以确认切换已完成。

切换前,请确保目标MQ中不包含与当前Milvus实例所用主题名称相同的主题。如果目标MQ曾被另一个Milvus实例使用过,这一点尤为重要,因为主题名称冲突可能会导致意外行为。

支持矩阵

源MQ目标消息队列部署状态
RocksMQWoodpecker(本地/MinIO)独立部署(Docker Compose)已支持
Woodpecker(本地/MinIO)RocksMQ独立部署(Docker Compose)已支持
Pulsar(内置/外部)Woodpecker(MinIO)集群(Helm / Operator)已支持
Woodpecker(MinIO)Pulsar(外部)集群(Helm / Operator)已支持
Kafka(内置/外部)Woodpecker(MinIO)集群(Helm / Operator)已支持
Woodpecker(MinIO)Kafka(外部)集群(Helm / Operator)已支持
Woodpecker MinIOWoodpecker 本地(或反之)任意不支持

请避免反复在不同MQ类型之间切换。如果确实需要切换,请确保在每次切换前清理相关数据——残留数据可能会导致意外行为。

翻译自DeepL

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

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

免费试用 Zilliz Cloud
反馈

此页对您是否有帮助?