Gyakorlat – Gyermekerőforrások definiálása

Befejeződött

Feljegyzés

Amikor első alkalommal aktivál egy tesztkörnyezetet, és elfogadja a feltételeket, a Microsoft-fiókja egy új, Microsoft Learn Sandbox nevű Azure-címtárhoz lesz társítva. Emellett hozzá lesz adva egy Concierge-előfizetés nevű speciális előfizetéshez is.

Megkezdi a munkát az R&D-csapat kéréseinél, és úgy dönt, hogy egy Azure Cosmos DB-adatbázist hoz létre a drón tesztadataihoz. Ebben a gyakorlatban létre kell hoznia az Azure Cosmos DB-fiókot és két gyermekerőforrást, az egyiket a parent tulajdonság, a másikat pedig beágyazott erőforrásként.

A folyamat során a következőt kell elvégeznie:

  • Hozzon létre egy Bicep-fájlt, amely cosmos DB-fiókot helyez üzembe.
  • Adjon hozzá egy adatbázist és tárolót, amely a Cosmos DB-fiók gyermekerőforrása.
  • Telepítse a sablont, és ellenőrizze az üzembe helyezést.

Ez a gyakorlat a Visual Studio Code Bicep-bővítményét használja. Telepítse ezt a bővítményt a Visual Studio Code-ban.

Azure Cosmos DB-fiókot tartalmazó Bicep-sablon létrehozása

Először hozzon létre egy új Bicep-sablont egy Azure Cosmos DB-fiókkal. Ehhez tegye a következőket:

  1. Nyissa meg a Visual Studio Code-ot.

  2. Hozzon létre egy main.bicep nevű új fájlt.

  3. Mentse az üres fájlt, hogy a Visual Studio Code betöltse a Bicep-eszközt.

    Választhatja a Fájlmentés>másként lehetőséget, vagy nyomja le a Ctrl+S billentyűkombinációt a Windowsban (⌘+S macOS rendszeren). Ne feledje, hogy hová mentette a fájlt. Előfordulhat például, hogy létre szeretne hozni egy szkriptmappát , amelybe mentené.

  4. Adja hozzá a következő tartalmat a fájlhoz. Célszerű manuálisan megadni a másolás és beillesztés helyett. Így láthatja, hogyan segíti az eszközhasználat a Bicep-fájlok írását.

    param cosmosDBAccountName string = 'toyrnd-${uniqueString(resourceGroup().id)}'
    param location string = resourceGroup().location
    
    resource cosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2020-04-01' = {
      name: cosmosDBAccountName
      location: location
      properties: {
        databaseAccountOfferType: 'Standard'
        locations: [
          {
            locationName: location
          }
        ]
      }
    }
    

    Tipp.

    A Bicep szigorúan ügyel arra, hogy hová helyezze a sortöréseket, ezért ügyeljen arra, hogy csak ott adja hozzá a sortöréseket, ahol az itt látható.

    Ez a Bicep-sablon üzembe helyez egy Azure Cosmos DB-fiókot, amely a következő szakaszban létrehozott szülőerőforrás.

  5. Mentse a fájl módosításait.

Adatbázis hozzáadása

Ezután létre kell hoznia az adatbázist, amely az Azure Cosmos DB-fiók gyermekerőforrása.

  1. A fájl tetején, a két meglévő paraméter között adja hozzá a következő paramétert:

    param cosmosDBDatabaseThroughput int = 400
    
  2. A paraméterdeklarációk alatt adja hozzá a következő változót:

    var cosmosDBDatabaseName = 'FlightTests'
    
  3. Adja hozzá a következő erőforrásdefiníciót a fájl alján, az Azure Cosmos DB-fiók erőforrásdefiníciója alatt.

    resource cosmosDBDatabase 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2020-04-01' = {
      parent: cosmosDBAccount
      name: cosmosDBDatabaseName
      properties: {
        resource: {
          id: cosmosDBDatabaseName
        }
        options: {
          throughput: cosmosDBDatabaseThroughput
        }
      }
    }
    

    Figyelje meg, hogy ez a kód a tulajdonság használatával parent telepíti az adatbázist, amely egy gyermekerőforrás. Azt is figyelje meg, hogy a kód a teljes erőforrástípust használja, explicit módon megadva az API-verziót.

  4. Mentse a fájl módosításait.

