Sdílet prostřednictvím


Jak mohu vytvářet a spravovat prostředky v Azure?

Tento článek je 5. částí série sedmi článků, které vývojářům pomůžou začít pracovat s Azure.

Azure nabízí různé nástroje pro vytváření a správu prostředků, které vaše aplikace používá.

Různé nástroje podporují různé případy použití a většina vývojářů Azure v závislosti na úloze používá kombinaci nástrojů. Můžete například:

  • Při vytváření prototypů prostředků Azure pro novou aplikaci použijte nástroj grafického uživatelského rozhraní, jako je Azure Portal nebo rozšíření Azure Tools pro VS Code . Nástroje grafického uživatelského rozhraní vás provedou procesem vytváření nových služeb a umožňují zkontrolovat a vybrat možnosti služby pomocí rozevíracích nabídek a dalších grafických prvků.

  • Napište skript pomocí Azure CLI nebo Azure PowerShellu k automatizaci běžné úlohy. Můžete například vytvořit skript, který vytvoří základní vývojové prostředí pro novou webovou aplikaci, která se skládá ze služby Aplikace Azure, databáze a úložiště objektů blob. Vytvoření skriptu zajišťuje konzistentní vytváření prostředků a je rychlejší než použití uživatelského rozhraní.

  • Pomocí nástrojů Infrastruktura jako kód (IaC) deklarativně nasaďte a spravujte prostředky Azure. Nástroje, jako je Terraform, Ansible a Bicep, umožňují kodifikovat prostředky Azure v deklarativní syntaxi, zajistit konzistentní nasazení napříč prostředími a zabránit posunu prostředí.

Azure Portal

Azure Portal je webové rozhraní navržené pro správu prostředků Azure. Funkce webu Azure Portal:

  • Snadno použitelné webové uživatelské rozhraní pro vytváření a správu prostředků Azure
  • Vytváření konfigurovatelných řídicích panelů
  • Přístup k nastavení předplatného a fakturačním údajům

Snímek obrazovky s webem Azure Portal

Sada rozšíření Azure Tools Extension Pack pro VS Code

Vývojáři, kteří používají Visual Studio Code , spravují prostředky Azure přímo ve VS Code pomocí balíčku rozšíření Azure Tools pro VS Code. Sada rozšíření Azure Tools umožňuje:

  • Vytvoření, správa a nasazení kódu na weby pomocí Azure App Service
  • Vytváření, procházení a dotazování databází Azure
  • Vytvoření, ladění a nasazení Azure Functions přímo ve VS Code
  • Nasazení kontejnerizovaných aplikací ve VS Code

Úplný seznam funkcí najdete na stránce pro stažení rozšíření.

Snímek obrazovky znázorňující Visual Studio Code s nainstalovanou sadou rozšíření Azure Tools

Nástroje příkazového řádku

Nástroje příkazového řádku nabízejí efektivitu, opakovatelnost a schopnost skriptovat opakované úkoly. Azure poskytuje dva nástroje příkazového řádku: Azure CLI a Azure PowerShell. Oba nástroje jsou funkčně ekvivalentní, proto vyberte ten, který odpovídá vašemu pracovnímu postupu.

Azure CLI

Azure CLI je multiplatformní nástroj příkazového řádku, který běží ve Windows, Linuxu a macOS. The Azure CLI:

  • Nabízí stručnou a efektivní syntaxi pro správu prostředků Azure.
  • Výstupy jsou ve formátu JSON (ve výchozím nastavení). Výsledky se dají formátovat také jako YAML, tabulka ASCII nebo hodnoty oddělené tabulátorem bez kláves.
  • Poskytuje možnost dotazování a tvarování výstupu pomocí dotazů JMESPath.

Příkazy Azure CLI se snadno integrují do oblíbených skriptovacích jazyků, jako je Bash, a umožňují skriptovat běžné úlohy.

LOCATION='eastus'                                        
RESOURCE_GROUP_NAME='msdocs-expressjs-mongodb-tutorial'

WEB_APP_NAME='msdocs-expressjs-mongodb-123'
APP_SERVICE_PLAN_NAME='msdocs-expressjs-mongodb-plan-123'    
RUNTIME='NODE|14-lts'

# Create a resource group
az group create \
    --location $LOCATION \
    --name $RESOURCE_GROUP_NAME

# Create an app service plan
az appservice plan create \
    --name $APP_SERVICE_PLAN_NAME \
    --resource-group $RESOURCE_GROUP_NAME \
    --sku B1 \
    --is-linux

# Create the web app in the app service
az webapp create \
    --name $WEB_APP_NAME \
    --runtime $RUNTIME \
    --plan $APP_SERVICE_PLAN_NAME \
    --resource-group $RESOURCE_GROUP_NAME 

Azure PowerShell

Azure PowerShell je sada rutin pro správu prostředků Azure přímo z PowerShellu. Azure PowerShell je nainstalovaný jako modul PowerShellu a funguje s PowerShellem 7.0.6 LTS a PowerShellem 7.1.3 nebo novějším na všech platformách, včetně Windows, macOS a Linuxu. Je také kompatibilní s PowerShellem 5.1 ve Windows.

Azure PowerShell se úzce integruje s jazykem PowerShellu. Příkazy používají formát podstatné jméno-sloveso a data se vrátí jako objekty PowerShellu. Pokud už znáte skriptování PowerShellu, Azure PowerShell je přirozenou volbou.

$location = 'eastus'
$resourceGroupName = 'msdocs-blob-storage-demo-azps'
$storageAccountName = 'stblobstoragedemo999'

# Create a resource group
New-AzResourceGroup `
    -Location $location `
    -Name $resourceGroupName

# Create the storage account
New-AzStorageAccount `
    -Name $storageAccountName `
    -ResourceGroupName $resourceGroupName `
    -Location $location `
    -SkuName Standard_LRS

Další informace o výběru mezi Azure CLI a Azure PowerShellem najdete v článku Volba správného nástroje příkazového řádku.

Infrastruktura jako nástroje kódu

Infrastruktura jako kód je proces správy a zřizování prostředků prostřednictvím deklarativních konfiguračních souborů. Infrastruktura jako nástroje kódu používá deklarativní specifikaci koncového stavu k zajištění, že se sada prostředků vytvoří a nakonfiguruje stejným způsobem pokaždé. Většina infrastruktury jako nástrojů kódu také monitoruje prostředky, aby se zajistilo, že zůstanou nakonfigurované v požadovaném stavu.

Azure podporuje různé infrastruktury jako nástroje kódu pro automatizovaná, opakovaná a spolehlivá nasazení.

Biceps

Bicep je jazyk specifický pro doménu (DSL), který k nasazování prostředků Azure používá deklarativní syntaxi. Poskytuje stručnou syntaxi, spolehlivou bezpečnost typů a podporu pro opakované použití kódu.

param location string = resourceGroup().location
param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}'

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-06-01' = {
  name: storageAccountName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {
    accessTier: 'Hot'
  }
}

Terraform

Terraform od společnosti HashiCorp je opensourcový nástroj sloužící ke zřizování a správě cloudové infrastruktury. Konfiguruje infrastrukturu v konfiguračních souborech, které popisují topologii cloudových prostředků. Rozhraní příkazového řádku Terraformu poskytuje jednoduchý mechanismus pro nasazení a správu verzí konfiguračních souborů do Azure.

provider "azurerm" {
  features {}
}

resource "azurerm_resource_group" "main" {
  name     = "${var.prefix}-resources"
  location = var.location
}

resource "azurerm_app_service_plan" "main" {
  name                = "${var.prefix}-asp"
  location            = azurerm_resource_group.main.location
  resource_group_name = azurerm_resource_group.main.name
  kind                = "Linux"
  reserved            = true

  sku {
    tier = "Standard"
    size = "S1"
  }
}

resource "azurerm_app_service" "main" {
  name                = "${var.prefix}-appservice"
  location            = azurerm_resource_group.main.location
  resource_group_name = azurerm_resource_group.main.name
  app_service_plan_id = azurerm_app_service_plan.main.id

  site_config {
    linux_fx_version = "NODE|10.14"
  }
}

Ansible

Ansible je opensourcový produkt, který automatizuje zřizování cloudu, správu konfigurace a nasazení aplikací. Pomocí Ansible můžete zřídit virtuální počítače, kontejnery, sítě a kompletní cloudové infrastruktury. Ansible také umožňuje automatizovat nasazení a konfiguraci prostředků ve vašem prostředí.

- hosts: localhost
  connection: local
  vars:
    resource_group: myResourceGroup
    webapp_name: myfirstWebApp
    plan_name: myAppServicePlan
    location: eastus
  tasks:
    - name: Create a resource group
      azure_rm_resourcegroup:
        name: "{{ resource_group }}"
        location: "{{ location }}"

    - name: Create App Service on Linux with Java Runtime
      azure_rm_webapp:
        resource_group: "{{ resource_group }}"
        name: "{{ webapp_name }}"
        plan:
          resource_group: "{{ resource_group }}"
          name: "{{ plan_name }}"
          is_linux: true
          sku: S1
          number_of_workers: 1
        frameworks:
          - name: "java"
            version: "8"
            settings:
              java_container: tomcat
              java_container_version: 8.5

Azure SDK a rozhraní REST API

Prostředky Azure je možné vytvářet programově z kódu. Díky tomu můžete psát aplikace, které dynamicky zřizují prostředky Azure v reakci na požadavky uživatelů. Sada Azure SDK poskytuje balíčky pro správu prostředků v .NET, Go, Java, JavaScriptu a Pythonu, které umožňují vytvářet a spravovat prostředky Azure přímo v kódu. Alternativně rozhraní Azure REST API umožňuje spravovat prostředky Azure prostřednictvím požadavků HTTP na koncový bod RESTful.