对 运行 Aerospike on Kubernetes on CoreOS on GCE 有什么建议吗?

Any suggestion for running Aerospike on Kubernetes on CoreOS on GCE?

我想 运行 Aerospike 集群 Docker 由 Kubernetes 在 Google Compute Engine (GCE) 上的 CoreOS 上管理的容器。但由于 GCE 不允许多播,我必须按照 here 所述使用 Mesh 心跳,这必须通过指定所有节点的 IP 地址和端口来设置;对我来说似乎太死板了。

Kubernetes/CoreOS/GCE 上的 Aerospike 集群是否有任何推荐的云配置设置,同时保持集群的灵活性?

指定所有网格种子 IP 地址的替代方法是使用 the asinfo tip command

请看:

http://www.aerospike.com/docs/reference/info/#tip

提示命令

asinfo -v 'tip:host=172.16.121.138;port=3002'

以上命令可以添加到具有正确 ips 的脚本或编排工具中。

您还可以在 aerospike 论坛上找到其他信息:

Aerospike Forum

您可以使用集成 DNS 通过 DNS 查询从服务获取 pod IP - 如果您设置 clusterIP:"none",

dig +short svcname.namespace.svc.cluster.local

将return服务中的每个pod ip。

当我们在售前期间与 Aerospike 工程师交谈时,他们建议不要在 Docker 容器(无论是否有 Kubernetes)中使用 运行 Aerospike。他们的理由是,当 Docker Aerospike 内部的 运行 无法直接访问 SSD 硬件时,SSD 驱动程序 运行 到 Docker 的效率不如 [=15] =] 在裸机(或 VM)上。他们写的许多优化都无法利用。