Tároló hozzáadása

Most hozzáad egy másik gyermekerőforrást. Ezúttal beágyazott erőforrásként adja hozzá a parent tulajdonság használata helyett.

  1. A fájl tetején, a cosmosDBDatabaseName változódefiníció alatt adja hozzá a következő változókat:

    var cosmosDBContainerName = 'FlightTests'
    var cosmosDBContainerPartitionKey = '/droneId'
    
  2. A fájl alján, az adatbázis erőforrásdefiníciójában és a záró zárójel előtt adja} hozzá a következő beágyazott erőforrásdefiníciót:

    resource container 'containers' = {
      name: cosmosDBContainerName
      properties: {
        resource: {
          id: cosmosDBContainerName
          partitionKey: {
            kind: 'Hash'
            paths: [
              cosmosDBContainerPartitionKey
            ]
          }
        }
        options: {}
      }
    }
    

    Figyelje meg, hogy egy rövid erőforrástípust használt, mert a Bicep tisztában van azzal, containershogy a szülő erőforrástípus alá tartozik. A Bicep tudja, hogy a teljes erőforrástípus .Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers Nem adott meg API-verziót, ezért a Bicep a szülőerőforrásból 2020-04-01származó verziót használja.

    Ha végzett, a teljes Bicep-sablonnak az alábbi példához hasonlóan kell kinéznie:

    param cosmosDBAccountName string = 'toyrnd-${uniqueString(resourceGroup().id)}'
    param cosmosDBDatabaseThroughput int = 400
    param location string = resourceGroup().location
    
    var cosmosDBDatabaseName = 'FlightTests'
    var cosmosDBContainerName = 'FlightTests'
    var cosmosDBContainerPartitionKey = '/droneId'
    
    resource cosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2020-04-01' = {
      name: cosmosDBAccountName
      location: location
      properties: {
        databaseAccountOfferType: 'Standard'
        locations: [
          {
            locationName: location
          }
        ]
      }
    }
    
    resource cosmosDBDatabase 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2020-04-01' = {
      parent: cosmosDBAccount
      name: cosmosDBDatabaseName
      properties: {
        resource: {
          id: cosmosDBDatabaseName
        }
        options: {
          throughput: cosmosDBDatabaseThroughput
        }
      }
    
      resource container 'containers' = {
        name: cosmosDBContainerName
        properties: {
          resource: {
            id: cosmosDBContainerName
            partitionKey: {
              kind: 'Hash'
              paths: [
                cosmosDBContainerPartitionKey
              ]
            }
          }
          options: {}
        }
      }
    }
    
  3. Mentse a fájl módosításait.

A sablon üzembe helyezése az Azure-ban

Ha a sablont az Azure-ban szeretné üzembe helyezni, be kell jelentkeznie az Azure-fiókjába a Visual Studio Code termináljában. Győződjön meg arról, hogy telepítette az Azure CLI-t, és ne felejtsen el ugyanazzal a fiókkal bejelentkezni, mint a tesztkörnyezet aktiválásához.

  1. Válassza a Terminál menü Új terminál pontját. A terminálablak általában a képernyő alsó felében nyílik meg.

  2. Ha a terminálablak jobb oldalán látható rendszerhéj bash, a megfelelő rendszerhéj nyitva van, és a következő szakaszra ugorhat.

    Screenshot of the Visual Studio Code terminal window, with the bash option shown.

  3. Ha nem bash-rendszerhéjjelenik meg, válassza a rendszerhéj legördülő nyilat, majd válassza a Git Bash lehetőséget.

    Screenshot of the Visual Studio Code terminal window, with the terminal shell dropdown shown and Git Bash Default selected.

  4. A terminálhéjak listájában válassza a bash lehetőséget.

    Screenshot of the Visual Studio Code terminal window, with the bash terminal selected.

  5. A terminálban lépjen arra a könyvtárra, ahová a sablont mentette. Ha például a sablont a sablonok mappájába mentette, használhatja ezt a parancsot:

    cd templates
    

A Bicep telepítése

Futtassa a következő parancsot a Bicep legújabb verziójának biztosításához:

az bicep install && az bicep upgrade

Bejelentkezés az Azure-ba

  1. A Visual Studio Code terminálon jelentkezzen be az Azure-ba a következő parancs futtatásával:

    az login
    
  2. A megnyíló böngészőben jelentkezzen be az Azure-fiókjába.

    A Visual Studio Code terminál megjeleníti a fiókhoz társított előfizetések listáját.

  3. Állítsa be az alapértelmezett előfizetést az ebben a munkamenetben futtatott összes Azure CLI-parancshoz.

    az account set --subscription "Concierge Subscription"
    

    Feljegyzés

    Ha a közelmúltban több tesztkörnyezetet is használt, előfordulhat, hogy a terminál több Concierge-előfizetés-példányt is megjelenít. Ebben az esetben a következő két lépéssel állítsa be az egyiket alapértelmezett előfizetésként. Ha az előző parancs sikeres volt, és csak egy Concierge-előfizetés szerepel a listában, hagyja ki a következő két lépést.

  4. Kérje le a Concierge-előfizetések azonosítóit.

     az account list \
       --refresh \
       --query "[?contains(name, 'Concierge Subscription')].id" \
       --output table
    
  5. Az előfizetés azonosítójának segítségével állítsa be az alapértelmezett előfizetést. Cserélje a {your subscription ID} értékét a legutóbbi Concierge-előfizetés azonosítójára.

    az account set --subscription {your subscription ID}
    

Az alapértelmezett erőforráscsoport beállítása

Az Azure CLI használatakor beállíthatja az alapértelmezett erőforráscsoportot, és kihagyhatja a paramétert a gyakorlat többi Azure CLI-parancsából. Állítsa be az alapértelmezett értéket a tesztkörnyezetben létrehozott erőforráscsoportra.

az configure --defaults group="<rgn>[sandbox resource group name]</rgn>"

A sablon üzembe helyezése az Azure-ban

Futtassa a következő kódot a Visual Studio Code termináljáról a Bicep-sablon Azure-ban való üzembe helyezéséhez. A művelet végrehajtása egy-két percet is igénybe vehet, mielőtt sikeres üzembe helyezést lát.

az deployment group create --template-file main.bicep

A sablon Azure-ban való üzembe helyezéséhez jelentkezzen be az Azure-fiókjába a Visual Studio Code terminálból. Győződjön meg arról, hogy telepítette az Azure PowerShellt, és jelentkezzen be ugyanarra a fiókra, amely aktiválta a tesztkörnyezetet.

  1. Válassza a Terminál menü Új terminál pontját. A terminálablak általában a képernyő alsó felében nyílik meg.

  2. Ha a terminálablak jobb oldalán látható rendszerhéj PowerShell vagy pwsh, a megfelelő rendszerhéj nyitva van, és a következő szakaszra ugorhat.

    Screenshot of the Visual Studio Code terminal window, with the pwsh option displayed in the shell dropdown list.

  3. Ha nem PowerShell vagy pwsh rendszerhéj jelenik meg, válassza a rendszerhéj legördülő nyilat, majd válassza a PowerShellt.

    Screenshot of the Visual Studio Code terminal window, with the terminal shell dropdown list shown and PowerShell selected.

  4. A terminálhéjak listájában válassza a PowerShellt vagy a pwsh-t.

    Screenshot of the Visual Studio Code terminal window, with the PowerShell terminal selected.

  5. A terminálban lépjen arra a könyvtárra, ahová a sablont mentette. Ha például a sablont a sablonok mappájába mentette, használhatja ezt a parancsot:

    Set-Location -Path templates
    

A Bicep parancssori felület telepítése

A Bicep Azure PowerShellből való használatához telepítse a Bicep CLI-t.

