Guida introduttiva: Distribuire Azure AI Video Indexer (VI) usando Bicep
Importante
A causa dell'annuncio di ritiro Servizi multimediali di Azure, Azure AI Video Indexer annuncia le modifiche alle funzionalità di Azure AI Video Indexer. Vedere Modifiche correlate al ritiro di Servizi multimediali di Azure (AMS) per comprendere cosa significa per l'account Video Indexer di Azure per intelligenza artificiale. Vedere la guida alla preparazione per il ritiro di AMS: aggiornamento VI e migrazione.
Con questa guida introduttiva è possibile creare un account Di Azure AI Video Indexer (VI) usando Bicep.
Le risorse seguenti vengono installate usando il modello Bicep:
- Account di archiviazione di Azure
- Account VI con una connessione all'account di archiviazione usando un'identità gestita assegnata dal sistema
- Assegnazione di ruolo collaboratore ai dati BLOB Archiviazione per l'account di archiviazione vi nell'account di archiviazione
Prerequisiti
- Una sottoscrizione di Azure con l'autorizzazione per creare risorse.
- L'ultima versione dell'interfaccia della riga di comando di Azure.
- Consigliato: strumenti Bicep.
Esaminare il file Bicep
Il codice che accompagna questa guida introduttiva è disponibile negli esempi ufficiali di Video Indexer per Intelligenza artificiale di Azure.
Il main.bicep
file orchestra l'installazione di due moduli:
- Il modulo VI che distribuisce l'account VI con la risorsa account dipendente Archiviazione di Azure.
- Modulo Autorizzazione ruolo che concede all'identità VI l'autorizzazione del proprietario dei dati Archiviazione BLOB di Azure per l'account di archiviazione.
Nota
È consigliabile separare le risorse di Azure in più moduli Bicep. Per una conoscenza completa del funzionamento dei moduli Bicep, vedere Moduli Bicep - Azure Resource Manager.
Creare il file Bicep
Copiare e incollare il contenuto seguente in un file denominato main.bicep nella directory di lavoro.
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 ] }
Modificare il
main.bicep
file inserendo i parametri mancanti:- storageAccountName : nome dell'account di archiviazione che si vuole connettere all'account Di Azure AI Video Indexer
- videoIndexerAccountName - Nome account VI
Creare un modulo Bicep di Video AI Indexer
Copiare e incollare il contenuto seguente in un file denominato videoindexer.bicep nella directory di lavoro. Il file distribuisce l'account di archiviazione insieme a un account VI con un'identità assegnata dal sistema.
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
Creare un modulo Bicep per l'assegnazione di ruolo
Copiare e incollare il contenuto seguente in un file denominato role-assignment.bicep nella directory di lavoro. Il modulo concede all'identità assegnata dal sistema il ruolo di collaboratore ai dati blob di Archiviazione nell'account di archiviazione dell'account VI.
@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'
}
}
Distribuire i file Bicep
Aprire un terminale e assicurarsi di aver eseguito l'accesso alla sottoscrizione di Azure.
az login
az account set --subscription <your-subscription-name>
Crea un gruppo di risorse.
az group create -n <your-resource-group-name> -l eastus
Distribuire il modello nel gruppo di risorse.
az deployment group create --resource-group <your-resource-group-name> --template-file .\main.template.json
Attendere il completamento della distribuzione e controllare la risorsa creata in portale di Azure.
Articoli correlati
Se non si ha familiarità con Azure AI Video Indexer, vedere:
- Documentazione di Video Indexer per intelligenza artificiale di Azure
- Portale per sviluppatori di Video Indexer per intelligenza artificiale di Azure
- Esempi ufficiali di Video Indexer per Intelligenza artificiale di Azure
Se non si ha familiarità con la distribuzione Bicep, vedere:
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per