簡體   English   中英

使用Kubernetes在Elasticsearch集群中的持久卷映射

[英]Persistent Volume mapping in Elasticsearch cluster using Kubernetes

我們計划使用Kubernetes建立ES集群。 k8s容器將由3個數據節點組成,我們打算對數據進行持久的卷映射。

我對ES和k8都是陌生的,但據我了解,在吊艙中,通常共享一個卷。 但是在這種情況下,我們不應該共享這三個實例的數據。 什么是實現吊艙體積映射的最佳方法。 如果我有3個實例,我應該像/ node1 / data,/ node2 / data那樣分別映射每個實例,還是只映射到單個卷“ / data”,ES會確保實例之間的數據是隔離的?

我不確定映射的卷是否應具有節點名稱,如上述的node1,node2等。 具有3個ES節點(或多個數據節點)的Pod設計是否正確? 您可以為Pod中的不同節點實例指定不同的持久卷嗎?

如果吊艙終止並且創建了新吊艙,會發生什么情況? 映射的卷和節點名之間是否應有牢固的綁定。 實現此目的的最佳實踐是什么?

對於初學者,在某種程度上取決於群集的配置/運行方式。 如果您在像樣的雲提供商上運行,kube將能夠為您的PVC自動創建PV( 持久卷 )來為您提供支持。

我是否正確理解您計划在一個Pod中包含3個節點? 聽起來不對。 您應該有3個獨立的Pod構成集群。 由於這是一個有狀態服務,因此您可能需要研究StatefulSet

在集群容器中正確定義PVC之后,kube將確保將它們正確綁定到您的容器(即,在AWS AZ上始終將節點調度在正確的區域中,以便它可以鏈接該容器基於EBS的PV)。

我建議您開始使用Pod定義中的emptyDir卷來構建集群,當您emptyDir時,可以繼續進行操作,以確保在刪除Pod並通過更新Deployment重新創建Pod時正確保存了數據或StatefulSet。

旁注:雖然可以將Pod內部的單個卷安裝在該Pod的多個容器中,但沒有很多后端支持ReadWriteMany訪問模式,因此可以將同一卷安裝到不同的Pod(即NFS可以)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM