Przechodzenie w tryb failover na potrzeby ciągłości działania i odzyskiwania po awarii

Aby zmaksymalizować czas pracy, zaplanuj ciągłość działania i przygotuj się do odzyskiwania po awarii przy użyciu usługi Azure Machine Edukacja.

Firma Microsoft stara się zapewnić, że usługi platformy Azure są zawsze dostępne. Mogą jednak wystąpić nieplanowane awarie usług. Zalecamy utworzenie planu odzyskiwania po awarii na potrzeby obsługi awarii usług regionalnych. W tym artykule omówiono sposób wykonywania następujących zadań:

  • Planowanie wdrożenia wielu regionów usługi Azure Machine Edukacja i skojarzonych zasobów.
  • Maksymalizuj szanse na odzyskanie dzienników, notesów, obrazów platformy Docker i innych metadanych.
  • Projektowanie pod kątem wysokiej dostępności rozwiązania.
  • Zainicjuj przejście w tryb failover do innego regionu.

Ważne

Usługa Azure Machine Learning nie zapewnia automatycznego trybu failover ani odzyskiwania po awarii. Tworzenie kopii zapasowej i przywracanie metadanych obszaru roboczego, takich jak historia uruchamiania, jest niedostępne.

W przypadku przypadkowego usunięcia obszaru roboczego lub odpowiednich składników ten artykuł zawiera również obecnie obsługiwane opcje odzyskiwania.

Omówienie usług platformy Azure dla usługi Azure Machine Edukacja

Usługa Azure Machine Edukacja zależy od wielu usług platformy Azure. Niektóre z tych usług są aprowizowania w ramach subskrypcji. Odpowiadasz za konfigurację tych usług o wysokiej dostępności. Inne usługi są tworzone w ramach subskrypcji firmy Microsoft i są zarządzane przez firmę Microsoft.

Usługi platformy Azure obejmują:

  • Infrastruktura usługi Azure Machine Edukacja: środowisko zarządzane przez firmę Microsoft dla obszaru roboczego usługi Azure Machine Edukacja.

  • Skojarzone zasoby: zasoby aprowidowane w ramach subskrypcji podczas tworzenia obszaru roboczego usługi Azure Machine Edukacja. Te zasoby obejmują usługę Azure Storage, usługę Azure Key Vault, usługę Azure Container Registry i Szczegółowe informacje aplikacji.

    • Magazyn domyślny zawiera dane, takie jak model, dane dziennika trenowania i odwołania do zasobów danych.
    • Usługa Key Vault ma poświadczenia dla usług Azure Storage, Container Registry i magazynów danych.
    • Usługa Container Registry ma obraz platformy Docker do trenowania i wnioskowania środowisk.
    • Szczegółowe informacje aplikacji służy do monitorowania usługi Azure Machine Edukacja.
  • Zasoby obliczeniowe: zasoby tworzone po wdrożeniu obszaru roboczego. Możesz na przykład utworzyć wystąpienie obliczeniowe lub klaster obliczeniowy w celu wytrenowania modelu Edukacja maszyny.

    • Wystąpienie obliczeniowe i klaster obliczeniowy: środowiska programistyczne modelu zarządzanego przez firmę Microsoft.
    • Inne zasoby: zasoby obliczeniowe firmy Microsoft, które można dołączyć do usługi Azure Machine Edukacja, takie jak Azure Kubernetes Service (AKS), Azure Databricks, Azure Container Instances i Azure HDInsight. Odpowiadasz za konfigurowanie ustawień wysokiej dostępności dla tych zasobów.
  • Inne magazyny danych: usługa Azure Machine Edukacja może zainstalować inne magazyny danych, takie jak Azure Storage i Azure Data Lake Storage na potrzeby danych szkoleniowych. Te magazyny danych są aprowizowane w ramach subskrypcji. Odpowiadasz za konfigurowanie ustawień wysokiej dostępności. Aby wyświetlić inne opcje magazynu danych, zobacz Tworzenie magazynów danych.

W poniższej tabeli przedstawiono usługi platformy Azure zarządzane przez firmę Microsoft i zarządzane przez Ciebie. Wskazuje również usługi, które są domyślnie wysoce dostępne.

