警告

警告

簡單的問題:如果您使用 cgroup 來處理 mongodb 的記憶體需求並忽略並發 io 的方面,那麼在三個叢集中的相同節點上執行 mongodb 和 elasticsearch 是不是很愚蠢?

答案1

警告

這個問題很少涉及所需的 IOPS、RAM 和 CPU 等事實,因此答案也會很簡單。


一般來說,將兩個IO/CPU/RAM 密集型工作負載放在同一個節點上是不好的,但我確實有處理與其他資料庫(如Redis 和PostgreSQL)共享主機的Elasticsearch 實例的經驗,這些資料庫由cgroups/LXC 容器分隔。它可以完成,並且對於生產工作負載而言做得足夠好,給予足夠的原料。使用標準系統工具(如 vmstat、sar、iotop 等)監視 IO 和 RAM 使用情況是一個簡單的問題。您能買得起一些大型主機,那麼它是一個合理的架構。話又說回來,如果您能負擔得起足夠多的主機(例如Amazon 中的i2.4xls),那麼您就可以負擔得起更大的較小實例池(i2.xls),並分別運行Elasticsearch 和MongoDB,然後能夠以便在未來擴大規模,成為更好的系統設計的一部分。

相關內容