Aracılığıyla paylaş


Windows PowerShell kullanarak Azure Stack HCI'de VM'leri yönetme

Şunlar için geçerlidir: Azure Stack HCI, sürüm 23H2 ve 22H2; Windows Server 2022, Windows Server 2019

Bu makalede, Windows PowerShell kullanarak Azure Stack HCI üzerinde sanal makinelerin (VM) nasıl oluşturulacağı ve yönetileceğini açıklanmaktadır.

Not

Azure Stack HCI, sürüm 23H2'de VM oluşturmanın ve yönetmenin önerilen yolu Azure Arc denetim düzlemini kullanmaktır. Ancak, bu makalede açıklanan işlevsellik henüz Azure Arc tarafından sağlanmadığından, aşağıda açıklandığı gibi Windows Yönetim Merkezi'ni veya PowerShell'i kullanabilirsiniz. Bu şekilde oluşturulan VM'lerin Arc özellikli VM'ler olmadığını unutmayın. Azure Arc denetim düzleminden yönetilebilirliği sınırlıdır ve Azure Update Manager'ın ücretsiz kullanımı gibi daha az Azure Hibrit Avantajı vardır.

PowerShell kullanarak VM'leri yönetme hakkında

Vm'leri genellikle kümedeki bir konak sunucusu yerine uzak bir bilgisayardan yönetirsiniz. Bu uzak bilgisayara yönetim bilgisayarı adı verilir.

PowerShell komutlarını bir yönetim bilgisayarından çalıştırırken, yönettiğiniz ana bilgisayar sunucusunun adını içeren parametresini ekleyin -ComputerName . NetBIOS adları, IP adresleri ve tam etki alanı adları kullanılabilir.

PowerShell kullanarak VM'leri yönetme hakkında eksiksiz başvuru belgeleri için bkz . Hyper-V başvurusu.

VM oluşturma

New-VM Cmdlet, yeni bir VM oluşturmak için kullanılır. Ayrıntılı kullanım için New-VM başvuru belgelerine bakın.

Mevcut bir sanal sabit diskle yeni bir VM oluştururken belirtebileceğiniz ayarlar şunlardır:

  • -Name , oluşturduğunuz sanal makine için sağladığınız addır.

  • -MemoryStartupBytes , başlangıçta sanal makinenin kullanabileceği bellek miktarıdır.

  • -BootDevice , sanal makinenin başlatıldığında önyükleme yaptığı cihazdır. Bu genellikle bir sanal sabit disk (VHD), DVD tabanlı önyükleme için .iso dosyası veya ağ önyüklemesi için bir ağ bağdaştırıcısıdır (NetworkAdapter).

  • -VHDPath , kullanmak istediğiniz sanal makine diskinin yoludur.

  • -Path , sanal makine yapılandırma dosyalarını depolama yoludur.

  • -Oluşturma , sanal makine oluşturma işlemidir. VHD için 1. nesil ve VHDX için 2. nesil kullanın.

  • -SwitchName , sanal makinenin diğer sanal makinelere veya ağa bağlanmak için kullanmasını istediğiniz sanal anahtarın adıdır. Get-VMSwitch kullanarak sanal anahtarın adını alın. Örneğin:

VM1 adlı bir VM oluşturmak için aşağıdaki tam komut:

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes <Memory> -BootDevice <BootDevice> -VHDPath <VHDPath> -Path <Path> -Generation <Generation> -SwitchName <Switch name>

Sonraki örnek, 4 GB belleğe sahip 2. Nesil bir sanal makine oluşturur. Geçerli dizindeki VM'ler\Win10.vhdx klasöründen önyükleme yapıp ExternalSwitch adlı sanal anahtarı kullanır. Sanal makine yapılandırma dosyaları VMData klasöründe depolanır.

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -VHDPath .\VMs\Win10.vhdx -Path .\VMData -Generation 2 -SwitchName ExternalSwitch

Sanal sabit diskleri belirtmek için aşağıdaki parametreler kullanılır.

Yeni bir sanal sabit disk ile sanal makine oluşturmak için yukarıdaki örnekteki -VHDPath parametresini -NewVHDPath ile değiştirin ve burada gösterildiği gibi -NewVHDSizeBytes parametresini ekleyin:

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -NewVHDPath .\VMs\Win10.vhdx -Path .\VMData -NewVHDSizeBytes 20GB -Generation 2 -SwitchName ExternalSwitch

