簡體   English   中英

將生產env cassandra集群移至AWS cassandra,無需停機

[英]Move production env cassandra cluster to AWS cassandra without downtime

我在內部DC的生產環境中運行了4個節點的cassandra集群。 我必須把它移到AWS cassandra。 由於某些原因,我不希望將cassandra移動到dynamoDB。

使用的Cassandra版本很老,即1.2.9。

如何將cassandra從內部DC移動到AWS cassandra,而不會丟失數據和零停機時間。

此致,Vivek

在AWS中創建新DC。 配置兩個DC之間的DC間同步。 解散老DC。

https://docs.datastax.com/en/cassandra/3.0/cassandra/operations/opsAddDCToCluster.html

我之前做過這個。

正如Alex Tbk所說,您將在AWS上添加一個帶有新數據中心的節點。

  1. 使用新的邏輯數據中心名稱添加新的空節點。 您需要使用GossipingPropertyFile snitch(如果您還沒有)並在cassandra-rackdc.properties文件中指定DC。 您還可以在該文件中指定邏輯機架,並且通常最好將AWS可用區域放在那里。

  2. 在構建一個AWS節點后,使用第一個節點的IP作為種子構建其余節點。 您不希望他們在重啟時嘗試擊中您的本地DC。 然后,您還需要將第一個節點設置為使用其他節點作為種子節點。

  3. 一旦構建了節點,就需要修改密鑰空間並為新的AWS DC指定復制因子。

  4. 使用現有DC作為源,在每個AWS節點上運行nodetool rebuild

    nodetool rebuild -- sourceDCName

  5. 絕對考慮升級。 1.2是一個可靠的版本,但你錯過了很多新的功能/修復。

注意:有些人建議使用AWS特定的小程序( EC2SnitchEC2MultiRegionSnitch ),但是您希望群集中的所有節點都在同一EC2Snitch EC2MultiRegionSnitch運行。 因此,對於混合雲部署(在您有機會解除內部部署節點之前),您將需要堅持使用GossipingPropertyFile 老實說,這是我使用的唯一一個小問題,無論提供商,你也應該沒問題。

暫無
暫無

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

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