Usługa Zarządzane przez Wysoka dostępność domyślnie
Infrastruktura usługi Azure Machine Edukacja Microsoft
Skojarzone zasoby
Azure Storage Ty
Key Vault Ty
Container Registry Ty
Szczegółowe dane dotyczące aplikacji Ty NA
Zasoby obliczeniowe
Wystąpienie obliczeniowe Microsoft
Klaster obliczeniowy Microsoft
Inne zasoby obliczeniowe, takie jak AKS,
Azure Databricks, Container Instances, HDInsight
Ty
Inne magazyny danych, takie jak Azure Storage, SQL Database,
Azure Database for PostgreSQL, Azure Database for MySQL,
System plików usługi Azure Databricks
Ty

W pozostałej części tego artykułu opisano akcje, które należy wykonać, aby każda z tych usług były wysoce dostępne.

Planowanie wdrożenia w wielu regionach

Wdrożenie obejmujące wiele regionów opiera się na tworzeniu Edukacja usługi Azure Machine i innych zasobów (infrastruktury) w dwóch regionach świadczenia usługi Azure. Jeśli wystąpi awaria regionalna, możesz przełączyć się do innego regionu. Podczas planowania miejsca wdrażania zasobów należy wziąć pod uwagę następujące kwestie:

  • Dostępność regionalna: jeśli to możliwe, użyj regionu w tym samym obszarze geograficznym, niekoniecznie takiego, który jest najbliżej. Aby sprawdzić dostępność regionalną dla usługi Azure Machine Edukacja, zobacz Produkty platformy Azure według regionów.

  • Sparowane regiony platformy Azure: sparowane regiony koordynują aktualizacje platformy i ustalają priorytety działań związanych z odzyskiwaniem w razie potrzeby. Jednak nie wszystkie regiony obsługują sparowane regiony. Aby uzyskać więcej informacji, zobacz Regiony sparowane platformy Azure.

  • Dostępność usługi: zdecyduj, czy zasoby używane przez rozwiązanie powinny być gorące/gorące, gorące/ciepłe, czy gorące/zimne.

    • Gorąca/gorąca: Oba regiony są aktywne w tym samym czasie, z jednym regionem gotowym do natychmiastowego rozpoczęcia korzystania.
    • Gorąca/ciepła: Aktywny region podstawowy, region pomocniczy ma krytyczne zasoby (na przykład wdrożone modele) gotowe do uruchomienia. Zasoby niekrytyczne muszą być wdrażane ręcznie w regionie pomocniczym.
    • Gorąca/zimna: Aktywny region podstawowy, region pomocniczy ma wdrożone Edukacja maszyny platformy Azure i inne zasoby wraz z wymaganymi danymi. Zasoby, takie jak modele, wdrożenia modelu lub potoki, muszą być wdrażane ręcznie.

Napiwek

W zależności od wymagań biznesowych możesz zdecydować się traktować różne zasoby usługi Azure Machine Edukacja w inny sposób. Na przykład możesz chcieć użyć gorąca/gorąca w przypadku wdrożonych modeli (wnioskowanie) i gorąca/zimna w przypadku eksperymentów (trenowanie).

Usługa Azure Machine Edukacja bazuje na innych usługach. Niektóre usługi można skonfigurować do replikacji do innych regionów. Inne osoby, które należy utworzyć ręcznie w wielu regionach. Poniższa tabela zawiera listę usług, które są odpowiedzialne za replikację oraz omówienie konfiguracji:

