Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Azure VM Image Builder to usługa zarządzana, która tworzy i dostosowuje obrazy maszyn wirtualnych, a następnie dystrybuuje obrazy wynikowe do obiektów docelowych, takich jak Azure Compute Gallery lub wirtualne dyski twarde (VHD) w Azure Blob Storage. Usługa nie wymaga utrzymania długotrwałej infrastruktury kompilacji.
W przypadku korzystania z platformy Azure niezawodność jest wspólną odpowiedzialnością. Microsoft oferuje szereg funkcjonalności wspierających odporność i odzyskiwanie. Odpowiadasz za zrozumienie, jak te możliwości działają w ramach wszystkich używanych usług oraz za wybór tych, które są potrzebne do osiągnięcia Twoich celów biznesowych i celów dotyczących niezawodności.
W tym artykule opisano, jak zapewnić odporność usługi Azure VM Image Builder na różne potencjalne awarie i problemy, w tym błędy przejściowe, awarie strefy dostępności, awarie całego regionu i prace konserwacyjne usługi. Opisano w nim również opcje tworzenia kopii zapasowych i przywracania, niestandardowe rozwiązania wieloregionowe oraz kluczowe informacje o umowie dotyczącej poziomu usług (SLA) Azure VM Image Builder.
Zalecenia dotyczące wdrażania produkcyjnego
Podczas projektowania produkcyjnego potoku tworzenia obrazów należy wziąć pod uwagę następujące zalecenia:
Zdefiniuj szablony obrazów przy użyciu infrastruktury jako kodu, takiej jak Bicep lub Terraform, i zapisz definicje w kontroli wersji.
Dystrybuuj gotowe obrazy do regionów, w których są uruchamiane obciążenia, na przykład za pomocą replikacji w Azure Compute Gallery, aby uniknąć niepotrzebnych zależności między regionami podczas tworzenia maszyny wirtualnej, skalowania w poziomie i operacji ponownego tworzenia obrazu.
Przechowuj skrypty dostosowywania, pakiety i inne zależności kompilacji w magazynie o właściwościach nadmiarowości wymaganych przez obciążenie robocze.
Omówienie architektury niezawodności
W tej sekcji opisano niektóre ważne aspekty działania usługi, które są najbardziej istotne z perspektywy niezawodności. W sekcji przedstawiono architekturę logiczną, która zawiera niektóre z zasobów i funkcji wdrażanych i używanych. Omówiono również architekturę fizyczną, która zawiera szczegółowe informacje na temat działania usługi za kulisami.
Architektura logiczna
W przypadku korzystania z narzędzia Vm Image Builder szablon obrazu jest wdrażany w jednym regionie Azure, który staje się regionem macierzysnym szablonu.
Po utworzeniu szablonu uruchamiasz build, który wykonuje serię kroków w celu utworzenia obrazu maszyny wirtualnej. Te kroki mogą wykonywać skrypty lub dołączać pakiety, które chcesz osadzić w obrazie.
Usługa tworzy lub używa przejściowej grupy zasobów i wdraża infrastrukturę kompilacji w ramach subskrypcji. Po kompilacji usługa usuwa tymczasowe zasoby, w tym maszynę wirtualną kompilacji i skojarzone zasoby sieciowe. Przejściowa grupa zasobów i jej zasoby magazynu danych pozostają tak długo, jak istnieje zasób szablonu obrazu.
VM Image Builder dystrybuuje gotowy obraz do co najmniej jednego określonego miejsca docelowego. Typowe cele obejmują:
Azure Compute Gallery (wcześniej znana jako Shared Image Gallery): Azure Compute Gallery udostępnia replikację obrazów maszyn wirtualnych w wielu regionach. Na przykład możesz utworzyć obraz w jednym regionie i rozpowszechnić wynikową wersję obrazu Azure Compute Gallery do kilku regionów docelowych.
Azure Blob Storage: usługa może przechowywać wirtualny dysk twardy na koncie magazynu wdrożonym przez program VM Image Builder lub na określonym koncie magazynu i kontenerze obiektów blob.
Jeśli używasz konta magazynu zarządzanego przez usługę jako miejsca docelowego dystrybucji dysku VHD, usługa przechowuje dysk VHD w tymczasowej grupie zasobów. Po usunięciu szablonu obrazu usługa usuwa również dysk VHD. Aby zachować dysk VHD niezależnie od szablonu obrazu, przenieś go do niestandardowego konta magazynu danych lub skopiuj go do innej lokalizacji przed usunięciem szablonu.
Azure Compute Gallery i Blob Storage są oddzielnymi usługami od VM Image Builder. Obrazy można dystrybuować do wielu obiektów docelowych, w tym obiektów docelowych w różnych regionach Azure. Ten model dystrybucji pomaga oddzielić region, w którym tworzysz obraz systemu, od regionów, w których używasz tego obrazu systemu.
Note
Narzędzie VM Image Builder obsługuje również obrazy zarządzane, które są starszym celem dystrybucji. Ten artykuł nie obejmuje obrazów zarządzanych. W przypadku scenariuszy produkcyjnych użyj Azure Compute Gallery.
Architektura fizyczna
VM Image Builder używa Izolowanych kompilacji obrazów do uruchamiania podstawowego procesu dostosowywania i walidacji obrazu. Usługa wdraża dedykowany zasób Azure Container Instances i maszynę wirtualną kompilacji w tymczasowej grupie zasobów w ramach subskrypcji. Zasób Container Instances uruchamia narzędzie HashiCorp Packer, aby dostosować i zweryfikować obraz, a VM Image Builder koordynuje tworzenie obrazu.
Aby uruchomić kompilacje obrazów, zarejestruj dostawcę zasobów Microsoft.ContainerInstance i upewnij się, że Twoja subskrypcja ma wystarczający przydział usługi Container Instances. Aby uzyskać więcej informacji na temat architektury usługi, obsługiwanych regionów i procesu kompilacji, zobacz Azure VM Image Builder overview.
Oddzielne usługi Azure, takie jak Azure Compute Gallery i Blob Storage, przechowują gotowe obrazy. Skonfiguruj każdy cel dystrybucji, aby spełnić wymagania dotyczące odporności.
Odporność na błędy przejściowe
Błędy przejściowe to krótkotrwałe, sporadyczne awarie w komponentach. Występują one często w środowisku rozproszonym, takich jak chmura, i są one normalną częścią operacji. Błędy przejściowe naprawiają się po krótkim czasie. Ważne jest, aby aplikacje mogły obsługiwać błędy przejściowe, zwykle ponawiając próby żądań, których dotyczy problem.
Wszystkie aplikacje hostowane w chmurze powinny postępować zgodnie ze wskazówkami dotyczącymi obsługi błędów przejściowych platformy Azure podczas komunikowania się z dowolnymi interfejsami API hostowanymi w chmurze, bazami danych i innymi składnikami. Aby uzyskać więcej informacji, zobacz Zalecenia dotyczące obsługi błędów przejściowych.
Zazwyczaj korzystasz z narzędzia Azure VM Image Builder przy użyciu portalu Azure, Azure CLI, Azure PowerShell lub infrastruktury jako kodu, takiego jak Bicep. Potok kompilacji jest odpowiedzialny za obsługę przejściowych awarii. Jeśli Azure Resource Manager zwraca przejściową odpowiedź o błędzie, spróbuj ponownie wykonać żądanie z odpowiednim opóźnieniem.
Jeśli kompilacja zakończy się niepowodzeniem, sprawdź jej lastRunStatus, dzienniki dostosowywania i weryfikacji oraz dane wyjściowe przebiegu dystrybucji przed ponownym uruchomieniem. Te szczegóły pomagają określić, czy przejściowy stan błędu, krok dostosowywania lub operacja dystrybucji obrazu spowodowała awarię. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z błędami kompilacji VM Image Builder.
Operacje kompilacji mogą również zależeć od systemów zewnętrznych, takich jak konta magazynu, repozytoria pakietów, lokalizacje obrazów źródłowych i cele dystrybucji. Zaprojektuj kroki dostosowywania i potoki, aby obsługiwać ponawianie prób po tymczasowym problemie z siecią, platformą lub zależnością.
Odporność na błędy strefy dostępności
Operacje budowania i gotowe obrazy zachowują się inaczej podczas awarii stref.
Operacje kompilacji: VM Image Builder nie obsługuje stref dostępności i nie zapewnia gwarancji odporności na awarie stref dla szablonów obrazów ani operacji kompilacji. Jeśli awaria strefy wpływa na zasoby używane przez kompilację, kompilacja może zakończyć się niepowodzeniem lub może zostać przerwana. VM Image Builder nie przenosi automatycznie kompilacji do innej strefy.
Jeśli musisz uruchomić kompilacje obrazów podczas przestojów strefy, wdróż szablony obrazów i zasoby pomocnicze w wielu regionach Azure. Aby uzyskać więcej informacji, zobacz Niestandardowe rozwiązania wieloregionowe w celu zapewnienia odporności.
Obrazy: Gotowe obrazy pozostają dostępne, jeśli ich pamięć masowa jest odporna na awarie stref.
Azure Compute Gallery: wersje obrazów Azure Compute Gallery mogą używać magazynu strefowo nadmiarowego (ZRS) w regionach docelowych obsługujących strefy dostępności. Dla każdego regionu docelowego wybierz ZRS jako typ replikacji konta magazynu. Wartość domyślna to magazyn lokalnie nadmiarowy (LRS), który nie jest odporny na awarie stref. Aby uzyskać więcej informacji, zobacz Azure Compute Gallery high availability.
Dyski VHD w Azure Blob Storage: jeśli nie używasz niestandardowego konta magazynu, narzędzie VM Image Builder domyślnie tworzy konto magazynu ZRS w regionach obsługujących strefy dostępności. Jeśli używasz niestandardowego konta magazynu danych, odpowiadasz za skonfigurowanie jego nadmiarowości w celu spełnienia wymagań. Użyj ZRS, aby przechowywać kopie wirtualnego dysku twardego w wielu strefach dostępności. Aby uzyskać więcej informacji o tym, jak działa ZRS, zobacz Niezawodność w Azure Blob Storage.
Odporność na awarie całego regionu
Operacje kompilacji i gotowe obrazy zachowują się inaczej podczas awarii obejmujących cały region.
Kompilacje wersji: Azure VM Image Builder jest usługą jednoregionową i nie zapewnia wbudowanego trybu failover w wielu regionach. Jeśli region hostujący szablon obrazu stanie się niedostępny, szablon obrazu i operacje kompilacji w tym regionie są również niedostępne. Usługa nie przełącza się automatycznie do innego regionu.
Jeśli musisz uruchomić kompilacje obrazów podczas awarii regionów, wdróż szablony obrazów i zasoby pomocnicze w wielu regionach Azure. Aby uzyskać więcej informacji, zobacz Niestandardowe rozwiązania wieloregionowe w celu zapewnienia odporności.
Obrazy maszyn: Gotowe obrazy maszyn pozostają dostępne, jeśli sposób ich przechowywania jest odporny na awarie całego regionu.
Azure Compute Gallery: możesz skonfigurować Azure Compute Gallery w celu replikowania wersji obrazów do wielu regionów. Replikacja jest asynchroniczna i można użyć wersji obrazu w regionie docelowym dopiero po zakończeniu replikacji do tego regionu.
Podczas awarii w jednym regionie ukończone repliki pozostają dostępne dla wdrożeń maszyn wirtualnych w sprawnych regionach docelowych. Jeśli jednak region zawierający zasób galerii jest niedostępny, nie możesz utworzyć ani zaktualizować zasobów galerii. Jeśli chcesz kontynuować publikowanie wersji obrazów podczas awarii regionu, zachowaj oddzielne galerie w oddzielnych regionach kompilacji obrazów. Aby uzyskać więcej informacji, zobacz replikację i najlepsze rozwiązania usługi Azure Compute Gallery.
Dyski VHD w Azure Blob Storage: domyślne miejsce docelowe dysków VHD zarządzane przez usługę nie zapewnia nadmiarowości geograficznej. W regionach obsługujących strefy dostępności używa magazynu ZRS, który nie chroni przed awarią całego regionu.
W regionie z regionem sparowanym można dystrybuować plik VHD do niestandardowego konta magazynu korzystającego z magazynu geograficznie nadmiarowego (GRS) lub magazynu geograficznie i strefowo nadmiarowego (GZRS). Dostęp do odczytu GRS (RA-GRS) i dostęp do odczytu GZRS (RA-GZRS) zapewniają dostęp tylko do odczytu za pośrednictwem pomocniczego punktu końcowego, ale nie obsługują trybu failover. Aby przywrócić normalny dostęp do odczytu i zapisu w sparowanym regionie, zainicjuj przełączenie awaryjne zarządzane przez klienta lub skopiuj dysk VHD z pomocniczego punktu końcowego do oddzielnego konta magazynu. Replikacja geograficzna jest asynchroniczna, więc nieplanowany tryb failover może utracić dane, które nie zostały zreplikowane. Sprawdź właściwość Czas ostatniej synchronizacji konta magazynu danych przed przejściem w tryb failover, jeśli jest to możliwe.
Aby uzyskać więcej informacji na temat zachowania trybu failover usługi Azure Blob Storage i alternatywnych metod replikowania danych między nieparowanymi regionami, zobacz Niezawodność w Azure Blob Storage.
Niestandardowe rozwiązania wieloregionowe zapewniające odporność
Jeśli musisz kontynuować tworzenie obrazów podczas awarii regionu, odpowiadasz za wdrażanie i obsługę niezależnych środowisk kompilacji w wielu regionach.
Wybierz regiony, które obsługują narzędzie VM Image Builder. W każdym regionie kompilacji należy wstępnie wdrożyć szablon obrazu i jego zależności specyficzne dla regionu, w tym tożsamości zarządzane i przypisania ról, konfigurację sieci, artefakty dostosowywania, obraz źródłowy lub replikę obrazu oraz cele dystrybucji.
Jeśli musisz publikować obrazy, gdy region galerii jest niedostępny, użyj niezależnego zasobu Compute Gallery w każdym regionie kompilacji. Replikowanie wersji obrazów z pojedynczej galerii nie powoduje, że galeria jest w pełni wieloregionowym zasobem.
Zdefiniuj te zasoby przy użyciu infrastruktury jako kodu i traktuj te definicje jako źródło prawdy. Zachowaj synchronizację środowisk regionalnych po zmianie konfiguracji i regularnie testuj, czy każde środowisko może kompilować i rozpowszechniać obraz.
Tworzenie kopii zapasowej i przywracanie
Azure VM Image Builder nie zastępuje procesu tworzenia kopii zapasowej i odzyskiwania. W większości przypadków artefakt, który ma znaczenie dla odzyskiwania, to gotowy obraz publikowany w usłudze Azure Compute Gallery lub VHD Storage.
Aby poprawić odzyskiwanie po uszkodzeniu lub dłuższej nieplanowanej awarii, postępuj zgodnie z następującymi zaleceniami:
Zachowaj opublikowane obrazy w Azure Compute Gallery lub innych docelowych miejscach dystrybucji zgodnie z wymaganiami dotyczącymi przechowywania.
Jeśli utworzysz dysk VHD i użyjesz domyślnego miejsca docelowego wirtualnego dysku twardego, skopiuj dysk VHD do własnego trwałego magazynu przed usunięciem szablonu obrazu.
Użyj kontroli źródła do przechowywania i wersjonowania definicji szablonów obrazów.
Użyj kontroli źródła lub innego typu trwałego magazynu do przechowywania i wersjonowania skryptów dostosowywania i pakietów.
Regularnie sprawdzaj, czy każde wstępnie wdrożone środowisko odzyskiwania może kompilować i rozpowszechniać image.
Odporność usługi na prace konserwacyjne
Microsoft zarządza utrzymaniem programu Azure VM Image Builder. VM Image Builder nie obsługuje ruchu aplikacji w czasie wykonywania, więc konserwacja nie ma wpływu na maszyny wirtualne, które zostały już utworzone na podstawie opublikowanych obrazów. Jeśli kompilacja jest opóźniona lub przerwana podczas konserwacji lub innego zdarzenia usługi, sprawdź jej stan i dzienniki i uruchom ją ponownie.
Użyj Azure Service Health do monitorowania planowanej konserwacji i incydentów usługi, które mogą mieć wpływ na region kompilacji.
Umowa dotycząca poziomu usług
Azure VM Image Builder nie zapewnia umowy SLA dotyczącej dostępności.
Każda umowa SLA, która ma zastosowanie do obiektu docelowego dystrybucji lub usługi magazynu, ma zastosowanie oddzielnie i nie zapewnia zobowiązania dotyczącego dostępności szablonu usługi VM Image Builder ani operacji tworzenia.