Automatyzowanie wdrażania przy użyciu interfejsu wiersza polecenia platformy Azure
Automatyzacja bazy danych nie jest już tylko dla dużych przedsiębiorstw; teraz ważne jest, aby firmy wszystkich rozmiarów pozostawały konkurencyjne. Jako administrator bazy danych automatyzowanie zadań bazy danych ma kluczowe znaczenie z kilku powodów:
- Szczegółowa kontrola nad aplikacjami i bazami danych
- Łatwa skalowalność, zwiększenie wydajności podczas zarządzania wieloma zasobami
- Możliwość ponownego użycia skryptów do automatyzacji rutynowych zadań
- Uproszczone rozwiązywanie problemów, gdy narzędzia graficznego interfejsu użytkownika są niedostępne
Interfejs azure Command-Line (CLI) to wieloplatformowe narzędzie ułatwiające tworzenie zasobów platformy Azure i zarządzanie nimi. Polecenia można uruchamiać za pośrednictwem terminalu przy użyciu interakcyjnych monitów lub skryptów.
Interfejs wiersza polecenia platformy Azure można zainstalować na komputerach z systemem Linux, Mac lub Windows. Można go również uruchomić z poziomu przeglądarki przy użyciu terminalu usługi Cloud Shell w witrynie Azure Portal lub w kontenerze platformy Docker.
Składnia interfejsu wiersza polecenia platformy Azure jest zgodna ze wzorcemreference name - command - parameter - parameter value. Na przykład przełączanie między subskrypcjami jest typowym zadaniem. Oto składnia:
az account set --subscription "my subscription name"
Program PowerShell a interfejs wiersza polecenia platformy Azure
Program Azure PowerShell i interfejs wiersza polecenia platformy Azure to międzyplatformowe narzędzia wiersza polecenia, które umożliwiają tworzenie zasobów platformy Azure w systemach Windows, macOS i Linux oraz zarządzanie nimi. Podstawowa różnica między nimi tkwi w środowiskach powłoki, które obsługują.
| Środowisko powłoki | Azure CLI | Azure PowerShell |
|---|---|---|
| Cmd | Tak | |
| Bash | Tak | |
| Windows PowerShell | Tak | Tak |
| PowerShell | Tak | Tak |
Aby wybrać odpowiednie narzędzie, rozważ swoje doświadczenie i środowisko pracy.
Interfejs wiersza polecenia platformy Azure jest podobny do skryptów powłoki bash, dzięki czemu jest intuicyjny dla tych, którzy zwykle pracują z systemami Linux. Z drugiej strony program Azure PowerShell zawiera moduły, które ułatwiają zarządzanie zasobami platformy Azure za pomocą programu PowerShell. Polecenia programu PowerShell są zgodne ze standardową składnią rzeczowników, dzięki czemu jest ona naturalna dla osób zaznajomionych z systemami Windows.
Poniżej przedstawiono krótkie porównanie niektórych często używanych poleceń w formularzach interfejsu wiersza polecenia i programu PowerShell:
| Polecenie | Azure CLI | Azure PowerShell |
|---|---|---|
| Logowanie za pomocą przeglądarki internetowej | az login | Connect-AzAccount |
| Uzyskiwanie dostępnych subskrypcji | lista kont az | Get-AzSubscription (polecenie używane do pobierania subskrypcji w Microsoft Azure) |
| Ustawianie subskrypcji | az account set –subscription | Set-AzContext -Subscription |
| Wyświetlanie listy wszystkich maszyn wirtualnych | az vm list | Get-AzVM |
| Tworzenie nowego serwera SQL | az sql server create | New-AzSqlServer |
Wdrażanie usługi SQL Database przy użyciu interfejsu wiersza polecenia platformy Azure
Oto przykład wdrażania usługi SQL Database i tworzenia reguły zapory w celu zezwolenia na dostęp z usług platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure:
let "randomIdentifier=$RANDOM*$RANDOM"
$resourceGroup = "<your resource group>"
$location = "<your location preference>"
$server = "dp300-sql-server-$randomIdentifier"
$login = "sqladmin"
$password = "Pa$$w0rD-$randomIdentifier"
az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password
az sql server firewall-rule create --resource-group $resourceGroup --server $server -n AllowYourIp --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0
Aby dowiedzieć się więcej o wszystkich dostępnych poleceniach interfejsu wiersza polecenia usługi Azure SQL, zobacz Polecenia interfejsu wiersza polecenia usługi Azure SQL.
Wdrażanie szablonu usługi Azure Resource Manager (ARM) przy użyciu interfejsu wiersza polecenia platformy Azure i programu PowerShell
W programie PowerShell masz wiele opcji dla zakresu wdrożenia. Można wdrożyć do grupy zasobów, subskrypcji, grupy zarządzania (która jest kolekcją subskrypcji w ramach tego samego szablonu Azure i często jest używana we wdrożeniach dużych przedsiębiorstw) lub do dzierżawy. Szablony usługi Azure Resource Manager są sparametryzowane, co wymaga przekazania parametrów w tekście lub za pośrednictwem pliku parametrów, jak pokazano w poniższym przykładzie.
New-AzResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName ExampleResourceGroup `
-TemplateFile c:\MyTemplates\azuredeploy.json `
-TemplateParameterFile c:\MyTemplates\storage.parameters.json
Pliki parametrów i szablonów można przechowywać w repozytorium Git, usłudze Azure Blob Storage lub w dowolnej innej dostępnej lokalizacji z maszyny wdrażającej.
Interfejs wiersza polecenia platformy Azure oferuje te same opcje zakresu wdrożenia co program PowerShell. Możesz użyć lokalnych lub zdalnych plików parametrów i szablonów, tak jak w przypadku programu PowerShell, jak pokazano w poniższym przykładzie.
az deployment group create --resource-group ExampleResourceGroup --template-file '\path\template.json'
Aby wdrożyć zdalne połączone szablony ze ścieżką względną przechowywaną na koncie magazynu, użyj ciągu zapytania, aby określić token SAS:
az deployment group create \
--name linkedTemplateWithRelativePath \
--resource-group myResourceGroup \
--template-uri "https://stage20210126.blob.core.windows.net/template-staging/mainTemplate.json" \
--query-string $sasToken
Uwaga
Obecnie interfejs wiersza polecenia platformy Azure nie obsługuje bezpośredniego wdrażania zdalnych plików Bicep. Zamiast tego możesz użyć interfejsu wiersza polecenia Bicep, aby przekonwertować plik Bicep na szablon JSON, a następnie wdrożyć szablon JSON z lokalizacji zdalnej.