Couchbase/Elasticsearch 多个存储桶的连接器

Couchbase/Elasticsearch connector for multiple buckets

有没有办法使用单个配置文件将 2 个或多个 couchbase 存储桶复制到 elasticsearch?

我实际使用的是这个版本的 couchbase elasticsearch 连接器: https://docs.couchbase.com/elasticsearch-connector/4.0/index.html

我确实正确地复制了我的数据,但每次都需要使用不同的配置文件 (.toml) 运行 每个存储桶的命令。

顺便说一下,无法 运行 在同一台服务器上多次执行 cbes 命令,因为指标端口 31415 已在使用中。

有没有办法一次性处理多个连接器组?

在 4.0 版中,单个连接器进程只能从一个存储桶进行复制。这是因为索引规则和与 Couchbase Server 的所有底层网络连接都限定在存储桶级别。

当前的建议是创建多个配置文件和 运行 多个连接器进程。据了解,如果您要复制大量存储桶,管理起来可能会很复杂。

如果您愿意发挥创意,可以对多个存储桶使用相同的配置文件 模板。这个想法是,您将编写一个包含一些占位符的配置文件,然后通过 运行 将占位符替换为正确的脚本来生成 actual 配置文件每个连接器的值。

连接器的下一次更新将添加 built-in support for environment variable substitution in the config file。这可以使模板方法更容易。

以下是避免指标端口冲突的一些选项:

  • 通过将 [metrics] 部分中的 httpPort 键设置为 -1 来禁用指标报告。
  • 或通过将其设置为 0.
  • 来使用随机端口
  • 或者使用上面描述的模板思想,并在每个生成的配置文件中插入一个唯一的端口号。

值得一提的是,连接器的未来版本将支持我们称之为“Autonomous Operations Mode”的东西。当连接器 运行 处于这种模式时,配置将存储在中央位置(可能是 Consul 服务器)。可以即时重新配置连接器组,并在组中添加或删除工作人员,而无需停止所有工作人员并编辑他们的配置文件。希望这将简化大型部署的管理。