Bejelentkezés az Azure-ba az Azure PowerShell használatával

  1. A Visual Studio Code terminálon futtassa a következő parancsot:

    Connect-AzAccount
    

    Megnyílik egy böngésző, amellyel bejelentkezhet az Azure-fiókjába.

  2. Miután bejelentkezett az Azure-ba, a terminál megjeleníti a fiókhoz társított előfizetések listáját.

    Ha aktiválta a tesztkörnyezetet, megjelenik egy Concierge-előfizetés nevű előfizetés. Használja a gyakorlat hátralévő részében.

  3. Állítsa be az alapértelmezett előfizetést az ebben a munkamenetben futtatott összes Azure PowerShell-parancshoz.

    $context = Get-AzSubscription -SubscriptionName 'Concierge Subscription'
    Set-AzContext $context
    

    Feljegyzés

    Ha a közelmúltban több tesztkörnyezetet is használt, előfordulhat, hogy a terminál több Concierge-előfizetés-példányt is megjelenít. Ebben az esetben a következő két lépéssel állítsa be az egyiket alapértelmezett előfizetésként. Ha az előző parancs sikeres volt, és csak egy Concierge-előfizetés szerepel a listában, hagyja ki a következő két lépést.

  4. Kérje le az előfizetés azonosítóját. Az alábbi parancs futtatásával listázhatja az előfizetéseit és azonosítóit. Keresse meg Concierge Subscription, majd másolja ki az azonosítót a második oszlopból. Úgy néz ki, mint cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0.

    Get-AzSubscription
    
  5. Módosítsa az aktív előfizetését Concierge-előfizetésre. Mindenképpen cserélje le {Az előfizetés azonosítója} elemet a másoltra.

    $context = Get-AzSubscription -SubscriptionId {Your subscription ID}
    Set-AzContext $context
    

Az alapértelmezett erőforráscsoport beállítása

Beállíthatja az alapértelmezett erőforráscsoportot, és kihagyhatja a paramétert a gyakorlat többi Azure PowerShell-parancsából. Állítsa be ezt az alapértelmezett beállítást a tesztkörnyezetben önnek létrehozott erőforráscsoportra.

Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>

A sablon üzembe helyezése az Azure-ban

Telepítse a sablont az Azure-ban az alábbi Azure PowerShell-paranccsal a terminálon. A művelet végrehajtása egy-két percet is igénybe vehet, mielőtt sikeres üzembe helyezést lát.

New-AzResourceGroupDeployment -TemplateFile main.bicep

Az üzemelő példány ellenőrzése

  1. Nyissa meg az Azure Portalt , és győződjön meg arról, hogy a tesztkörnyezet-előfizetésben van:

    1. Válassza ki az avatart az oldal jobb felső sarkában.

    2. Válassza a Címtár váltása lehetőséget. A listában válassza a Microsoft Learn-tesztkörnyezet címtárat.

  2. A kezdőlapon válassza az Erőforráscsoportok lehetőséget. Megjelenik az Erőforráscsoportok panel.

  3. Válassza a [tesztkörnyezeti erőforráscsoport neve] nevű erőforráscsoportot.

  4. Az Áttekintésben láthatja, hogy egy üzembe helyezés sikeres volt.

    Screenshot of the Azure portal interface for the resource group overview, with the deployments section showing that one succeeded.

  5. Kattintson az 1 sikeres elemre az üzemelő példány részleteinek megtekintéséhez.

    Screenshot of the Azure portal interface for the deployments, with the one deployment listed and a succeeded status.

  6. Válassza ki a főként hívott üzembe helyezést az üzembe helyezett erőforrások megtekintéséhez, majd az üzembe helyezés részleteinek kiválasztásával bontsa ki. Ebben az esetben egy Cosmos DB-fiók, adatbázis és tároló szerepel a listában.

    Screenshot of the Azure portal interface for the specific deployment, with three Cosmos DB resources listed.

  7. Hagyja nyitva a lapot a böngészőben, így később újra ellenőrizheti az üzemelő példányokat.