sql >> Databáze >  >> NoSQL >> MongoDB

10 otázek, které je třeba položit (a odpovědět) při hostování MongoDB na AWS

Hostujete své produkční instance MongoDB na Amazon AWS? Ve ScaleGrid spravujeme stovky produkčních instancí MongoDB na AWS a během toho jsme se naučili pár věcí. Zde je soubor 10 otázek, které si musíte položit a zodpovědět, když budete pokračovat ve správě nasazení. Téměř všechny níže uvedené informace platí i pro ostatní poskytovatele cloudových služeb.

  1. Jaký je váš plán vysoké dostupnosti (HA)?

    Pokud používáte jedinou instanci, možná je čas podívat se na sady replik. Při používání sad replik dbejte na to, abyste každou sadu replik nasadili v jiné zóně dostupnosti pro vysokou dostupnost MongoDB.

  2. Jaký je váš plán obnovy po havárii (DR)?

    Pokud nasazujete všechny své sady replik v jedné oblasti, co se stane, když se celá oblast AWS zhroutí, jako tomu bylo v dubnu 2011? Možná se budete chtít podívat na distribuci vašich sad replik MongoDB napříč regiony.

  3. Otestovali jste svůj plán DR?

    Simulujte selhání počítače, sítě a disku, abyste pochopili chování clusteru za podmínek selhání. Nechcete se setkat se svým prvním převzetím služeb při selhání v produkci a potřebujete zajistit, aby váš cluster MongoDB přežil výpadek AWS.

  4. Zálohujete své instance?

    Ano, potřebujete zálohy, i když máte sady replik. Zálohy jsou nutné k řešení náhodného vymazání nebo když nová verze vaší aplikace poškodí všechna vaše data. Ujistěte se, že zálohujete pravidelně – nejlépe každých několik hodin. Zálohovat můžete ze sekundární, aby to nemělo velký dopad na primární. Obecný přehled možností zálohování MongoDB najdete v našem příspěvku na blogu – Možnosti zálohování MongoDB.

  5. Fungují vaše zálohy?

    Zkoušeli jste obnovit zálohu MongoDB? Jak dlouho trvá obnovení a opětovné synchronizování všech vašich replik? Pokud neznáte odpověď, nyní je ten správný čas provést zkoušku nasucho a zkusit obnovu od začátku do konce.

  6. Jak testujete upgrady aplikací s produkčními daty?

    Jednou z nejsložitějších částí upgradů aplikací MongoDB je testování se stávajícími produkčními daty. Vytvořte oddělené produkční prostředí, ve kterém můžete testovat upgrady aplikací s produkčními daty.

  7. Jaký druh svazků EBS používáte?

    Pokud používáte standardní svazky EBS pro MongoDB na AWS, zvažte přechod na nové zřízené svazky IOPS. Je to trochu dražší, ale stojí za každou korunu. Uvidíte mnohem méně kolísání ve výkonu IO a budete spát po celou noc snadněji.

  8. Porovnali jste výkon svých instancí MongoDB?

    Pokud nemáte, můžete MongoDB porovnat pomocí benchmarku cloudového serveru Yahoo (YCSB) nebo mongoperf. Je dobré vědět, co ze svých databází získáváte.

  9. Jak sledujete své instance?

    Pokud své instance nemonitorujete, nyní je ten správný čas začít. Vyzkoušejte monitorovací konzolu MongoDB od ScaleGrid nebo má 10gen volně dostupnou službu Mongo Monitoring Service (MMS), kterou můžete začít používat k monitorování svých clusterů MongoDB.

  10. Vystavujete své databáze internetu?

    Dnešní výkonné nástroje pro CPU a prolomení hesel vaše heslo prolomí během několika hodin. Použijte Amazon Security Groups k uzamčení přístupu k vaší databázi MongoDB a udělte pouze přední/střední přístup do DB.

V ScaleGrid jsme našim zákazníkům pomohli zodpovědět řadu těchto otázek a chtěli bychom se podělit o tyto tipy, které vám pomohou spravovat vaše nasazení MongoDB na AWS. Poskytujeme nasazení sad replik MongoDB jedním kliknutím napříč zónami nebo oblastmi dostupnosti, máme automatizovaný proces zálohování a obnovy, používáme pouze zřízené IOPS a našim zákazníkům poskytujeme jednoduché způsoby, jak srovnávat MongoDB a také simulovat převzetí služeb při selhání v clusterech MongoDB. Pokud máte další dotazy/komentáře nebo požadavky na funkce, rádi bychom od vás slyšeli. Můžete nám poslat e-mail na adresu [email protected].


  1. Redis:Chcete-li nastavit časový limit pro pár klíč-hodnota v Set

  2. Pravděpodobnost kolize ObjectId vs UUID ve velkém distribuovaném systému

  3. Přesměrujte výstup mongo dotazu do souboru csv

  4. Funkce Mongo Find() nevyloučí _id