Schnellstart: Bereitstellen von Azure AI Video Indexer (VI) mithilfe von Bicep
Mithilfe dieser Schnellstartanleitung können Sie ein Azure AI Video Indexer (VI)-Konto mithilfe von Bicep erstellen.
Die folgenden Ressourcen werden mithilfe der Bicep-Vorlage installiert:
- Azure Storage-Konto. Speicherkonten für VI müssen ein Standard-V2-Speicherkonto sein.
- VI-Konto mit einer Verbindung mit dem Speicherkonto mithilfe einer vom System zugewiesenen verwalteten Identität
- Rollenzuweisung der Rolle "Storage Blob Data Contributor" für das VI-Konto für das Speicherkonto
Voraussetzungen
- Ein Azure-Abonnement mit Der Berechtigung zum Erstellen von Ressourcen.
- Die aktuelle Version der Azure-Befehlszeilenschnittstelle.
- Empfohlen: Bicep-Tools.
Überprüfen der Bicep-Datei
Der Code, der diese Schnellstartanleitung begleitet, finden Sie in den offiziellen Azure AI Video Indexer Samples.
Die main.bicep
Datei koordiniert die Installation von zwei Modulen:
- Das VI-Modul, das das VI-Konto mit seiner abhängigen Azure Storage-Kontoressource bereitstellt.
- Das Rollenberechtigungsmodul, das der VI-Identität die Berechtigung "Azure Blob Storage Data Owner" für das Speicherkonto erteilt.
Hinweis
Es empfiehlt sich, Azure-Ressourcen auf mehrere Bicep-Module zu trennen. Ein umfassendes Verständnis der Funktionsweise von Bicep-Modulen finden Sie unter Bicep-Module – Azure Resource Manager.
Erstellen der Bicep-Datei
Kopieren Sie den folgenden Inhalt, und fügen Sie ihn in eine Datei mit dem Namen "main.bicep " in Ihr Arbeitsverzeichnis ein.
param location string = resourceGroup().location @description('Storage Account Name') param storageAccountName string = “<add_your_storage_account_name” @description('Video Indexer Account Name') param videoIndexerAccountName string = = “<add_your_videoindexer_account_name>” module videoIndexer 'videoIndexer.bicep' = { name: 'videoIndexer.bicep' params: { location: location storageAccountName: storageAccountName videoIndexerAccountName: videoIndexerAccountName } } // Role Assignment must be on a separate resource module roleAssignment 'role-assignment.bicep' = { name: 'grant-storage-blob-data-contributor' params: { servicePrincipalObjectId: videoIndexer.outputs.servicePrincipalId storageAccountName: storageAccountName } dependsOn: [ videoIndexer ] }
Bearbeiten Sie die
main.bicep
Datei, indem Sie die fehlenden Parameter ausfüllen:- storageAccountName – der Name des Speicherkontos, das Sie mit dem Azure AI Video Indexer-Konto verbinden möchten
- videoIndexerAccountName - der VI-Kontoname
Erstellen eines Video AI Indexer Bicep-Moduls
Kopieren Sie den folgenden Inhalt, und fügen Sie ihn in eine Datei namens "videoindexer.bicep " in Ihr Arbeitsverzeichnis ein. Die Datei stellt das Speicherkonto zusammen mit einem VI-Konto mit einer vom System zugewiesenen Identität bereit.
param location string = resourceGroup().location
@description('Storage Account Name')
param storageAccountName string
@description('Video Indexer Account Name')
param videoIndexerAccountName string
@description('Storage Account Kind')
var storageKind = 'StorageV2'
@description('Storage Account Sku')
var storageSku = 'Standard_LRS'
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: storageAccountName
location: location
kind: storageKind
properties: {
minimumTlsVersion: 'TLS1_2'
}
sku: {
name: storageSku
}
}
resource videoIndexer 'Microsoft.VideoIndexer/accounts@2024-01-01' = {
name: videoIndexerAccountName
location: location
identity: {
type: 'SystemAssigned'
}
properties: {
storageServices: {
resourceId: storageAccount.id
}
}
}
output storageAccountName string = storageAccount.name
output accountName string = videoIndexer.name
output servicePrincipalId string = videoIndexer.identity.principalId
Erstellen eines Rollenzuweisungsmoduls Bicep
Kopieren Sie den folgenden Inhalt, und fügen Sie ihn in eine Datei namens role-assignment.bicep in Ihrem Arbeitsverzeichnis ein. Das Modul gewährt dem System die zugewiesene Identität der Rolle von Storage Blob Data Contributor für das Speicherkonto des VI-Kontos.
@secure()
param servicePrincipalObjectId string
param storageAccountName string
@description('Storage Blob Data Contributor Role Id')
var storageBlobDataContributorRoleId = 'ba92f5b4-2d11-453d-a403-e96b0029c9fe'
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' existing= {
name: storageAccountName
}
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2020-04-01-preview' = {
name: guid(storageAccount.id, servicePrincipalObjectId, 'Storage Blob Data Contributor')
scope: storageAccount
properties: {
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', storageBlobDataContributorRoleId)
principalId: servicePrincipalObjectId
principalType: 'ServicePrincipal'
}
}
Bereitstellen der Bicep-Dateien
Öffnen Sie ein Terminal, und stellen Sie sicher, dass Sie bei Ihrem Azure-Abonnement angemeldet sind.
az login
az account set --subscription <your-subscription-name>
Erstellen Sie eine Ressourcengruppe.
az group create -n <your-resource-group-name> -l eastus
Bereitstellen der Vorlage für die Ressourcengruppe.
az deployment group create --resource-group <your-resource-group-name> --template-file .\main.template.json
Warten Sie, bis die Bereitstellung abgeschlossen ist, und prüfen Sie die erstellte Ressource auf Azure-Portal.
Verwandte Artikel
Wenn Sie in Azure KI Video Indexer einsteigen, sehen Sie sich diese Ressourcen an:
- Die Dokumentation zur Azure AI-Videoindexer
- Das Azure AI Video Indexer-Entwicklerportal
- Die offiziellen Azure AI-Videoindexerbeispiele
Wenn Sie in die Bereitstellung von Bicep einsteigen, sehen Sie sich diese Ressourcen an: