我正在分布式模式下运行我的Kafka connect进行弹性搜索。 目前我有 2 个 EC2 实例(实例类型 t2.2xlarge(
Number of vCPUs 8
Memory 32 Gb
我正在上述实例类型上运行 kafka 连接,最大任务为 2 . 我计划从制作人那里放很多东西,这些制作人将使用Kafka connect将记录放入ElastciSearch中。
重放意味着每秒 10000 条记录。
记住这一点,我应该如何创建 卡夫卡连接 .
例如
需要多少任务来处理这个问题,以便记录可以更快地进入 ES?
2 个 EC2 实例是否足以满足此负载,还是我需要更多?
为一个 EC2 实例创建多少个任务是好的?
拥有一个更大的 EC2 更好,或者拥有多个具有较小实例的 EC2 更好?
我如何使用 Kafka 连接确认所有记录都从 Kafka 主题到 ES
?
如何对我的卡夫卡连接性能进行基准测试?
到目前为止,我没有使用任何模式注册表.
请建议
我有 2 个 EC2 实例
因此,您只能运行 2 个工作线程。添加更多(在不同的可用区中(以获得更好的容错能力。您需要添加 CPU 和内存监控,以了解是否应添加更多实例。
在上述实例类型上运行 Kafka 连接,最大任务为 2 。
您最多可以拥有与输入主题分区一样多的任务。
每秒 10000 条记录
卡夫卡当然可以应付。需要单独对 ES 索引器进行基准测试。
我如何使用 Kafka 连接确认所有记录都从 Kafka 主题到 ES
您将监视使用者组滞后,与任何其他使用者任务相同
拥有一个更大的 EC2 更好,或者拥有多个具有较小实例的 EC2 更好
"更好"是相对的。如果您希望性能高于成本,请选择更大的实例并分配更多的堆空间。