Alıştırma - Azure PowerShell ile etkileşimli olarak Azure Kaynağı oluşturma
Özgün senaryoda, Müşteri İlişkileri Yönetimi (CRM) yazılımınızı test etmek için sanal makineler (VM) oluşturmanız gerekir. Yeni bir derleme kullanılabilir olduğunda, temiz bir görüntüden yükleme deneyiminin tamamını test etmek için yeni bir VM oluşturmak istersiniz. Test tamamlandıktan sonra VM'yi silebilirsiniz.
Şimdi vm oluşturmak için komutları deneyelim.
Azure PowerShell ile Linux VM oluşturma
Azure korumalı alanını kullandığınızdan kaynak grubu oluşturmanız gerekmez. Bunun yerine, [sandbox resource group name]
Azure PowerShell ile yeni bir Azure VM oluşturma burada açıklanmaktadır:
VM'yi
New-AzVM
oluşturmak için cmdlet'ini kullanın.Korumalı alan kaynak grubunu belirtin:
[sandbox resource group name] .Kuruluşunuzun adlandırma standartlarını izleyerek VM'yi adlandırın.
Kullanılabilir Azure korumalı alan konumları listesinden size yakın bir konum seçin.
- westus2
- Orta Güney ABD
- centralus
- eastus
- westeurope
- southeastasia
- japaneast
- Güney Brezilya
- australiasoutheast
- centralindia
Ubuntu Linux görüntüsünü kullanın:
Canonical:0001-com-ubuntu-server-jammy:22_04-lts:latest
.Get-Credential
VM yöneticisi kimlik bilgilerini ayarlamak için cmdlet'ini kullanın.SSH erişimi için bağlantı noktasıyla
22
OpenPorts parametresini ekleyin.SSH oturum açma için bir genel IP adresi adı oluşturun.
$azVmParams = @{ ResourceGroupName = '<rgn>[sandbox resource group name]</rgn>' Name = 'testvm-eus-01' Credential = (Get-Credential) Location = 'eastus' Image = 'Canonical:0001-com-ubuntu-server-jammy:22_04-lts:latest' OpenPorts = 22 PublicIpAddressName = 'testvm-eus-01' } New-AzVm @azVmParams
İpucu
Komutları panoya kopyalamak için Kopyala düğmesini kullanabilirsiniz. Yapıştırmak için Cloud Shell terminalinde yeni bir satıra sağ tıklayıp Yapıştır'ı seçin veya Shift+Insert klavye kısayolunu (macOS üzerinde⌘+V) kullanın.
Kimlik Bilgilerini Girin:
İstendiğinde, yönergeleri izleyerek bir kullanıcı adı ve parola girin: parolalar 12-123 karakter uzunluğunda olmalı ve şu dört karmaşıklık gereksiniminden üçünün karşılanması gerekir: küçük harfler, büyük harfler, rakamlar ve özel karakterler (Regex eşleşmesi [\W_]). Daha fazla bilgi için bkz . Linux VM SSS.
VM'nin oluşturulmasını bekleyin:
VM oluşturma işleminin tamamlanması birkaç dakika sürer.
VM'yi sorgulama:
Tamamlandığında, VM'yi sorgulayıp VM nesnesini bir değişkene ( )
$vm
atayın.$vm = Get-AzVM -Name testvm-eus-01 -ResourceGroupName <rgn>[sandbox resource group name]</rgn>
VM hakkındaki bilgileri görüntüleyin:
VM hakkındaki bilgileri görüntülemek için değişkenin içeriğini görüntüleyin.
$vm
Örnek çıkış:
ResourceGroupName : <rgn>[sandbox resource group name]</rgn> Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/<rgn>[sandbox resource group name]</rgn>/providers/Microsoft.Compute/virtualMachines/testvm-eus-01 VmId : 00000000-0000-0000-0000-000000000000 Name : testvm-eus-01 Type : Microsoft.Compute/virtualMachines Location : eastus Tags : {} HardwareProfile : {VmSize} NetworkProfile : {NetworkInterfaces} OSProfile : {ComputerName, AdminUsername, LinuxConfiguration, Secrets} ProvisioningState : Succeeded StorageProfile : {ImageReference, OsDisk, DataDisks} ...
VM özelliklerini inceleyin:
Üye erişim işleci (
.
) aracılığıyla karmaşık nesneleri inceleyebilirsiniz. Örneğin, HardwareProfile bölümüyle ilişkili nesnedekiVMSize
özellikleri görmek için aşağıdaki komutu çalıştırın:$vm.HardwareProfile
Veya disklerden biriyle ilgili bilgi almak için aşağıdaki komutu çalıştırın:
$vm.StorageProfile.OsDisk
Kullanılabilir VM boyutlarını alın:
Kullanılabilir boyutları almak için VM nesnesini diğer cmdlet'lere geçirin:
$vm | Get-AzVMSize
Genel IP adresini alın:
VM'ye bağlanmak ve bir değişkende depolamak için genel IP adresini alın.
$ip = Get-AzPublicIpAddress -ResourceGroupName <rgn>[sandbox resource group name]</rgn> -Name testvm-eus-01
VM'ye bağlanın:
Değişkenden IP adresini kullanarak SSH ile VM'ye bağlanın. Örneğin, kullanıcı adı ise
bob
aşağıdaki komutu kullanın:ssh bob@$($ip.IpAddress)
exit yazarak oturumu kapatın.
VM silme
Daha fazla komut denemek için VM'yi silelim. Şu adımları izleyin:
VM'yi kapatın:
Şu komutu çalıştırın:
Stop-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
VM'yi silin:
VM durdurulduğunda cmdlet'ini
Remove-AzVM
çalıştırarak silin.Remove-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Kaynak grubundaki tüm kaynakları listeleyin:
Kaynak grubundaki
Get-AzResource
tüm kaynakları listelemek için cmdlet'ini kullanın. Belirli özellikleri döndürmek için sonuçlaraSelect-Object
kanal oluşturulur:Get-AzResource -ResourceGroupName $vm.ResourceGroupName | Select-Object -Property Name, ResourceType, ResourceGroupName
Diskler, sanal ağlar vb. dahil olmak üzere hala var olan çeşitli kaynaklar görmeniz gerekir:
Name ResourceType ResourceGroupName ---- ------------ ----------------- cloudshell Microsoft.Storage/storageAccounts <rgn>[sandbox resource group name]</rgn> testvm-eus-01 Microsoft.Network/virtualNetworks <rgn>[sandbox resource group name]</rgn> testvm-eus-01 Microsoft.Network/publicIPAddresses <rgn>[sandbox resource group name]</rgn> testvm-eus-01 Microsoft.Network/networkSecurityGroups <rgn>[sandbox resource group name]</rgn> testvm-eus-01 Microsoft.Network/networkInterfaces <rgn>[sandbox resource group name]</rgn> testvm-eus-01_OsDisk_1 Microsoft.Compute/disks <rgn>[sandbox resource group name]</rgn>
Remove-AzVM
Komutu yalnızca VM'yi siler. Diğer kaynakların hiçbirini temizlemez. Bunları el ile temizlemek için şu adımları izleyin:Sanal ağı silin:
Get-AzVirtualNetwork -ResourceGroupName $vm.ResourceGroupName | Remove-AzVirtualNetwork
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Genel IP adresini silin:
Get-AzPublicIpAddress -ResourceGroupName $vm.ResourceGroupName | Remove-AzPublicIpAddress
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Ağ güvenlik grubunu silin:
Get-AzNetworkSecurityGroup -ResourceGroupName $vm.ResourceGroupName | Remove-AzNetworkSecurityGroup
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Ağ arabirimini silin:
Get-AzNetworkInterface -ResourceGroupName $vm.ResourceGroupName -Name $vm.Name | Remove-AzNetworkInterface
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Yönetilen işletim sistemi disklerini silin:
Get-AzDisk -ResourceGroupName $vm.ResourceGroupName -DiskName $vm.StorageProfile.OSDisk.Name | Remove-AzDisk
Y yazın ve devam etmek isteyip istemediğiniz sorulduğunda Enter tuşuna basın.
Tüm kaynakların kaldırıldığını doğrulayın:
Tüm kaynakların kaldırıldığından emin olmak için kaynak grubunu denetleyin:
Get-AzResource -ResourceGroupName $vm.ResourceGroupName | Select-Object -Property Name, ResourceType, ResourceGroupName
Bu komutları etkileşimli olarak yürütürken, PowerShell betiği yazmak daha iyi bir yaklaşımdır. Betikler, gelecekte vm oluşturma veya silme mantığını yeniden kullanmanıza olanak sağlar
Şimdi bir PowerShell betiği kullanarak bu görevleri otomatikleştirmeye bakalım.