Usługa platformy Azure Replikacja geograficzna przez Konfigurowanie
Obszar roboczy Edukacja maszyny Ty Utwórz obszar roboczy w wybranych regionach.
Obliczenia maszyny Edukacja Ty Utwórz zasoby obliczeniowe w wybranych regionach. W przypadku zasobów obliczeniowych, które mogą dynamicznie skalować, upewnij się, że oba regiony zapewniają wystarczający limit przydziału zasobów obliczeniowych dla Twoich potrzeb.
Rejestr Edukacja maszyny Ty Utwórz rejestr w wielu regionach.
Key Vault Microsoft Użyj tego samego wystąpienia usługi Key Vault z obszarem roboczym i zasobami usługi Azure Machine Edukacja w obu regionach. Usługa Key Vault automatycznie przełączy się w tryb failover do regionu pomocniczego. Aby uzyskać więcej informacji, zobacz Dostępność i nadmiarowość usługi Azure Key Vault.
Container Registry Microsoft Skonfiguruj wystąpienie usługi Container Registry w celu replikacji geograficznej rejestrów do sparowanego regionu dla usługi Azure Machine Edukacja. Użyj tego samego wystąpienia dla obu wystąpień obszaru roboczego. Aby uzyskać więcej informacji, zobacz Replikacja geograficzna w usłudze Azure Container Registry.
Konto magazynu Ty Usługa Azure Machine Edukacja nie obsługuje domyślnego trybu failover konta magazynu przy użyciu magazynu geograficznie nadmiarowego (GRS), magazynu geograficznie nadmiarowego strefowo nadmiarowego (GZRS), magazynu geograficznie nadmiarowego dostępnego do odczytu (RA-GRS) ani magazynu geograficznie nadmiarowego dostępnego do odczytu (RA-GZRS). Utwórz oddzielne konto magazynu dla domyślnego magazynu każdego obszaru roboczego.
Utwórz oddzielne konta magazynu lub usługi dla innego magazynu danych. Aby uzyskać więcej informacji, zobacz Nadmiarowość usługi Azure Storage.
Szczegółowe dane dotyczące aplikacji Ty Utwórz Szczegółowe informacje aplikacji dla obszaru roboczego w obu regionach. Aby dostosować okres przechowywania danych i szczegóły, zobacz Zbieranie, przechowywanie i przechowywanie danych w aplikacji Szczegółowe informacje.

Aby włączyć szybkie odzyskiwanie i ponowne uruchomienie w regionie pomocniczym, zalecamy następujące rozwiązania programistyczne:

  • Użyj szablonów usługi Azure Resource Manager. Szablony to "infrastruktura jako kod" i umożliwiają szybkie wdrażanie usług w obu regionach.
  • Aby uniknąć dryfu między dwoma regionami, zaktualizuj potoki ciągłej integracji i wdrażania w celu wdrożenia w obu regionach.
  • Podczas automatyzowania wdrożeń uwzględnij konfigurację dołączonych zasobów obliczeniowych obszaru roboczego, takich jak usługa Azure Kubernetes Service.
  • Tworzenie przypisań ról dla użytkowników w obu regionach.
  • Utwórz zasoby sieciowe, takie jak sieci wirtualne platformy Azure i prywatne punkty końcowe dla obu regionów. Upewnij się, że użytkownicy mają dostęp do obu środowisk sieciowych. Na przykład konfiguracje sieci VPN i DNS dla obu sieci wirtualnych.

Usługi obliczeniowe i usługi danych

W zależności od potrzeb może istnieć więcej usług obliczeniowych lub danych, które są używane przez usługę Azure Machine Edukacja. Możesz na przykład użyć usług Azure Kubernetes Services lub Azure SQL Database. Skorzystaj z poniższych informacji, aby dowiedzieć się, jak skonfigurować te usługi pod kątem wysokiej dostępności.

Zasoby obliczeniowe

Usługi danych

Napiwek

Jeśli podasz własny klucz zarządzany przez klienta w celu wdrożenia obszaru roboczego usługi Azure Machine Edukacja, usługa Azure Cosmos DB jest również aprowizowana w ramach subskrypcji. W takim przypadku ponosisz odpowiedzialność za konfigurowanie ustawień wysokiej dostępności. Zobacz Wysoka dostępność w usłudze Azure Cosmos DB.

Projektowanie na potrzeby wysokiej dostępności

Strefy dostępności

Niektóre usługi platformy Azure obsługują strefy dostępności. W przypadku regionów obsługujących strefy dostępności, jeśli strefa ulegnie awarii, a dane powinny zostać zapisane. Jednak dane są niedostępne do odświeżenia, dopóki strefa nie wróci do trybu online.

Aby uzyskać więcej informacji, zobacz Usługa strefy dostępności i obsługa regionalna.

