Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure VM'lerinde dağıtım sonrası yapılandırma ve otomasyon görevleri gerçekleştirme amacıyla Azure sanal makine uzantılarını kullanmayı öğrenin. Azure VM'leri ile kullanabileceğiniz birçok farklı VM uzantısı vardır. Bu öğreticide, Bir Azure Resource Manager şablonundan (ARM şablonu) Bir Windows VM'de PowerShell betiği çalıştırmak için Özel Betik uzantısı dağıtacaksınız. Bu betik, VM'ye Web Sunucusu yükler.
Bu öğretici aşağıdaki görevleri kapsar:
- PowerShell betiğini hazırlama
- Hızlı başlangıç şablonunu açma
- Şablonu düzenleme
- Şablonu dağıtma
Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
Önkoşullar
Bu makaleyi tamamlamak için gerekenler:
Güvenliği artırmak istiyorsanız sanal makine yönetici hesabı için oluşturulmuş bir parola kullanın. Azure Cloud Shell'i kullanarak PowerShell veya Bash'te aşağıdaki komutu çalıştırabilirsiniz:
openssl rand -base64 32Daha fazla bilgi edinmek için komutunu çalıştırarak
man openssl randel ile açılan sayfayı açın.Azure Key Vault şifreleme anahtarları ve diğer gizli dizileri korumak üzere tasarlanmıştır. Daha fazla bilgi için bkz . Öğretici: Azure Key Vault'ı ARM şablonu dağıtımınızla tümleştirme. Ayrıca parolanızı her üç ayda bir güncelleştirmenizi öneririz.
PowerShell betiğini hazırlama
Satır içi PowerShell betiği veya betik dosyası kullanabilirsiniz. Bu öğreticide betik dosyasının nasıl kullanılacağı gösterilmektedir. Aşağıdaki içeriğe sahip bir PowerShell betiği GitHub'dan paylaşılır:
Install-WindowsFeature -Name Web-Server -IncludeManagementTools
Dosyayı kendi konumunuza yayımlamayı seçerseniz, öğreticinin fileUri devamında şablondaki öğesini güncelleştirin.
Hızlı başlangıç şablonunu açma
Azure Hızlı Başlangıç Şablonları, ARM şablonları için bir depodur. Sıfırdan bir şablon oluşturmak yerine örnek bir şablon bulabilir ve bunu özelleştirebilirsiniz. Bu öğreticide kullanılan şablonun adı: Deploy a simple Windows VM (Basit bir Windows sanal makinesi dağıtma).
Visual Studio Code'da Dosya Aç Dosya'yı> seçin.
Dosya adı kutusuna aşağıdaki URL'yi yapıştırın:
https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-windows/azuredeploy.jsonDosyayı açmak için Aç'ı seçin. Şablon beş kaynak tanımlar:
Microsoft.Compute/virtualMachines.
Şablonu özelleştirmeden önce temel bilgilere ulaşmak yararlı olur.
Dosya
Şablonu düzenleme
Aşağıdaki içeriği kullanarak var olan şablona bir sanal makine uzantısı kaynağı ekleyin:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2025-04-01",
"name": "[format('{0}/{1}', variables('vmName'), 'InstallWebServer')]",
"location": "[parameters('location')]",
"dependsOn": [
"[format('Microsoft.Compute/virtualMachines/{0}',variables('vmName'))]"
],
"properties": {
"publisher": "Microsoft.Compute",
"type": "CustomScriptExtension",
"typeHandlerVersion": "1.7",
"autoUpgradeMinorVersion": true,
"settings": {
"fileUris": [
"https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/tutorial-vm-extension/installWebServer.ps1"
],
"commandToExecute": "powershell.exe -ExecutionPolicy Unrestricted -File installWebServer.ps1"
}
}
}
Bu kaynak tanımı hakkında daha fazla bilgi için uzantı başvurusuna bakın. Önemli öğeler şunlardır:
-
name: Uzantı kaynağı sanal makine nesnesinin alt kaynağı olduğundan, adın sanal makine adı ön ekinin olması gerekir. Bkz. Alt kaynaklar için ad ve tür ayarlama. -
dependsOn: Sanal makineyi oluşturduktan sonra uzantı kaynağını oluşturun. -
fileUris: Betik dosyalarının depolandığı konumlar. Sağlanan konumu kullanmamayı seçerseniz, değerleri güncelleştirmeniz gerekir. -
commandToExecute: Bu komut betiği çağırır.
Satır içi betik kullanmak için öğesini kaldırın fileUrisve şu şekilde güncelleştirin commandToExecute :
powershell.exe Install-WindowsFeature -name Web-Server -IncludeManagementTools && powershell.exe remove-item 'C:\\inetpub\\wwwroot\\iisstart.htm' && powershell.exe Add-Content -Path 'C:\\inetpub\\wwwroot\\iisstart.htm' -Value $('Hello World from ' + $env:computername)
Bu satır içi betik, iisstart.html içeriğini de güncelleştirir.
Web sunucusuna erişebilmek için HTTP bağlantı noktasını da açmanız gerekir.
Şablonda bulun
securityRules.Default-allow-3389'un yanına aşağıdaki kuralı ekleyin.
{ "name": "AllowHTTPInBound", "properties": { "priority": 1010, "access": "Allow", "direction": "Inbound", "destinationPortRange": "80", "protocol": "Tcp", "sourcePortRange": "*", "sourceAddressPrefix": "*", "destinationAddressPrefix": "*" } }
Şablonu dağıtma
Dağıtım yordamı için Öğretici: Bağımlı kaynaklarla ARM şablonları oluşturma'nın Şablonu dağıtma bölümüne bakın. Sanal makine yönetici hesabı için oluşturulan bir parola kullanmanızı öneririz. Bu makalenin Önkoşullar bölümüne bakın.
Cloud Shell'den aşağıdaki komutu çalıştırarak VM'nin genel IP adresini alın:
(Get-AzPublicIpAddress -ResourceGroupName $resourceGroupName).IpAddress
IP adresini bir Web tarayıcısına yapıştırın. Varsayılan Internet Information Services (IIS) karşılama sayfası açılır:
Kaynakları temizleme
Dağıttığınız Azure kaynaklarına artık ihtiyacınız kalmadığında, kaynak grubunu silerek bunları temizleyin.
- Azure portalının sol bölmesinde Kaynak grubu'na tıklayın.
- Ada göre filtrele kutusuna kaynak grubu adını girin.
- Kaynak grubu adını seçin. Kaynak grubunda altı kaynak görüntülenir.
- Üstteki menüde Kaynak grubunu sil'i seçin.
Sonraki adımlar
Bu öğreticide bir sanal makine ve bir sanal makine uzantısı dağıttınız. Uzantı, sanal makineye IIS web sunucusunu yükledi. BACPAC dosyasını içeri aktarmak için Azure SQL Veritabanı uzantısını kullanmayı öğrenmek için bkz: