Kubernetes ReadOnlyMany + ReadWriteOnce



我目前正在尝试用Kubernetes配置Logstash集群,我希望每个Logstash节点都能用管道以只读方式装载一个卷。然后,这个相同的卷将以读/写方式装载在一个管理实例上,我可以在该实例中编辑配置。

K8s和GCEPersistentDisk有可能做到这一点吗?

我认为Logstash指的是ELK集群。Logstash只是一个日志转发器,而不是存储的端点。

不是。使用GCEPersistentDisk是不可能的。这更像是GCE的限制,一次只能在一个实例上装载一个卷。

此外,正如您在文档中看到的,支持ReadWriteOnceReadOnlyMany,但不同时支持。

重要!一个卷一次只能使用一种访问模式装载,即使它支持多种访问模式。例如,GCEPersistentDisk可以由单个节点装载为ReadWriteOnce,也可以由多个节点装载为Read OnlyMany,但不能同时装载。

您可以实现这一点,但只需在单个K8s节点上使用单个卷,然后将卷分区,以便由同一节点上的不同Elasticsearch pod使用,但这将无法实现分布式集群的目的。

如果您的节点位于不同的Kubernetes节点中,并且每个节点都有一个单独的卷,那么Elasticsearch可以很好地工作。

最新更新