Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Komentar
Untuk mempelajari tentang menjalankan skrip selama penyebaran, lihat Menggunakan skrip penyebaran di Bicep atau Menggunakan skrip penyebaran dalam templat ARM.
Definisi sumber daya Bicep
Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:
- Grup sumber daya
- Lihat perintah penyebaran grup sumber daya
Untuk daftar properti yang diubah di setiap versi API, lihat mengubah log.
Contoh Penggunaan
Sampel Bicep
Contoh dasar penyebaran Skrip Penyebaran Sumber Daya.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource deploymentScript 'Microsoft.Resources/deploymentScripts@2020-10-01' = {
name: resourceName
location: location
kind: 'AzurePowerShell'
properties: {
azPowerShellVersion: '8.3'
cleanupPreference: 'Always'
retentionInterval: 'P1D'
scriptContent: ''' $output = ''Hello''
Write-Output $output
$DeploymentScriptOutputs = @{}
$DeploymentScriptOutputs[''text''] = $output
'''
timeout: 'P1D'
}
}
Modul Terverifikasi Azure
Modul Terverifikasi Azure berikut dapat digunakan untuk menyebarkan jenis sumber daya ini.
| Modul | Deskripsi |
|---|---|
| Skrip Penyebaran | Modul Sumber Daya AVM untuk Skrip Penerapan |
Sampel Mulai Cepat Azure
Templat Mulai Cepat Azure berikut ini berisi sampel Bicep untuk menyebarkan jenis sumber daya ini.
| File Bisep | Deskripsi |
|---|---|
| Azure Container Service (AKS) dengan Helm | Menyebarkan kluster terkelola dengan Azure Container Service (AKS) dengan Helm |
| Azure Image Builder dengan Azure Windows Baseline | Membuat lingkungan Azure Image Builder dan membangun gambar Windows Server dengan Windows Update terbaru dan Azure Windows Baseline yang diterapkan. |
| Membuat gambar kontainer dengan tugas ACR | Templat ini menggunakan DeploymentScript untuk mengatur ACR untuk membangun gambar kontainer Anda dari repositori kode. |
| Mengonfigurasi layanan Dev Box | Templat ini akan membuat semua sumber daya admin Dev Box sesuai panduan mulai cepat Dev Box (/azure/dev-box/quickstart-create-dev-box). Anda dapat melihat semua sumber daya yang dibuat, atau langsung masuk ke DevPortal.microsoft.com untuk membuat Dev Box pertama Anda. |
| Menyalin file dari uri ke kontainer penyimpanan blob | Modul ini mengunduh file dari uri dan menyalinnya ke kontainer blob Azure storageAccount. StorageAccount harus sudah ada dan file sumber harus sudah dipentaskan ke uri. |
| Mulai cepat Membuat blob untuk alat data salin pabrik data | Templat ini membuat penyimpanan blob dan mengunggah file untuk mulai cepat alat salin data |
| Membuat Skrip Penyebaran dengan input kompleks & output | Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az CLI |
| Membuat Skrip Penyebaran dengan input kompleks & output | Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az PowerShell |
| Membuat situs WordPress | Templat ini membuat situs WordPress di Container Instance |
| Buat AKS dengan Prometheus dan Grafana dengan tautan privae | Ini akan membuat Azure grafana, AKS dan menginstal Prometheus, toolkit pemantauan dan pemberitahuan sumber terbuka, pada kluster Azure Kubernetes Service (AKS). Kemudian Anda menggunakan titik akhir privat terkelola Azure Managed Grafana untuk menyambungkan ke server Prometheus ini dan menampilkan data Prometheus di dasbor Grafana |
| Membuat pekerjaan Pembersihan Azure Machine Learning | Templat ini membuat pekerjaan Azure Machine Learning Sweep untuk penyetelan hyperparameter. |
| Membuat Azure Virtual Network Manager dan sampel VNET | Templat ini menyebarkan Azure Virtual Network Manager dan sampel jaringan virtual ke dalam grup sumber daya bernama. Ini mendukung beberapa topologi konektivitas dan jenis keanggotaan grup jaringan. |
| Membuat Server SFTP sesuai permintaan dengan penyimpanan persisten | Templat ini menunjukkan server SFTP sesuai permintaan menggunakan Azure Container Instance (ACI). |
| Membuat Application Gateway dengan Sertifikat | Templat ini menunjukkan cara membuat sertifikat yang ditandatangani sendiri Key Vault, lalu referensi dari Application Gateway. |
| Membuat Aplikasi dan Lingkungan Kontainer dengan Registri | Buat Lingkungan Aplikasi Kontainer dengan Aplikasi Kontainer dasar dari Azure Container Registry. Ini juga menyebarkan Ruang Kerja Analitik Log untuk menyimpan log. |
| Membuat aplikasi layanan mikro Dapr menggunakan Container Apps | Buat aplikasi layanan mikro Dapr menggunakan Aplikasi Kontainer. |
| Membuat aplikasi servicebus pub-sub Dapr menggunakan Container Apps | Buat aplikasi dapr pub-sub servicebus menggunakan Container Apps. |
| Menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana | Templat ini menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana untuk dijalankan di Azure. |
| Menyebarkan situs web statis | Menyebarkan situs web statis dengan akun penyimpanan cadangan |
| hub |
Templat ini membuat instans hub FinOps baru, termasuk Data Explorer, penyimpanan Data Lake, dan Data Factory. |
| Front Door Standard/Premium dengan asal situs web statis | Templat ini membuat Front Door Standard/Premium dan situs web statis Azure Storage, dan mengonfigurasi Front Door untuk mengirim lalu lintas ke situs web statis. |
| Mengimpor Gambar Kontainer ke ACR | Templat ini memanfaatkan modul Impor ACR dari registri bicep untuk mengimpor gambar kontainer publik ke Azure Container Registry. |
| Lainnya dimungkinkan dengan Azure Data Factory - Satu klik untuk mencoba Azure Data Factory | Templat ini membuat alur pabrik data untuk aktivitas salin dari Azure Blob ke Azure Blob lain |
| Network Secured Agent dengan Identitas Terkelola Pengguna | Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan isolasi jaringan virtual menggunakan autentikasi Identitas Terkelola Pengguna untuk koneksi AI Service/AOAI dan tautan jaringan privat untuk menghubungkan agen ke data aman Anda. |
| Penyiapan Agen Standar | Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan penyiapan standar, yang berarti dengan autentikasi identitas terkelola untuk koneksi proyek/hub dan akses internet publik diaktifkan. Agen menggunakan sumber daya pencarian dan penyimpanan penyewa tunggal milik pelanggan. Dengan penyiapan ini, Anda memiliki kontrol dan visibilitas penuh atas sumber daya ini, tetapi Anda akan dikenakan biaya berdasarkan penggunaan Anda. |
| lingkungan Pengujian untuk Azure Firewall Premium | Templat ini membuat Azure Firewall Premium dan Firewall Policy dengan fitur premium seperti Intrusion Inspection Detection (IDPS), inspeksi TLS, dan pemfilteran Kategori Web |
| Menggunakan skrip penyebaran untuk membuat objek Azure AD | Sampel ini menggunakan skrip penyebaran untuk membuat objek di Azure Active Directory. |
Format sumber daya
Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan Bicep berikut ke templat Anda.
resource symbolicname 'Microsoft.Resources/deploymentScripts@2023-08-01' = {
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
tags: {
{customized property}: 'string'
}
kind: 'string'
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Objek Microsoft.Resources/deploymentScripts
Atur properti jenis
UntukAzureCLI
{
kind: 'AzureCLI'
properties: {
arguments: 'string'
azCliVersion: 'string'
cleanupPreference: 'string'
containerSettings: {
containerGroupName: 'string'
subnetIds: [
{
id: 'string'
name: 'string'
}
]
}
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
forceUpdateTag: 'string'
primaryScriptUri: 'string'
retentionInterval: 'string'
scriptContent: 'string'
storageAccountSettings: {
storageAccountKey: 'string'
storageAccountName: 'string'
}
supportingScriptUris: [
'string'
]
timeout: 'string'
}
}
Untuk AzurePowerShell, gunakan:
{
kind: 'AzurePowerShell'
properties: {
arguments: 'string'
azPowerShellVersion: 'string'
cleanupPreference: 'string'
containerSettings: {
containerGroupName: 'string'
subnetIds: [
{
id: 'string'
name: 'string'
}
]
}
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
forceUpdateTag: 'string'
primaryScriptUri: 'string'
retentionInterval: 'string'
scriptContent: 'string'
storageAccountSettings: {
storageAccountKey: 'string'
storageAccountName: 'string'
}
supportingScriptUris: [
'string'
]
timeout: 'string'
}
}
Nilai Properti
Microsoft.Resources/deploymentScripts
| Nama | Deskripsi | Nilai |
|---|---|---|
| identitas | Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. | managedServiceIdentity |
| jenis | Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. | 'AzureCLI' 'AzurePowerShell' (diperlukan) |
| lokasi | Lokasi geografis tempat sumber daya berada | string (diperlukan) |
| Nama | Nama sumber daya | tali Kendala: Panjang min = 1 Panjang maksimum = 90 (diperlukan) |
| Tags | Tag sumber daya | Kamus nama dan nilai tag. Lihat Tag dalam templat |
AzureCliScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzureCLI' (diperlukan) |
| Properti | Properti objek skrip Azure CLI. | AzureCliScriptProperties (diperlukan) |
AzureCliScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azCliVersion | Versi modul Azure CLI yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
AzurePowerShellScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzurePowerShell' (diperlukan) |
| Properti | Properti objek skrip Azure PowerShell. | AzurePowerShellScriptProperties (diperlukan) |
AzurePowerShellScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azPowerShellVersion | Versi modul Azure PowerShell yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
Konfigurasi Kontainer
| Nama | Deskripsi | Nilai |
|---|---|---|
| containerGroupName | Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. | tali Kendala: Panjang min = 1 Panjang maksimum = 63 |
| subnetIds | ID sumber daya subnet untuk grup kontainer. | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
| Nama | Deskripsi | Nilai |
|---|---|---|
| Id | ID sumber daya subnet. | string (diperlukan) |
| Nama | Nama yang mudah diingat untuk subnet. | string |
Variabel Lingkungan
| Nama | Deskripsi | Nilai |
|---|---|---|
| Nama | Nama variabel lingkungan. | string (diperlukan) |
| Nilai aman | Nilai variabel lingkungan yang aman. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| nilai | Nilai variabel lingkungan. | string |
Identitas Layanan Terkelola
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis identitas terkelola. | 'Ditetapkan Pengguna' |
| identitasYangDitetapkanPengguna | Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Nama | Deskripsi | Nilai |
|---|
Konfigurasi Akun Penyimpanan
| Nama | Deskripsi | Nilai |
|---|---|---|
| kunciAkunPenyimpanan | Kunci akses akun penyimpanan. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| namaAkunPenyimpanan (storageAccountName) | Nama akun penyimpanan. | string |
TrackedResourceTags
| Nama | Deskripsi | Nilai |
|---|
IdentitasDitugaskanPengguna
| Nama | Deskripsi | Nilai |
|---|
Definisi sumber daya templat ARM
Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:
- Grup sumber daya - Lihat perintah penyebaran grup sumber daya Untuk daftar properti yang diubah di setiap versi API, lihat log perubahan.
Contoh Penggunaan
Templat Pemulaan Cepat Azure
Templat Mulai Cepat Azure berikut ini menyebarkan jenis sumber daya ini.
| Templat | Deskripsi |
|---|---|
|
Azure Container Service (AKS) dengan Helm |
Menyebarkan kluster terkelola dengan Azure Container Service (AKS) dengan Helm |
|
Azure Image Builder dengan Azure Windows Baseline |
Membuat lingkungan Azure Image Builder dan membangun gambar Windows Server dengan Windows Update terbaru dan Azure Windows Baseline yang diterapkan. |
|
Membuat gambar kontainer dengan tugas ACR |
Templat ini menggunakan DeploymentScript untuk mengatur ACR untuk membangun gambar kontainer Anda dari repositori kode. |
|
Mengonfigurasi layanan Dev Box |
Templat ini akan membuat semua sumber daya admin Dev Box sesuai panduan mulai cepat Dev Box (/azure/dev-box/quickstart-create-dev-box). Anda dapat melihat semua sumber daya yang dibuat, atau langsung masuk ke DevPortal.microsoft.com untuk membuat Dev Box pertama Anda. |
|
Menyalin file dari uri ke kontainer penyimpanan blob |
Modul ini mengunduh file dari uri dan menyalinnya ke kontainer blob Azure storageAccount. StorageAccount harus sudah ada dan file sumber harus sudah dipentaskan ke uri. |
|
Mulai cepat Membuat blob untuk alat data salin pabrik data |
Templat ini membuat penyimpanan blob dan mengunggah file untuk mulai cepat alat salin data |
|
Membuat Skrip Penyebaran dengan input kompleks & output |
Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az CLI |
|
Membuat Skrip Penyebaran dengan input kompleks & output |
Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az PowerShell |
|
Membuat situs WordPress |
Templat ini membuat situs WordPress di Container Instance |
|
Buat AKS dengan Prometheus dan Grafana dengan tautan privae |
Ini akan membuat Azure grafana, AKS dan menginstal Prometheus, toolkit pemantauan dan pemberitahuan sumber terbuka, pada kluster Azure Kubernetes Service (AKS). Kemudian Anda menggunakan titik akhir privat terkelola Azure Managed Grafana untuk menyambungkan ke server Prometheus ini dan menampilkan data Prometheus di dasbor Grafana |
|
Membuat pekerjaan Pembersihan Azure Machine Learning |
Templat ini membuat pekerjaan Azure Machine Learning Sweep untuk penyetelan hyperparameter. |
|
Membuat Azure Virtual Network Manager dan sampel VNET |
Templat ini menyebarkan Azure Virtual Network Manager dan sampel jaringan virtual ke dalam grup sumber daya bernama. Ini mendukung beberapa topologi konektivitas dan jenis keanggotaan grup jaringan. |
|
Membuat Server SFTP sesuai permintaan dengan penyimpanan persisten |
Templat ini menunjukkan server SFTP sesuai permintaan menggunakan Azure Container Instance (ACI). |
|
Membuat Application Gateway dengan Sertifikat |
Templat ini menunjukkan cara membuat sertifikat yang ditandatangani sendiri Key Vault, lalu referensi dari Application Gateway. |
|
Membuat kunci ssh dan menyimpan di KeyVault |
Templat ini menggunakan sumber daya deploymentScript untuk menghasilkan kunci ssh dan menyimpan kunci privat di keyVault. |
|
Membuat Aplikasi dan Lingkungan Kontainer dengan Registri |
Buat Lingkungan Aplikasi Kontainer dengan Aplikasi Kontainer dasar dari Azure Container Registry. Ini juga menyebarkan Ruang Kerja Analitik Log untuk menyimpan log. |
|
Membuat aplikasi layanan mikro Dapr menggunakan Container Apps |
Buat aplikasi layanan mikro Dapr menggunakan Aplikasi Kontainer. |
|
Membuat aplikasi servicebus pub-sub Dapr menggunakan Container Apps |
Buat aplikasi dapr pub-sub servicebus menggunakan Container Apps. |
|
Menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana |
Templat ini menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana untuk dijalankan di Azure. |
|
Menyebarkan situs web statis |
Menyebarkan situs web statis dengan akun penyimpanan cadangan |
| hub |
Templat ini membuat instans hub FinOps baru, termasuk Data Explorer, penyimpanan Data Lake, dan Data Factory. |
|
Front Door Standard/Premium dengan asal situs web statis |
Templat ini membuat Front Door Standard/Premium dan situs web statis Azure Storage, dan mengonfigurasi Front Door untuk mengirim lalu lintas ke situs web statis. |
| Aplikasi Fungsi pada Paket Konsumsi Linux dengan Build Jarak Jauh |
Templat ini menyediakan aplikasi fungsi pada paket Konsumsi Linux dan melakukan build jarak jauh selama penyebaran kode. Aplikasi berjalan sesuai permintaan dan Anda ditagih per eksekusi, tanpa komitmen sumber daya yang berdiri. |
|
Mengimpor Gambar Kontainer ke ACR |
Templat ini memanfaatkan modul Impor ACR dari registri bicep untuk mengimpor gambar kontainer publik ke Azure Container Registry. |
|
Impor Blob VHD dari URL Arsip ZIP |
Menyebarkan Komputer Virtual berdasarkan gambar disk khusus mengharuskan untuk mengimpor file VHD ke Akun Penyimpanan. Dalam kasus ada beberapa file VHD yang dikompresi dalam satu ZIP dan Anda mendapatkan URL untuk mengambil arsip ZIP, templat ARM ini akan memudahkan pekerjaan: Unduh, Ekstrak, dan Impor ke dalam Kontainer Blob Akun Penyimpanan yang ada. |
|
min.io Azure Gateway |
Penyebaran Azure Gateway min.io sepenuhnya privat untuk menyediakan API penyimpanan yang mematuhi S3 yang didukung oleh penyimpanan blob |
|
Lainnya dimungkinkan dengan Azure Data Factory - Satu klik untuk mencoba Azure Data Factory |
Templat ini membuat alur pabrik data untuk aktivitas salin dari Azure Blob ke Azure Blob lain |
|
Network Secured Agent dengan Identitas Terkelola Pengguna |
Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan isolasi jaringan virtual menggunakan autentikasi Identitas Terkelola Pengguna untuk koneksi AI Service/AOAI dan tautan jaringan privat untuk menghubungkan agen ke data aman Anda. |
|
Penyiapan Agen Standar |
Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan penyiapan standar, yang berarti dengan autentikasi identitas terkelola untuk koneksi proyek/hub dan akses internet publik diaktifkan. Agen menggunakan sumber daya pencarian dan penyimpanan penyewa tunggal milik pelanggan. Dengan penyiapan ini, Anda memiliki kontrol dan visibilitas penuh atas sumber daya ini, tetapi Anda akan dikenakan biaya berdasarkan penggunaan Anda. |
| lingkungan Pengujian untuk Azure Firewall Premium |
Templat ini membuat Azure Firewall Premium dan Firewall Policy dengan fitur premium seperti Intrusion Inspection Detection (IDPS), inspeksi TLS, dan pemfilteran Kategori Web |
|
Menggunakan skrip penyebaran untuk membuat objek Azure AD |
Sampel ini menggunakan skrip penyebaran untuk membuat objek di Azure Active Directory. |
Format sumber daya
Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan JSON berikut ke templat Anda.
{
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"name": "string",
"tags": {
"{customized property}": "string"
},
"kind": "string"
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Objek Microsoft.Resources/deploymentScripts
Atur properti jenis
UntukAzureCLI
{
"kind": "AzureCLI",
"properties": {
"arguments": "string",
"azCliVersion": "string",
"cleanupPreference": "string",
"containerSettings": {
"containerGroupName": "string",
"subnetIds": [
{
"id": "string",
"name": "string"
}
]
},
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"forceUpdateTag": "string",
"primaryScriptUri": "string",
"retentionInterval": "string",
"scriptContent": "string",
"storageAccountSettings": {
"storageAccountKey": "string",
"storageAccountName": "string"
},
"supportingScriptUris": [ "string" ],
"timeout": "string"
}
}
Untuk AzurePowerShell, gunakan:
{
"kind": "AzurePowerShell",
"properties": {
"arguments": "string",
"azPowerShellVersion": "string",
"cleanupPreference": "string",
"containerSettings": {
"containerGroupName": "string",
"subnetIds": [
{
"id": "string",
"name": "string"
}
]
},
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"forceUpdateTag": "string",
"primaryScriptUri": "string",
"retentionInterval": "string",
"scriptContent": "string",
"storageAccountSettings": {
"storageAccountKey": "string",
"storageAccountName": "string"
},
"supportingScriptUris": [ "string" ],
"timeout": "string"
}
}
Nilai Properti
Microsoft.Resources/deploymentScripts
| Nama | Deskripsi | Nilai |
|---|---|---|
| apiVersi | Versi api | '2023-08-01' |
| identitas | Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. | managedServiceIdentity |
| jenis | Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. | 'AzureCLI' 'AzurePowerShell' (diperlukan) |
| lokasi | Lokasi geografis tempat sumber daya berada | string (diperlukan) |
| Nama | Nama sumber daya | tali Kendala: Panjang min = 1 Panjang maksimum = 90 (diperlukan) |
| Tags | Tag sumber daya | Kamus nama dan nilai tag. Lihat Tag dalam templat |
| jenis | Jenis sumber daya | 'Microsoft.Resources/deploymentScripts' |
AzureCliScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzureCLI' (diperlukan) |
| Properti | Properti objek skrip Azure CLI. | AzureCliScriptProperties (diperlukan) |
AzureCliScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azCliVersion | Versi modul Azure CLI yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
AzurePowerShellScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzurePowerShell' (diperlukan) |
| Properti | Properti objek skrip Azure PowerShell. | AzurePowerShellScriptProperties (diperlukan) |
AzurePowerShellScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azPowerShellVersion | Versi modul Azure PowerShell yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
Konfigurasi Kontainer
| Nama | Deskripsi | Nilai |
|---|---|---|
| containerGroupName | Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. | tali Kendala: Panjang min = 1 Panjang maksimum = 63 |
| subnetIds | ID sumber daya subnet untuk grup kontainer. | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
| Nama | Deskripsi | Nilai |
|---|---|---|
| Id | ID sumber daya subnet. | string (diperlukan) |
| Nama | Nama yang mudah diingat untuk subnet. | string |
Variabel Lingkungan
| Nama | Deskripsi | Nilai |
|---|---|---|
| Nama | Nama variabel lingkungan. | string (diperlukan) |
| Nilai aman | Nilai variabel lingkungan yang aman. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| nilai | Nilai variabel lingkungan. | string |
Identitas Layanan Terkelola
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis identitas terkelola. | 'Ditetapkan Pengguna' |
| identitasYangDitetapkanPengguna | Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Nama | Deskripsi | Nilai |
|---|
Konfigurasi Akun Penyimpanan
| Nama | Deskripsi | Nilai |
|---|---|---|
| kunciAkunPenyimpanan | Kunci akses akun penyimpanan. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| namaAkunPenyimpanan (storageAccountName) | Nama akun penyimpanan. | string |
TrackedResourceTags
| Nama | Deskripsi | Nilai |
|---|
IdentitasDitugaskanPengguna
| Nama | Deskripsi | Nilai |
|---|
Definisi sumber daya Terraform (penyedia AzAPI)
Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:
- Grup sumber daya Untuk daftar properti yang diubah di setiap versi API, lihat log perubahan.
Contoh Penggunaan
Sampel Terraform
Contoh dasar penyebaran Skrip Penyebaran Sumber Daya.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "deploymentScript" {
type = "Microsoft.Resources/deploymentScripts@2020-10-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "AzurePowerShell"
properties = {
azPowerShellVersion = "8.3"
cleanupPreference = "Always"
environmentVariables = null
retentionInterval = "P1D"
scriptContent = "\t\t$output = 'Hello'\n\t\tWrite-Output $output\n\t\t$DeploymentScriptOutputs = @{}\n\t\t$DeploymentScriptOutputs['text'] = $output\n"
supportingScriptUris = null
timeout = "P1D"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Format sumber daya
Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan Terraform berikut ke templat Anda.
resource "azapi_resource" "symbolicname" {
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
name = "string"
tags = {
{customized property} = "string"
}
kind = "string"
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Objek Microsoft.Resources/deploymentScripts
Atur properti jenis
UntukAzureCLI
{
kind = "AzureCLI"
properties = {
arguments = "string"
azCliVersion = "string"
cleanupPreference = "string"
containerSettings = {
containerGroupName = "string"
subnetIds = [
{
id = "string"
name = "string"
}
]
}
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
forceUpdateTag = "string"
primaryScriptUri = "string"
retentionInterval = "string"
scriptContent = "string"
storageAccountSettings = {
storageAccountKey = "string"
storageAccountName = "string"
}
supportingScriptUris = [
"string"
]
timeout = "string"
}
}
Untuk AzurePowerShell, gunakan:
{
kind = "AzurePowerShell"
properties = {
arguments = "string"
azPowerShellVersion = "string"
cleanupPreference = "string"
containerSettings = {
containerGroupName = "string"
subnetIds = [
{
id = "string"
name = "string"
}
]
}
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
forceUpdateTag = "string"
primaryScriptUri = "string"
retentionInterval = "string"
scriptContent = "string"
storageAccountSettings = {
storageAccountKey = "string"
storageAccountName = "string"
}
supportingScriptUris = [
"string"
]
timeout = "string"
}
}
Nilai Properti
Microsoft.Resources/deploymentScripts
| Nama | Deskripsi | Nilai |
|---|---|---|
| identitas | Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. | managedServiceIdentity |
| jenis | Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. | 'AzureCLI' 'AzurePowerShell' (diperlukan) |
| lokasi | Lokasi geografis tempat sumber daya berada | string (diperlukan) |
| Nama | Nama sumber daya | tali Kendala: Panjang min = 1 Panjang maksimum = 90 (diperlukan) |
| Tags | Tag sumber daya | Kamus nama dan nilai tag. |
| jenis | Jenis sumber daya | "Microsoft.Resources/deploymentScripts@2023-08-01" |
AzureCliScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzureCLI' (diperlukan) |
| Properti | Properti objek skrip Azure CLI. | AzureCliScriptProperties (diperlukan) |
AzureCliScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azCliVersion | Versi modul Azure CLI yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
AzurePowerShellScript
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis skrip. | 'AzurePowerShell' (diperlukan) |
| Properti | Properti objek skrip Azure PowerShell. | AzurePowerShellScriptProperties (diperlukan) |
AzurePowerShellScriptProperties
| Nama | Deskripsi | Nilai |
|---|---|---|
| Argumen | Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' | string |
| azPowerShellVersion | Versi modul Azure PowerShell yang akan digunakan. | string (diperlukan) |
| pembersihanPreferensi | Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. | 'Selalu' 'Kedaluwarsa' 'OnSuccess' |
| containerSettings | Pengaturan kontainer. | |
| variabelLingkungan | Variabel lingkungan untuk diteruskan ke skrip. | Variabel Lingkungan[] |
| forceUpdateTag | Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. | string |
| primaryScriptUri | Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. | string |
| retentionInterval | Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). | string (diperlukan) |
| skripKonten | Isi skrip. | string |
| penyimpananAkunPengaturan | Pengaturan Akun Penyimpanan. | Konfigurasi Akun Penyimpanan |
| supportingScriptUris | Mendukung file untuk skrip eksternal. | string[] |
| Timeout | Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D | string |
Konfigurasi Kontainer
| Nama | Deskripsi | Nilai |
|---|---|---|
| containerGroupName | Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. | tali Kendala: Panjang min = 1 Panjang maksimum = 63 |
| subnetIds | ID sumber daya subnet untuk grup kontainer. | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
| Nama | Deskripsi | Nilai |
|---|---|---|
| Id | ID sumber daya subnet. | string (diperlukan) |
| Nama | Nama yang mudah diingat untuk subnet. | string |
Variabel Lingkungan
| Nama | Deskripsi | Nilai |
|---|---|---|
| Nama | Nama variabel lingkungan. | string (diperlukan) |
| Nilai aman | Nilai variabel lingkungan yang aman. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| nilai | Nilai variabel lingkungan. | string |
Identitas Layanan Terkelola
| Nama | Deskripsi | Nilai |
|---|---|---|
| jenis | Jenis identitas terkelola. | 'Ditetapkan Pengguna' |
| identitasYangDitetapkanPengguna | Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Nama | Deskripsi | Nilai |
|---|
Konfigurasi Akun Penyimpanan
| Nama | Deskripsi | Nilai |
|---|---|---|
| kunciAkunPenyimpanan | Kunci akses akun penyimpanan. | tali Kendala: Nilai sensitif. Teruskan sebagai parameter aman. |
| namaAkunPenyimpanan (storageAccountName) | Nama akun penyimpanan. | string |
TrackedResourceTags
| Nama | Deskripsi | Nilai |
|---|
IdentitasDitugaskanPengguna
| Nama | Deskripsi | Nilai |
|---|