İşletim sistemi görüntüsüne önyüklemesi yapılan yeni bir sanal diske sahip bir sanal makine oluşturmak için Windows 10'da Hyper-V için sanal makine oluşturma kılavuzundaki PowerShell örneğine bakın.

VM'lerin listesini alma

Aşağıdaki örnek, Server1'de tüm VM'lerin listesini döndürür.

Get-VM -ComputerName Server1

Aşağıdaki örnek, komutunu kullanarak Where-Object bir filtre ekleyerek sunucuda çalışan tüm VM'lerin listesini döndürür. Daha fazla bilgi için Bkz . Where-Object belgelerini kullanma.

Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Running"

Sonraki örnek, sunucudaki tüm kapatma VM'lerinin listesini döndürür.

Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Off"

VM başlatma ve durdurma

VM'yi Start-VM başlatmak veya durdurmak için ve Stop-VM komutlarını kullanın. Ayrıntılı bilgi için Start-VM ve Stop-VM başvuru belgelerine bakın.

Aşağıdaki örnek, VM1 adlı bir VM'yi nasıl başlatacaklarını gösterir:

Start-VM -Name VM1 -ComputerName Server1

Aşağıdaki örnek, TestVM adlı bir VM'nin nasıl kapatacağını gösterir:

Stop-VM -Name VM1 -ComputerName Server1

Bir VM'yi taşıma

Move-VM Cmdlet bir VM'yi farklı bir sunucuya taşır. Daha fazla bilgi için Bkz . Move-VM başvuru belgeleri.

Aşağıdaki örnekte, VM Server1'de bir SMB paylaşımında depolandığında VM'nin Sunucu2'ye nasıl taşınacakları gösterilmektedir:

Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2

Aşağıdaki örnek, bir VM'yi Server1'den Server2'ye taşımayı ve VM ile ilişkili tüm dosyaları uzak bilgisayardaki D:\VM_name'a taşımayı gösterir:

Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2 -IncludeStorage -DestinationStoragePath D:\VM_name

VM'leri içeri veya dışarı aktarma

ve Export-VM cmdlet'leri Import-VM bir VM'yi içeri ve dışarı aktarır. Aşağıda birkaç örnek gösterilmektedir. Daha fazla bilgi için bkz . Import-VM ve Export-VM başvuru belgeleri.

Aşağıdaki örnek, bir VM'nin yapılandırma dosyasından nasıl içeri aktarılacağını gösterir. VM yerinde kayıtlı olduğundan dosyaları kopyalanmıyor:

Import-VM -ComputerName Server1 -Name VM1 -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx'

Aşağıdaki örnek bir VM'yi D sürücüsünün köküne aktarır:

Export-VM -ComputerName Server1 -Name VM1 -Path D:\

VM'leri yeniden adlandırma

Rename-VM Cmdlet bir VM'yi yeniden adlandırmak için kullanılır. Ayrıntılı bilgi için Rename-VM başvuru belgelerine bakın.

Aşağıdaki örnek, VM1'i VM2 olarak yeniden adlandırır ve yeniden adlandırılan sanal makineyi görüntüler:

Rename-VM -ComputerName Server1 -Name VM1 -NewName VM2

VM denetim noktası oluşturma

Checkpoint-VM Cmdlet, vm için bir denetim noktası oluşturmak için kullanılır. Ayrıntılı bilgi için Checkpoint-VM başvuru belgelerine bakın.

Aşağıdaki örnek, Test adlı VM için BeforeInstallingUpdates adlı bir denetim noktası oluşturur.

Checkpoint-VM -ComputerName Server1 -Name VM1 -SnapshotName BeforeInstallingUpdates

VM için VHD oluşturma

New-VHD Cmdlet, vm için yeni bir VHD oluşturmak için kullanılır. Nasıl kullanılacağı hakkında ayrıntılı bilgi için New-VHD başvuru belgelerine bakın.

VM'ye ağ bağdaştırıcısı ekleme

