快速入門:使用 Bicep 部署 Azure AI 影片索引器 (VI)
使用此快速入門,您可以使用 Bicep 建立 Azure AI 影片索引器 (VI) 帳戶。
下列資源是使用 Bicep 樣本來安裝:
- Azure 儲存體帳戶。 VI 的記憶體帳戶必須是標準一般用途 v2 儲存體帳戶。
- 使用系統指派的受控識別連線至記憶體帳戶的 VI 帳戶
- 記憶體帳戶上 VI 帳戶的記憶體 Blob 數據參與者角色指派
必要條件
- 具有建立資源許可權的 Azure 訂用帳戶。
- 最新版的 Azure CLI。
- 建議:Bicep 工具。
檢閱 Bicep 檔案
本快速入門隨附的程式代碼可在官方 Azure AI 影片索引器範例中找到。
檔案 main.bicep
會協調兩個模組的安裝:
- 使用其相依 Azure 儲存體 帳戶資源部署 VI 帳戶的 VI 模組。
- 角色許可權模組,授與記憶體帳戶上 Azure Blob 儲存體 數據擁有者許可權的VI身分識別。
注意
最好將 Azure 資源分成多個 Bicep 模組。 如需 Bicep 模組運作方式的完整瞭解,請參閱 Bicep 模組 - Azure Resource Manager。
建立 Bicep 檔案
將下列內容複製並貼到工作目錄中名為 main.bicep 的檔案。
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 ] }
main.bicep
填入遺漏的參數以編輯檔案:- storageAccountName - 您想要連線至 Azure AI 影片索引器帳戶的記憶體帳戶名稱
- videoIndexerAccountName - VI 帳戶名稱
建立影片 AI 索引器 Bicep 模組
將下列內容複製並貼到工作目錄中名為 videoindexer.bicep 的檔案。 檔案會部署記憶體帳戶,以及具有系統指派身分識別的 VI 帳戶。
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
建立角色指派 Bicep 模組
將下列內容複製並貼到工作目錄中名為 role-assignment.bicep 的檔案。 模組會將記憶體 Blob 數據參與者角色授與系統指派的身分識別,該角色位於 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'
}
}
部署 Bicep 檔案
開啟終端機,並確定您已登入您的 Azure 訂用帳戶。
az login
az account set --subscription <your-subscription-name>
建立資源群組。
az group create -n <your-resource-group-name> -l eastus
將範本部署至資源群組。
az deployment group create --resource-group <your-resource-group-name> --template-file .\main.template.json
等候部署完成,並檢查 Azure 入口網站 上建立的資源。
相關文章
如果您不熟悉 Azure AI Video Indexer,請參閱:
如果您不熟悉 Bicep 部署,請參閱: