sql >> Databáze >  >> RDS >> Database

Migrace vašeho klastru Cassandra

Autor Ben Slater , hlavní produktový ředitel, Instaclustr.

Přesunutí živého nasazení Apache Cassandra do nového umístění? Je přirozené, že máte nějaké obavy, například jak můžete udržet clustery Cassandra 100% dostupné během celého procesu. Faktem však je, že pokud je vaše aplikace schopna zůstat online během změn nastavení připojení, může zůstat během tohoto přechodu plně dostupná. Pro větší ochranu a klid na duši zahrnuje následující technika také strategii rychlého vrácení pro návrat k původní konfiguraci až do okamžiku dokončení migrace.

Zde je doporučený sedmikrokový postup migrace clusteru Cassandra, který zabrání výpadkům:

1. Připravte své stávající prostředí.

Nejprve se ujistěte, že vaše aplikace používá zásadu vyvažování zátěže s ohledem na datová centra a také LOCAL_*. Zkontrolujte také, že vše prostorů klíčů, které budou zkopírovány do nového clusteru, jsou nastaveny tak, aby jako strategii replikace používaly NetworkTopologyStrategy. Také se doporučuje, aby všechny klíčové prostory při vytváření používaly tuto strategii replikace, protože pozdější změny mohou být komplikované.

2. Vytvořte nový klastr.

Nyní je čas vytvořit nový cluster, do kterého budete migrovat. Zde je třeba dávat pozor na několik věcí:Ujistěte se, že nový cluster a původní cluster používají stejnou verzi Cassandra a název clusteru. Také název nového datového centra, který používáte, se musí lišit od názvu existujícího datového centra.

3. Připojte se ke klastrům společně.

Chcete-li to provést, nejprve proveďte všechny nezbytné změny pravidel brány firewall, aby se umožnilo spojení clusterů, přičemž pamatujte na to, že mohou být nutné některé změny ve zdrojovém clusteru. Poté změňte počáteční uzly nového clusteru – a spusťte je. Jakmile to uděláte, nový cluster bude druhým datovým centrem v původním clusteru.

4. Změňte nastavení replikace.

Dále ve stávajícím clusteru aktualizujte nastavení replikace pro prostory klíčů, které budou zkopírovány, takže data budou nyní replikována s novým datovým centrem jako cílem.

5. Zkopírujte data do nového clusteru.

Když jsou clustery spojeny, Cassandra začne replikovat zápisy do nového clusteru. Stále je však nutné zkopírovat všechna existující data pomocí funkce rebuild nodetool. Je osvědčeným postupem provádět tuto funkci na novém clusteru po jednom nebo dvou uzlech, aby nedošlo k přetížení stávajícího clusteru při streamování.

6. Změna spojovacích bodů aplikace.

Po dokončení všech použití funkce rebuild bude každý z clusterů obsahovat úplnou kopii migrovaných dat, která bude Cassandra automaticky synchronizovat. Nyní je čas změnit počáteční body připojení vaší aplikace na uzly v novém clusteru. Jakmile je toto dokončeno, všechna čtení a zápisy budou obsluhovány novým clusterem a následně budou replikovány v původním clusteru. Konečně je chytré spustit funkci opravy napříč clusterem, aby bylo zajištěno, že všechna data byla úspěšně replikována z originálu.

7. Vypněte původní cluster.

Dokončete proces malým vyčištěním po migraci a odstraněním původního clusteru. Nejprve změňte pravidla brány firewall, abyste odpojili původní cluster od nového. Potom aktualizujte nastavení replikace v novém clusteru, aby se zastavila replikace dat do původního clusteru. Nakonec vypněte původní cluster.

A je to:Vaše nasazení Apache Cassandra bylo plně migrováno, s nulovými prostoji, nízkým rizikem a způsobem zcela bezproblémovým a transparentním z pohledu vašich koncových uživatelů.

O autorovi

Ben Slater je Chief Product Officer ve společnosti Instaclustr, poskytovatele podnikové, hostované a plně spravované datové infrastruktury Apache Cassandra s otevřeným zdrojovým kódem v cloudu.


  1. SQLite ALTER TABLE

  2. Úvod do SQL indexů

  3. Spustit dotaz mySQL jako úlohu cron?

  4. získat řadu jedinečných hodnot bez oddělování hodnot, které patří do stejného bloku hodnot