2016-06-13 109 views
0

我打算創建具有三個節點的羣集,並且每個節點將在三個不同的Amazon EC2區域中啓動。Datastax Cassandra - 亞馬遜EC2實例 - 具有跨越亞馬遜地區的三個節點的羣集

根據Datastax文檔,我將使用Ec2MultiRegionSnitch和複製stragey是NetworkTopologyStrategy。以下是我的需求

羣集大小:3(橫跨Amazon EC2區域跨越)。

複製因子:3

讀,寫水平:法定人數。

基於上述配置,我可以在單個節點丟失的情況下生存(意味着任何一個亞馬遜地區的下降,如果我錯了,糾正我)。

爲了實現上述結構,我有兩個選項

選項-1:使用Datastax提供亞馬遜EC2 AMI圖像。

此選項會運行一些監控工具(opscenter..etc)

卡桑德拉需要的幾乎所有部件啓動實例,但它僅在實例的生命存儲在EC2實例存儲,因此數據仍然存在的所有數據存儲大小取決於實例類型。

選項2:使用自定義安裝

在這個選項中,我要推出的Amazon EC2 Ubuntu的AMI,安裝JAVA,安裝Datastax社區版。

該選項使我可以將所有數據存儲在EBS上。因此,無論何時需要,我都可以擴展EBS,同時我可以使用EBS快照恢復任何節點。

我的問題:

哪個選項之一是適合我的需求?

注:

我讀到Datastax提供,很新的卡桑德拉的文檔。因此,您提供的任何輸入對我來說都是非常有用的。

感謝

回答

0

,你得到Datastax AMI只有EC2臨時存儲這不是真的。從版本2.5開始,他們聲稱你也可以選擇EBS:Introducing the DataStax Auto-Clustering AMI 2.5。這是我親自選擇的一種相對簡單的入門方式。

您應該選擇EBS還是EC2臨時存儲?

答案是:它取決於...

過去(2012- 2013年〜):

與臨時存儲EC2實例是一個更好的選擇。多年來有詳細的性能基準,這表明EBS正在變得更好,但是依然是,附加的物理驅動器更好。

過去(2014年):

EC2的選擇仍然是更好的。 Datastax寫了一個很好的一篇關於定價,網絡和故障恢復能力:What is the story with AWS storage?

現在(〜2016):

instaclustr稱:

通過在Amazon EBS運行卡桑德拉,您可以運行更密集,更便宜 Cassandra集羣具有與短暫存儲 實例一樣多的可用性。

漂亮的演示在這裏:AWS re:Invent 2015 | (BDT323) Amazon EBS & Cassandra: 1 Million Writes Per Second on 60 Nodes

總而言之,我建議你做一個TCO分析,如果沒有在價格上有很大的不同,選擇EBS - 因爲現成的能力,使快照。更重要的是,隨着時間的推移,EBS的機會將會得到改善。