Delen via


Hoe kan ik resources maken en beheren in Azure?

Dit artikel is deel vijf in een reeks van zeven artikelen waarmee ontwikkelaars aan de slag kunnen met Azure.

Azure biedt verschillende hulpprogramma's voor het maken en beheren van de resources die uw toepassing gebruikt.

Verschillende hulpprogramma's ondersteunen verschillende use cases en de meeste Azure-ontwikkelaars gebruiken een combinatie van hulpprogramma's, afhankelijk van de taak. U kunt bijvoorbeeld het volgende doen:

  • Gebruik een GUI-hulpprogramma zoals Azure Portal of de Azure Tools-extensie voor VS Code bij het maken van prototypen van Azure-resources voor een nieuwe toepassing. GUI-hulpprogramma's begeleiden u bij het maken van nieuwe services en stellen u in staat om de opties voor een service te bekijken en te selecteren met behulp van vervolgkeuzelijsten en andere grafische elementen.

  • Schrijf een script met behulp van de Azure CLI of Azure PowerShell om een algemene taak te automatiseren. U kunt bijvoorbeeld een script maken waarmee een eenvoudige ontwikkelomgeving wordt gemaakt voor een nieuwe webtoepassing die bestaat uit een Azure-app Service, een database en blobopslag. Het schrijven van een script zorgt voor consistent maken van resources en is sneller dan het gebruik van een gebruikersinterface.

  • Gebruik IaC-hulpprogramma's (Infrastructure as Code) om Azure-resources declaratief te implementeren en te beheren. Met hulpprogramma's zoals Terraform, Ansible en Bicep kunt u Azure-resources coderen in declaratieve syntaxis, waardoor consistente implementatie in omgevingen wordt gegarandeerd en omgevingsdrift wordt voorkomen.

Azure Portal

Azure Portal is een webinterface die is ontworpen voor het beheren van Azure-resources. Azure Portal-functies:

  • Een gebruiksvriendelijke, webgebaseerde gebruikersinterface voor het maken en beheren van Azure-resources
  • Configureerbare dashboards maken
  • Toegang tot abonnementsinstellingen en factureringsgegevens

Een schermafbeelding van de Azure portal.

VS Code Azure Tools Extension Pack

Ontwikkelaars die Visual Studio Code gebruiken, beheren Azure-resources rechtstreeks in VS Code met het Azure Tools Extension Pack voor VS Code. Met het Extensiepakket voor Azure Tools kunt u het volgende doen:

  • Code maken, beheren en implementeren op websites met Azure App Service
  • Azure-databases maken, bladeren en er query's op uitvoeren
  • Azure Functions rechtstreeks maken, fouten opsporen en implementeren in VS Code
  • Containertoepassingen implementeren in VS Code

Zie de downloadpagina van de extensie voor de volledige lijst met functies.

Een schermopname van Visual Studio Code waarop het Azure Tools-extensiepakket is geïnstalleerd.

Opdrachtregelhulpmiddelen

Opdrachtregelprogramma's bieden efficiëntie, herhaalbaarheid en de mogelijkheid om terugkerende taken te scripten. Azure biedt twee opdrachtregelprogramma's: Azure CLI en Azure PowerShell. Beide hulpprogramma's zijn functioneel gelijkwaardig, dus selecteer het hulpprogramma dat past bij uw werkstroom.

Azure-CLI

De Azure CLI is een platformoverschrijdend opdrachtregelprogramma dat wordt uitgevoerd in Windows, Linux en macOS. De Azure CLI:

  • Beschikt over een beknopte, efficiënte syntaxis voor het beheren van Azure-resources
  • Voert resultaten uit als JSON (standaard). Resultaten kunnen ook worden opgemaakt als YAML, een ASCII-tabel of door tabs gescheiden waarden zonder sleutels
  • Biedt de mogelijkheid om query's uit te voeren en uitvoer vorm te geven met behulp van JMESPath-query's

Azure CLI-opdrachten kunnen eenvoudig worden geïntegreerd in populaire scripttalen, zoals Bash, zodat u algemene taken kunt uitvoeren.

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 is een set cmdlets om Azure-resources rechtstreeks vanuit PowerShell te beheren. Azure PowerShell is geïnstalleerd als een PowerShell-module en werkt met PowerShell 7.0.6 LTS en PowerShell 7.1.3 of hoger op alle platforms, waaronder Windows, macOS en Linux. Het is ook compatibel met Windows PowerShell 5.1.

Azure PowerShell kan nauw worden geïntegreerd met de PowerShell-taal. Opdrachten gebruiken een indeling voor zelfstandig naamwoorden en gegevens worden geretourneerd als PowerShell-objecten. Als u al bekend bent met PowerShell-scripts, is Azure PowerShell een natuurlijke keuze.

$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

Zie het artikel Het juiste opdrachtregelprogramma kiezen voor meer informatie over het kiezen tussen Azure CLI en Azure PowerShell.

Infrastructuur als code tools

Infrastructuur als code is het proces van het beheren en inrichten van resources via declaratieve configuratiebestanden. Infrastructuur als codehulpprogramma's maken gebruik van een declaratieve eindstatusspecificatie om te garanderen dat een set resources elke keer op dezelfde manier wordt gemaakt en geconfigureerd. De meeste infrastructuur-als-code tools bewaken ook middelen om ervoor te zorgen dat ze geconfigureerd blijven in de gewenste toestand.

Azure ondersteunt verschillende infrastructuur als codehulpprogramma's voor geautomatiseerde, herhaalde en betrouwbare implementaties.

Bicep

Bicep is een domeinspecifieke taal (DSL) die declaratieve syntaxis gebruikt om Azure-resources te implementeren. Deze taal voorziet in een beknopte syntaxis, betrouwbare typeveiligheid en ondersteuning voor hergebruik van code.

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

Hashicorp Terraform is een open-source-hulpprogramma voor het inrichten en beheren van cloudinfrastructuur. Het codificeert infrastructuur in configuratiebestanden die de topologie van cloudresources beschrijven. De Terraform CLI biedt een eenvoudig mechanisme voor het implementeren en versiebeheer van configuratiebestanden naar 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 is een open-sourceproduct waarmee het inrichten van clouds, configuratiebeheer en toepassingsimplementatie kan worden geautomatiseerd. Met Ansible kunt u virtuele machines, containers, netwerken en volledige cloudinfrastructuren inrichten. Met Ansible kunt u ook de implementatie en configuratie van resources in uw omgeving automatiseren.

- 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 en REST APIs

Azure-resources kunnen programmatisch worden gemaakt op basis van code. Hiermee kunt u toepassingen schrijven die Azure-resources dynamisch inrichten als reactie op gebruikersaanvragen. De Azure SDK biedt resourcebeheerpakketten in .NET, Go, Java, Java, JavaScript en Python waarmee u Azure-resources rechtstreeks in code kunt maken en beheren. U kunt met de Azure REST API ook Azure-resources beheren via HTTP-aanvragen naar een RESTful-eindpunt.