Wdrażanie krytycznych składników w wielu regionach

Określ poziom ciągłości działania, którego chcesz służyć. Poziom może się różnić między składnikami rozwiązania. Na przykład możesz chcieć mieć konfigurację gorącą/gorącą dla potoków produkcyjnych lub wdrożeń modelu oraz gorącą/zimną na potrzeby eksperymentowania.

Zarządzanie danymi treningowymi w izolowanym magazynie

Dzięki przechowywaniu magazynu danych odizolowanego od domyślnego magazynu obszar roboczy używany przez dzienniki można wykonywać następujące czynności:

  • Dołącz te same wystąpienia magazynu co magazyny danych do podstawowych i pomocniczych obszarów roboczych.
  • Korzystaj z replikacji geograficznej dla kont magazynu danych i maksymalizuj czas pracy.

Zarządzanie zasobami uczenia maszynowego jako kodem

Uwaga

Tworzenie kopii zapasowych i przywracanie metadanych obszaru roboczego, takich jak historia uruchamiania, modele i środowiska, są niedostępne. Określenie zasobów i konfiguracji jako kodu przy użyciu specyfikacji YAML ułatwi ponowne utworzenie zasobów między obszarami roboczymi w przypadku awarii.

Zadania w usłudze Azure Machine Edukacja są definiowane przez specyfikację zadania. Ta specyfikacja obejmuje zależności od artefaktów wejściowych zarządzanych na poziomie wystąpienia obszaru roboczego, w tym środowisk i obliczeń. W przypadku przesyłania i wdrożeń zadań obejmujących wiele regionów zalecamy następujące rozwiązania:

  • Lokalnie zarządzaj bazą kodu wspieraną przez repozytorium Git.

    • Eksportowanie ważnych notesów z usługi Azure Machine Edukacja Studio.
    • Eksportowanie potoków utworzonych w programie Studio jako kodu.
  • Zarządzanie konfiguracjami jako kodem.

    • Unikaj zakodowanych na stałe odwołań do obszaru roboczego. Zamiast tego skonfiguruj odwołanie do wystąpienia obszaru roboczego przy użyciu pliku konfiguracji i użyj MLClient.from_config(), aby zainicjować obszar roboczy.
    • Użyj pliku Dockerfile, jeśli używasz niestandardowych obrazów platformy Docker.

Inicjowanie trybu failover

Kontynuuj pracę w obszarze roboczym trybu failover

Gdy podstawowy obszar roboczy stanie się niedostępny, możesz przełączyć się na pomocniczy obszar roboczy, aby kontynuować eksperymentowanie i programowanie. Usługa Azure Machine Edukacja nie przesyła automatycznie zadań do pomocniczego obszaru roboczego, jeśli wystąpi awaria. Zaktualizuj konfigurację kodu, aby wskazywała nowy zasób obszaru roboczego. Zalecamy unikanie odwołań do obszaru roboczego na twardo. Zamiast tego użyj pliku konfiguracji obszaru roboczego, aby zminimalizować ręczne kroki użytkownika podczas zmieniania obszarów roboczych. Pamiętaj również o zaktualizowaniu wszelkich automatyzacji, takich jak potoki ciągłej integracji i wdrażania w nowym obszarze roboczym.

Usługa Azure Machine Edukacja nie może zsynchronizować ani odzyskać artefaktów ani metadanych między wystąpieniami obszaru roboczego. W zależności od strategii wdrażania aplikacji może być konieczne przeniesienie artefaktów lub ponowne utworzenie danych wejściowych eksperymentów, takich jak zasoby danych, w obszarze roboczym trybu failover w celu kontynuowania przesyłania zadań. W przypadku skonfigurowania podstawowego obszaru roboczego i pomocniczych zasobów obszaru roboczego w celu udostępniania skojarzonych zasobów z włączoną replikacją geograficzną niektóre obiekty mogą być dostępne bezpośrednio w obszarze roboczym trybu failover. Jeśli na przykład oba obszary robocze współdzielą te same obrazy platformy Docker, skonfigurowane magazyny danych i zasoby usługi Azure Key Vault. Na poniższym diagramie przedstawiono konfigurację, w której dwa obszary robocze współdzielą te same obrazy (1), magazyny danych (2) i usługę Key Vault (3).

