不同角色的節點
- Master eligible / Data / Ingest / Coordinating / Machine Learning
在開發環境中,一個節點可承擔多種角色
在生產環境中
- 根據資料量,寫入和查詢的吞吐量,選擇適合的部署方式
- 建議設定單一角色的節點(dedicated node)
一個節點在預設情況下會同時扮演: master eligible ,data node 和 ingest node
節點型別 | 配置引數 | 預設值 |
---|---|---|
master eligible | node.master | true |
data | node.data | true |
ingest | node.ingest | true |
coodrinating only | 無 | 設定上面三個引數全部為false |
machine learning | node.ml | true(需要 enable x-pack) |
一個節點只承擔一個角色
- Dedicated master eligible nodes:負責叢集狀態(cluster state)的管理
- 使用低配置的 CPU ,RAM 和磁碟
- Dedicated data nodes: 負責資料儲存及處理客戶端請求
- 使用高配置的 CPU,RAM 和磁碟
- Dedicated ingest nodes: 負責資料處理
- 使用高配置的 CPU ;中等配置的RAM;低配置的磁碟
- 配置:將 Master ,Data ,Ingest 都配置成 Flase
- Medium / High CUP; Medium / High RAM;Low Disk
- 生產環境中,建議為一些大的叢集配置 Coordinating Only Nodes
- 扮演 Load Balancers。 降低 Master 和 Data Nodes 的負載
- 負載搜尋結果的 Gather / Reduce
- 有時候無法預知客戶端會發生怎樣的請求
- 大量佔用記憶體的結合操作,一個深度聚合可能引發 OOM
- 從高可用 & 避免腦裂的角色出發
- 一般在生產環境中配置3臺
- 一個叢集只有1臺活躍的主節點
- 負載分片管理,索引建立,叢集管理等操作
- 如果和資料節點或者 Coordinate 節點混合部署
- 資料節點相對有比較大的記憶體佔用
- Coordinate 節點有時候可能會有開銷很高的查詢,導致OOM
- 這些都有可能影響 Master 節點,導致叢集的不穩定
- 當磁碟容量無法滿足需求時,可以增加資料節點;磁碟讀寫壓力大時,增加資料節點
水平擴充套件:Coordinating Only Node
- 當系統中有大量的複雜查詢及聚合時候,增加 Coordinating 節點,增加查詢的效能
- 叢集處在三個資料中心;資料三寫;GTM 分發讀請求
本作品採用《CC 協議》,轉載必須註明作者和本文連結