Add-VMNetworkAdapter Cmdlet, vm'ye sanal ağ bağdaştırıcısı eklemek için kullanılır. Aşağıda birkaç örnek gösterilmektedir. Nasıl kullanılacağı hakkında ayrıntılı bilgi için Add-VMNetworkAdapter başvuru belgelerine bakın.

Aşağıdaki örnek, Redmond NIC1 adlı bir sanal ağ bağdaştırıcısını VM1 adlı bir sanal makineye ekler:

Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -Name "Redmond NIC1"

Bu örnek, VM1 adlı bir sanal makineye bir sanal ağ bağdaştırıcısı ekler ve bunu Ağ adlı bir sanal anahtara bağlar:

Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -SwitchName Network

VM için sanal anahtar oluşturma

New-VMSwitch Cmdlet, bir VM konağında yeni sanal anahtar için kullanılır. Nasıl kullanılacağı hakkında ayrıntılı bilgi için New-VMSwitch başvuru belgelerine bakın.

Aşağıdaki örnek, Kablolu Ethernet Bağlantısı 3 adlı bir ağ bağdaştırıcısına bağlanan ve ağırlık tabanlı minimum bant genişliğini destekleyen "QoS anahtarı" adlı yeni bir anahtar oluşturur.

New-VMSwitch "QoS Switch" -NetAdapterName "Wired Ethernet Connection 3" -MinimumBandwidthMode Weight

VM için bellek ayarlama

Set-VMMemory Cmdlet, bir VM'nin belleğini yapılandırmak için kullanılır. Nasıl kullanılacağı hakkında ayrıntılı bilgi için Set-VMMemory başvuru belgelerine bakın.

Aşağıdaki örnek, VM1 adlı bir VM'de dinamik belleği etkinleştirir, en düşük, başlangıç ve en yüksek belleği, bellek önceliğini ve arabelleği ayarlar.

Set-VMMemory -ComputerName Server1 -Name VM1 -DynamicMemoryEnabled $true -MinimumBytes 64MB -StartupBytes 256MB -MaximumBytes 2GB -Priority 80 -Buffer 25

VM için sanal işlemcileri ayarlama

Set-VMProcessor Cmdlet bir VM için sanal işlemcileri yapılandırmak için kullanılır. Nasıl kullanılacağı hakkında ayrıntılı bilgi için Set-VMProcessor başvuru belgelerine bakın.

Aşağıdaki örnek, VM1 adlı bir VM'yi iki sanal işlemci, %10 yedek, %75 sınırı ve göreli ağırlığı 200 olan yapılandırılır.

Set-VMProcessor -ComputerName Server1 -Name VM1 -Count 2 -Reserve 10 -Maximum 75 -RelativeWeight 200

VM'yi kaldırma

Bir VM'nin PowerShell aracılığıyla kaldırılması veya silinmesi, VM'nin yapılandırma dosyasını siler ancak ilişkili sanal sabit sürücüleri silmez. Sanal sabit sürücüler de dahil olmak üzere tüm dosyaları içeren bir VM'yi silmek istiyorsanız Windows Yönetim Merkezi'ni kullanmayı göz önünde bulundurun.

Bir VM'yi silmeden önce VM'nin KAPALI olduğundan emin olun. Bir VM silindiğinde yapılandırma dosyasının geri alınamaz şekilde silindiğini unutmayın.

Vm'yi sunucudan kaldırma

Bir VM'yi ve kaynaklarını bir sunucudan kaldırmak veya silmek için, önce aşağıdaki cmdlet'i kullanarak sunucudaki tüm VM'leri bulun:

Get-VM -Name VM1

Ardından, sunucudan kaldırmak istediğiniz her VM için aşağıdaki cmdlet'i çalıştırın:

Remove-VM -Name VM1

Kümeden VM kaldırma

Bir VM'yi ve kaynaklarını bir kümeden kaldırmak veya silmek için, önce aşağıdaki cmdlet'i kullanarak bu vm'leri bulun:

Get-ClusterGroup

Ardından, kümeden kaldırmak istediğiniz her VM için aşağıdaki cmdlet'i çalıştırın:

Remove-ClusterGroup -RemoveResources -Name VM1

Sonraki adımlar

Ayrıca Windows Yönetim Merkezi'ni kullanarak VM'ler oluşturabilir ve yönetebilirsiniz. Daha fazla bilgi için bkz . Windows Yönetim Merkezi.