Samouczek: dodawanie zasobu do szablonu usługi ARM
W poprzednim samouczku przedstawiono sposób tworzenia i wdrażania pierwszego pustego szablonu usługi Azure Resource Manager (szablon arm). Teraz możesz przystąpić do wdrażania rzeczywistego zasobu w tym szablonie. W takim przypadku konto usługi Azure Storage. Ukończenie tej instrukcji trwa 9 minut .
Wymagania wstępne
Zalecamy ukończenie samouczka wprowadzającego dotyczącego szablonów, ale nie jest to wymagane.
Musisz mieć zainstalowany Visual Studio Code i pracować z rozszerzeniem Azure Resource Manager Tools oraz interfejsem Azure PowerShell lub interfejsem azure Command-Line (CLI). Aby uzyskać więcej informacji, zobacz narzędzia szablonów.
Dodaj zasób
Aby dodać definicję konta usługi Azure Storage do istniejącego szablonu, zapoznaj się z wyróżnionym plikiem JSON w poniższym przykładzie. Zamiast próbować skopiować sekcje szablonu, skopiuj cały plik i zastąp szablon jego zawartością.
Zastąp {provide-unique-name}
nawiasy klamrowe i nawiasami {}
klamrowymi unikatową nazwą konta magazynu.
Ważne
Nazwa konta magazynu musi być unikatowa na platformie Azure. Jest to tylko małe litery lub cyfry i ma limit 24 znaków. Możesz użyć nazwy, takiej jak store1 jako prefiks, a następnie dodać swoje inicjały i dzisiejszą datę. Nazwa może być na przykład store1abc06132022.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2021-09-01",
"name": "{provide-unique-name}",
"location": "eastus",
"sku": {
"name": "Standard_LRS"
},
"kind": "StorageV2",
"properties": {
"supportsHttpsTrafficOnly": true
}
}
]
}
Zgadywanie unikatowej nazwy konta magazynu nie jest łatwe i nie działa dobrze w przypadku automatyzowania dużych wdrożeń. W dalszej części tej serii samouczków użyjesz funkcji szablonu, które ułatwiają tworzenie unikatowej nazwy.
Właściwości zasobu
Być może zastanawiasz się, jak znaleźć właściwości do użycia dla każdego typu zasobu. Możesz użyć odwołania do szablonu usługi ARM , aby znaleźć typy zasobów, które chcesz wdrożyć.
Każdy wdrożony zasób ma co najmniej trzy następujące właściwości:
-
type
: typ zasobu. Ta wartość jest kombinacją przestrzeni nazw dostawcy zasobów i typu zasobu, takiego jakMicrosoft.Storage/storageAccounts
. -
apiVersion
: wersja interfejsu API REST do użycia do tworzenia zasobu. Każdy dostawca zasobów publikuje własne wersje interfejsu API, więc ta wartość jest specyficzna dla typu. -
name
: nazwa zasobu.
Większość zasobów ma location
również właściwość, która ustawia region, w którym jest wdrażany zasób.
Inne właściwości różnią się w zależności od typu zasobu i wersji interfejsu API. Ważne jest, aby zrozumieć połączenie między wersją interfejsu API i dostępnymi właściwościami, więc przejdźmy do bardziej szczegółowych informacji.
W tym samouczku do szablonu zostanie dodane konto magazynu. Wersję interfejsu API konta magazynu można zobaczyć na stronie storageAccounts 2021-09-01. Zwróć uwagę, że nie dodajesz wszystkich właściwości do szablonu. Wiele właściwości jest opcjonalnych. Dostawca Microsoft.Storage
zasobów może zwolnić nową wersję interfejsu API, ale wdrażana wersja nie musi ulec zmianie. Możesz kontynuować korzystanie z tej wersji i wiedzieć, że wyniki wdrożenia są spójne.
Jeśli wyświetlisz starszą wersję interfejsu API , może zostać wyświetlony mniejszy zestaw właściwości.
Jeśli zdecydujesz się zmienić wersję interfejsu API dla zasobu, upewnij się, że ocenisz właściwości dla tej wersji i odpowiednio dostosuj szablon.
Wdrażanie szablonu
Szablon można wdrożyć w celu utworzenia konta magazynu. Nadaj wdrożeniu inną nazwę, aby można było ją łatwo znaleźć w historii.
Jeśli grupa zasobów nie została utworzona, zobacz Tworzenie grupy zasobów. W przykładzie przyjęto założenie, że zmienna templateFile
została ustawiona na ścieżkę do pliku szablonu, jak pokazano w pierwszym samouczku.
New-AzResourceGroupDeployment `
-Name addstorage `
-ResourceGroupName myResourceGroup `
-TemplateFile $templateFile
Uwaga
Jeśli wdrożenie zakończy się niepowodzeniem, użyj przełącznika verbose
, aby uzyskać informacje o tworzonych zasobach. Użyj przełącznika, debug
aby uzyskać więcej informacji na temat debugowania.
Te błędy to dwa możliwe błędy wdrażania, które mogą wystąpić:
Error: Code=AccountNameInvalid; Message={provide-unique-name}
nie jest prawidłową nazwą konta magazynu. Nazwa konta magazynu musi mieć długość od 3 do 24 znaków, a tylko cyfry i małe litery.W szablonie zastąp
{provide-unique-name}
wartość unikatową nazwą konta magazynu. Zobacz Dodawanie zasobu.Error: Code=StorageAccountAlreadyTaken; Message=The storage account named store1abc09092019
jest już zrobione.W szablonie spróbuj użyć innej nazwy konta magazynu.
To wdrożenie trwa dłużej niż wdrożenie pustego szablonu, ponieważ tworzysz konto magazynu. Może to potrwać około minuty.
Weryfikowanie wdrożenia
Wdrożenie można zweryfikować, eksplorując grupę zasobów z Azure Portal.
- Zaloguj się do Azure portal.
- W menu po lewej stronie wybierz pozycję Grupy zasobów.
- Zaznacz pole wyboru po lewej stronie grupy myResourceGroup i wybierz pozycję myResourceGroup
- Wybierz wdrożona grupę zasobów.
- Zobaczysz, że konto magazynu zostało wdrożone.
- Zwróć uwagę, że etykieta wdrożenia jest teraz następująca : Wdrożenia: 2 Powiodło się.
Czyszczenie zasobów
Jeśli przejdziesz do następnego samouczka, nie musisz usuwać grupy zasobów.
Jeśli zatrzymasz się teraz, możesz wyczyścić wdrożone zasoby, usuwając grupę zasobów.
- W Azure Portal wybierz pozycję Grupa zasobów z menu po lewej stronie.
- Wpisz nazwę grupy zasobów w polu Filtruj dla dowolnego pola...
- Zaznacz pole wyboru obok pozycji myResourceGroup i wybierz wybraną nazwę grupy zasobów myResourceGroup lub grupę zasobów.
- Wybierz pozycję Usuń grupę zasobów z górnego menu.
Następne kroki
Utworzono prosty szablon do wdrożenia konta usługi Azure Storage. W kolejnych samouczkach dowiesz się, jak dodawać parametry, zmienne, zasoby i dane wyjściowe do szablonu. Te funkcje to bloki konstrukcyjne dla znacznie bardziej złożonych szablonów.