Migrowanie usługi Azure Cosmos DB for NoSQL do obsługi stref dostępności
Artykuł
W tym przewodniku opisano sposób migrowania usługi Azure Cosmos DB for NoSQL z obsługi stref niedostępnych do obsługi dostępności.
Korzystanie ze stref dostępności w usłudze Azure Cosmos DB nie ma zauważalnego wpływu na wydajność lub opóźnienie. Nie wymaga żadnych zmian w wybranym trybie spójności, a także nie wymaga żadnych modyfikacji kodu aplikacji.
Gdy strefy dostępności są włączone, usługa Azure Cosmos DB inteligentnie dystrybuuje cztery repliki danych we wszystkich dostępnych strefach. Gwarantuje to, że w przypadku awarii w jednej strefie dostępności konto pozostaje w pełni operacyjne. Natomiast bez stref dostępności wszystkie repliki będą znajdować się w jednej strefie dostępności (nie ujawniamy tego), co prowadzi do potencjalnego przestoju, jeśli dana strefa napotka problem.
Włączenie stref dostępności to doskonały sposób na zwiększenie odporności bazy danych Cosmos DB bez wprowadzania dodatkowych złożoności aplikacji, wpływu na wydajność, a nawet ponoszenia dodatkowych kosztów, jeśli jest również używane autoskalowanie.
Wymagania wstępne
Konta bezserwerowe mogą używać stref dostępności, ale ten wybór jest dostępny tylko podczas tworzenia konta. Istniejące konta bez stref dostępności nie mogą być konwertowane na konfigurację strefy dostępności. W przypadku obciążeń o znaczeniu krytycznym zalecana jest aprowizowana przepływność.
Dowiedz się, że włączanie stref dostępności nie jest wyborem dla całego konta. Pojedyncze konto usługi Cosmos DB może obejmować dowolną liczbę regionów świadczenia usługi Azure, z których każde można niezależnie skonfigurować do korzystania ze stref dostępności, a niektóre pary regionalne mogą nie obsługiwać stref dostępności. Jest to ważne, ponieważ niektóre regiony nie obsługują jeszcze stref dostępności, ale dodanie ich do konta usługi Cosmos DB nie uniemożliwi włączenia stref dostępności w innych regionach skonfigurowanych dla tego konta. Model rozliczeń odzwierciedla również tę możliwość. Aby uzyskać więcej informacji na temat umowy SLA dla usługi Cosmos DB, zobacz Niezawodność w usłudze Cosmos DB dla NoSQL. Aby zobaczyć, które regiony obsługują strefy dostępności, zobacz Regiony świadczenia usługi Azure z obsługą stref dostępności.
Wymagania dotyczące przestojów
Podczas migracji do obsługi strefy dostępności podczas dodawania i usuwania regionu pomocniczego występuje niewielka niedostępność zapisu (kilka sekund), ponieważ system celowo zatrzymuje zapisy w celu sprawdzenia spójności między regionami.
Migracja
Ponieważ nie możesz włączyć stref dostępności w regionie, który został już dodany do konta, musisz usunąć ten region i dodać go ponownie ze strefami dostępności włączonymi. Aby uniknąć zakłóceń w działaniu usługi, dodasz i przejdziesz w tryb failover do regionu tymczasowego do momentu ukończenia konfiguracji strefy dostępności.
Wykonaj poniższe kroki, aby włączyć strefy dostępności dla konta w wybranych regionach.
Dodaj region tymczasowy do konta bazy danych, wykonując kroki opisane w temacie Dodawanie regionu do konta bazy danych.
Jeśli konto usługi Azure Cosmos DB jest skonfigurowane z zapisami w wielu regionach, przejdź do następnego kroku. W przeciwnym razie wykonaj ręczne przejście w tryb failover do regionu tymczasowego, wykonując kroki opisane w artykule Wykonywanie ręcznego przejścia w tryb failover na koncie usługi Azure Cosmos DB.
Znajdź nowo dodany region w kolumnie Write region (Zapis) i włącz strefę dostępności dla tego regionu.
Wybierz pozycję Zapisz.
Wykonaj powrót po awarii do regionu z włączoną strefą dostępności, wykonując kroki opisane w artykule Wykonywanie ręcznego przejścia w tryb failover na koncie usługi Azure Cosmos DB.
Dodaj region tymczasowy do konta bazy danych. W poniższym przykładzie pokazano, jak dodać zachodnie stany USA jako region pomocniczy do konta skonfigurowanego tylko w regionie Wschodnie stany USA. W poleceniu należy uwzględnić wszystkie istniejące regiony i wszystkie nowe.
Jeśli konto usługi Azure Cosmos DB jest skonfigurowane z zapisami w wielu regionach, przejdź do następnego kroku. W przeciwnym razie wykonaj ręczne przejście w tryb failover do nowo dodanego regionu tymczasowego. W poniższym przykładzie pokazano, jak przeprowadzić przejście w tryb failover z regionu Wschodnie stany USA (bieżący region zapisu) do regionu Zachodnie stany USA (bieżący region tylko do odczytu). W poleceniu należy uwzględnić oba regiony.
az cosmosdb failover-priority-change --name MyCosmosDBDatabaseAccount --resource-group MyResourceGroup --failover-policies westus=0 eastus=1
Usuń region, dla którego chcesz włączyć strefy dostępności. W poniższym przykładzie pokazano, jak usunąć region Wschodnie stany USA z konta skonfigurowanego z regionami Zachodnie stany USA (region zapisu) i Wschodnie stany USA (tylko do odczytu). Musisz uwzględnić wszystkie regiony, które nie powinny zostać usunięte w poleceniu .
Dodaj z powrotem region do włączenia ze strefami dostępności. W poniższym przykładzie pokazano, jak dodać wschodnie stany USA jako region pomocniczy z obsługą az do konta skonfigurowanego tylko w regionie Zachodnie stany USA. W poleceniu należy uwzględnić wszystkie istniejące regiony i wszystkie nowe.
Wykonaj powrót po awarii do regionu z włączoną strefą dostępności. W poniższym przykładzie pokazano, jak przeprowadzić przejście w tryb failover z regionu Zachodnie stany USA (bieżący region zapisu) do regionu Wschodnie stany USA (bieżący region tylko do odczytu). W poleceniu należy uwzględnić oba regiony.
az cosmosdb failover-priority-change --name MyCosmosDBDatabaseAccount --resource-group MyResourceGroup --failover-policies eastus=0 westus=1
Usuń region tymczasowy. W poniższym przykładzie pokazano, jak usunąć region Zachodnie stany USA z konta skonfigurowanego w regionach Wschodnie stany USA (region zapisu) i Zachodnie stany USA (tylko do odczytu). Musisz uwzględnić wszystkie konta, które nie powinny zostać usunięte w poleceniu .
Pisanie wydajnych zapytań, tworzenie zasad indeksowania, zarządzanie zasobami i aprowizowanie ich w interfejsie API SQL i zestawie SDK za pomocą usługi Microsoft Azure Cosmos DB.
Dowiedz się, jak zarządzać zasobami usługi Azure Cosmos DB przy użyciu witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia i szablonów usługi Azure Resource Manager.
Regiony platformy Azure, w których można uruchomić klaster usługi Azure Cosmos DB for PostgreSQL, skonfigurować geograficznie nadmiarową kopię zapasową i uzyskać ochronę odporności na awarię modułu AZ
Dowiedz się więcej na temat replikacji geograficznej, zapisu w wielu regionach, trybu failover i odzyskiwania danych przy użyciu globalnych baz danych z usługi Azure Cosmos DB, globalnie rozproszonej, wielomodelowej usługi bazy danych.