Diagram przejścia w tryb failover między sparowanych regionów.

Uwaga

Wszystkie zadania uruchomione w przypadku awarii usługi nie zostaną automatycznie przełączene do pomocniczego obszaru roboczego. Jest również mało prawdopodobne, że zadania zostaną wznowione i zakończone pomyślnie w podstawowym obszarze roboczym po rozwiązaniu awarii. Zamiast tego należy ponownie przesłać te zadania w pomocniczym obszarze roboczym lub w podstawowym (po rozwiązaniu awarii).

Przenoszenie artefaktów między obszarami roboczymi

W zależności od podejścia do odzyskiwania może być konieczne skopiowanie artefaktów między obszarami roboczymi, aby kontynuować pracę. Obecnie przenośność artefaktów między obszarami roboczymi jest ograniczona. Zalecamy zarządzanie artefaktami jako kodem tam, gdzie to możliwe, aby można je było odtworzyć w wystąpieniu trybu failover.

Następujące artefakty można eksportować i importować między obszarami roboczymi przy użyciu rozszerzenia interfejsu wiersza polecenia platformy Azure na potrzeby uczenia maszynowego:

Artefakt Eksport Importowanie
Modele az ml model download --name {NAME} --version {VERSION} az ml model create
Środowiska az ml environment share --name my-environment --version {VERSION} --resource-group {RESOURCE_GROUP} --workspace-name {WORKSPACE} --share-with-name {NEW_NAME_IN_REGISTRY} --share-with-version {NEW_VERSION_IN_REGISTRY} --registry-name {REGISTRY_NAME} az ml environment create
Zadania usługi Azure Machine Edukacja az ml job download -n {NAME} -g {RESOURCE_GROUP} -w {WORKSPACE_NAME} az ml job create -f {FILE} -g {RESOURCE_GROUP} -w {WORKSPACE_NAME}
Zasoby danych az ml data share --name {DATA_NAME} --version {VERSION} --resource-group {RESOURCE_GROUP} --workspace-name {WORKSPACE} --share-with-name {NEW_NAME_IN_REGISTRy} --share-with-version {NEW_VERSION_IN_REGISTRY} --registry-name {REGISTRY_NAME} az ml data create -f {FILE} -g {RESOURCE_GROUP} --nazwa-rejestru {REGISTRY_NAME}

Napiwek

  • Dane wyjściowe zadania są przechowywane na domyślnym koncie magazynu skojarzonym z obszarem roboczym. Dane wyjściowe zadania mogą stać się niedostępne z poziomu interfejsu użytkownika programu Studio w przypadku awarii usługi, ale możesz uzyskać bezpośredni dostęp do danych za pośrednictwem konta magazynu. Aby uzyskać więcej informacji na temat pracy z danymi przechowywanymi w obiektach blob, zobacz Tworzenie, pobieranie i wyświetlanie listy obiektów blob za pomocą interfejsu wiersza polecenia platformy Azure.

Opcje odzyskiwania

Usuwanie obszaru roboczego

Jeśli obszar roboczy został przypadkowo usunięty, możesz go odzyskać. Aby uzyskać instrukcje odzyskiwania, zobacz Odzyskiwanie danych obszaru roboczego po przypadkowym usunięciu przy użyciu usunięcia nietrwałego.

Nawet jeśli nie można odzyskać obszaru roboczego, nadal możesz pobrać notesy z skojarzonego z obszarem roboczym zasobu usługi Azure Storage, wykonując następujące kroki:

  • W witrynie Azure Portal przejdź do konta magazynu połączonego z usuniętym obszarem roboczym usługi Azure Machine Edukacja.
  • W sekcji Magazyn danych po lewej stronie wybierz pozycję Udziały plików.
  • Notesy znajdują się w udziale plików o nazwie zawierającej identyfikator obszaru roboczego.

Następne kroki

Aby dowiedzieć się więcej o powtarzalnych wdrożeniach infrastruktury za pomocą usługi Azure Machine Edukacja, użyj szablonu usługi Azure Resource Manager.