কম্পিউটার

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

এই নিবন্ধটি PowerShell কনসোল থেকে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা সম্পর্কে। আমরা কীভাবে ভার্চুয়াল সুইচ এবং ভার্চুয়াল মেশিন তৈরি করব, ভিএম সেটিংস পরিবর্তন করব এবং ভিএম পরিচালনা করব তা দেখব। আপনি আপনার Hyper-V VM ম্যানুয়ালি পরিচালনা করতে বা আপনার PowerShell স্ক্রিপ্টে বিভিন্ন কাজ স্বয়ংক্রিয় করতে এই কমান্ডগুলি ব্যবহার করতে পারেন।

উইন্ডোজ সার্ভার এবং উইন্ডোজ 10/11 এ হাইপার-ভি রোল কিভাবে সক্ষম করবেন

Hyper-V ভূমিকা ইনস্টল করার জন্য, একটি হোস্টের ভার্চুয়ালাইজেশন সমর্থন সহ একটি SLAT- সক্ষম CPU থাকতে হবে। উইন্ডোজ সার্ভারে, হাইপার-ভি ভূমিকা ইনস্টল করতে নিম্নলিখিত পাওয়ারশেল কমান্ড ব্যবহার করা হয়:

Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart

ডেস্কটপ সংস্করণে (উইন্ডোজ 10 এবং 11), হাইপার-ভি ভূমিকা নিম্নরূপ ইনস্টল করা হয়:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All

একটি Hyper-V হোস্ট পরিচালনা করতে, Hyper-V PowerShell মডিউল কম্পিউটারে ইনস্টল করা আবশ্যক। আপনি উপলব্ধ কমান্ডগুলির একটি সম্পূর্ণ তালিকা প্রদর্শন করতে পারেন (সেগুলি আপনার উইন্ডোজ সংস্করণের উপর নির্ভর করে) নিম্নরূপ:

Get-Command -Module hyper-v

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

উইন্ডোজ সার্ভার 2022-এ, হাইপার-ভি মডিউলে 245টি cmdlet পাওয়া যায়।

হাইপার-ভি হোস্ট সেটিংসের একটি তালিকা প্রদর্শন করতে, নীচের কমান্ডটি ব্যবহার করুন:

Get-VMHost|fl *

উপলব্ধ CPU কোর এবং RAM এর সংখ্যা সম্পর্কে শুধুমাত্র তথ্য দেখানোর জন্য:

Get-VMHost| select LogicalProcessorCount, MemoryCapacity নির্বাচন করুন

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

Set-VMHost ব্যবহার করুন হাইপার-ভি হোস্ট সেটিংস পরিবর্তন করতে। নিম্নলিখিত কমান্ডটি ভার্চুয়াল ডিস্ক এবং VM কনফিগারেশন ফাইলগুলিতে ডিফল্ট পাথগুলি পরিবর্তন করবে:

Set-VMHost -VirtualMachinePath E:\VMs -VirtualHardDiskPath E:\VMs\VHD'

PowerShell দিয়ে একটি হাইপার-ভি ভার্চুয়াল সুইচ তৈরি করুন

প্রথমত, আপনার হাইপার-ভি হোস্টে একটি ভার্চুয়াল সুইচ তৈরি করুন। ভার্চুয়াল মেশিন শুধুমাত্র ভার্চুয়াল সুইচের মাধ্যমে নেটওয়ার্ক অ্যাক্সেস করতে পারে।

আসুন হাইপার-ভি হোস্টে উপলব্ধ শারীরিক নেটওয়ার্ক অ্যাডাপ্টারের একটি তালিকা প্রদর্শন করি:

Get-NetAdapter | where {$_.status -eq "up"}

যদি আপনার সার্ভার SR-IOV (একক-রুট ইনপুট/আউটপুট (I/O) ভার্চুয়ালাইজেশন) সমর্থন করে , মনে রাখবেন যে আপনার সুইচ তৈরি করার সময় আপনার বিকল্পটি সক্রিয় করা উচিত। আপনি একটি বিদ্যমান vSwitch এর জন্য SR-IOV সক্ষম করতে পারবেন না৷ Hyper-V VM-এর জন্য SR-IOV সমর্থন কীভাবে সক্ষম করবেন সে সম্পর্কে আরও জানুন।

একটি বাহ্যিক ভার্চুয়াল সুইচ তৈরি করুন:

New-VMSwitch -Name "ExternalVMSwitch" -AllowManagementOS $True -NetAdapterName Ethernet0 -SwitchType External

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

পাওয়ারশেল ব্যবহার করে একটি হাইপার-ভি ভার্চুয়াল মেশিন তৈরি করুন

একটি নতুন হাইপার-ভি ভার্চুয়াল মেশিন তৈরি করতে, New-VM cmdlet ব্যবহার করা হয়। এই উদাহরণে, আমরা 1GB RAM এবং 10GB VHDX ডিস্ক সহ একটি নতুন জেনারেশন 2 VM তৈরি করব৷

$VMName = "mun-prx2"
$VM = @{
Name = $VMName
MemoryStartupBytes = 1Gb
Generation = 2
NewVHDPath = "E:\HV\$VMName\$VMName.vhdx"
NewVHDSizeBytes = 10Gb
BootDevice = "VHD"
Path = "E:\HV\$VMName"
SwitchName = "ExternalVMSwitch"
}
New-VM @VM

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

হাইপার-ভিতে একটি উইন্ডোজ 11 ভার্চুয়াল মেশিন তৈরি করতে পাওয়ারশেল ব্যবহার করার একটি উদাহরণ এখানে রয়েছে।

আসুন VM সেটিংস পরিবর্তন করতে আপনি যে কমান্ডগুলি ব্যবহার করতে পারেন তা দেখুন।

একটি VM-এর জন্য RAM আকার বাড়াতে:

Get-VM -Name mun-prx2| Set-VMMemory -StartupBytes 2Gb

vCPU এর সংখ্যা পরিবর্তন করতে:

Set-VMProcessor mun-prx2 -Count 2

একটি হাইপার-ভি ভার্চুয়াল মেশিনের জন্য স্বয়ংক্রিয় স্টার্টআপ সক্ষম করুন:

Get-VM –VMname mun-prx2 | Set-VM –AutomaticStartAction Start

VM-তে একটি অতিরিক্ত ভার্চুয়াল ডিস্ক সংযোগ করতে, প্রথমে vhdx ফাইলটি তৈরি করুন:

New-VHD -Path 'C:\VM\new-prx2-drive.vhdx' -SizeBytes 2GB

এবং তারপর এটিকে আপনার VM এর সাথে সংযুক্ত করুন:

Add-VMHardDiskDrive -VMName mun-prx2 -Path 'C:\VM\new-prx2-drive.vhdx'

পাওয়ারশেল দিয়ে হাইপার-ভি ভিএম কীভাবে পরিচালনা করবেন?

হাইপার-ভি হোস্টে ভার্চুয়াল মেশিনের একটি তালিকা প্রদর্শন করতে:

Get-VM

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

কমান্ড কিছু মৌলিক বৈশিষ্ট্য সহ VM-এর তালিকা প্রদান করে। সমস্ত VM বৈশিষ্ট্য প্রদর্শন করতে, নীচের কমান্ডটি চালান:

Get-VM -Name mun-dmz1 | fl *

শুধুমাত্র চলমান VM দেখানোর জন্য:

Get-VM | where {$_.State -eq 'Running'}

একটি ভার্চুয়াল মেশিন শুরু করতে:

Start-VM -Name mun-app01

সব বন্ধ ভার্চুয়াল মেশিন চালু করতে:

Get-VM | where {$_.State -eq 'Off'} | Start-VM

VM বন্ধ করুন (অতিথি ওএসে ইন্টিগ্রেশন পরিষেবা ব্যবহার করে সঠিক শাটডাউন):

Stop-VM -Name mun-app01

VM বন্ধ করতে, টার্নঅফ করুন বিকল্প ব্যবহার করা হয়:

Stop-VM -Name mun-app01 –TurnOff

কীভাবে একটি প্রতিক্রিয়াহীন হাইপার-ভি ভিএম বন্ধ করবেন তা শিখুন।

একটি ভার্চুয়াল সিডি/ডিভিডি ডিভাইসে ISO ফাইল মাউন্ট করুন:

Set-VMDvdDrive -VMName mun-app01 -Path c:\iso\WinSrv2022.iso

আপনি USB ডিভাইস (মিডিয়া/ড্রাইভ) হাইপার-ভি VM-এ পুনঃনির্দেশিত করতে USB পাসথ্রু ব্যবহার করতে পারেন।

সমস্ত VM ফাইল ফ্লাইতে অন্য ডিস্কে সরাতে, নীচের কমান্ডটি ব্যবহার করুন:

Move-VMStorage mun-app01 -DestinationStoragePath D:\VM\mun-app01

আপনি Resize-VHD ব্যবহার করে ভার্চুয়াল ডিস্ক ফাইল প্রসারিত বা সঙ্কুচিত করতে পারেন cmdlet:

Resize-VHD -Path 'C:\VM\mun-fs01.vhdx' -SizeBytes 50Gb

একটি VM-এর একটি চেকপয়েন্ট (স্ন্যাপশট) তৈরি করতে:

Get-VM -Name mun-app01| Checkpoint-VM -SnapshotName "Before upgrading SAP"

উপলব্ধ চেকপয়েন্টগুলির একটি তালিকা প্রদর্শন করতে:

Get-Vm -Name mun-app01| Get-VMCheckpoint

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

চেকপয়েন্ট থেকে ভিএমকে আগের অবস্থায় ফিরিয়ে আনতে:

Restore-VMCheckpoint -Name "Before upgrading SAP" -VMName mun-app01 -Confirm:$false

একটি স্ন্যাপশট সরাতে:

Remove-VMCheckpoint -VMName mun-app01 -Name "Before upgrading SAP"

হাইপার-ভিতে একটি VM রপ্তানি, আমদানি এবং ক্লোনিং এই নিবন্ধে বর্ণনা করা হয়েছে:

Export-VM -Name mun-app01 -Path 'C:\VHD\export' -CaptureLiveState CaptureCrashConsistentState

হাইপার-ভি ভার্চুয়াল মেশিনের ব্যাকআপ নিতে আপনি বিল্ট-ইন উইন্ডোজ সার্ভার ব্যাকআপ (WSB) ব্যবহার করতে পারেন।

ভার্চুয়াল মেশিনের গেস্ট ওএসের আইপি ঠিকানা পেতে:

Get-VM | Select -ExpandProperty NetworkAdapters | Select VMName, IPAddresses, Status নির্বাচন করুন

একটি ভার্চুয়াল মেশিন কনসোলে সংযোগ করতে:

vmconnect.exe localhost mun-app01

PowerShell দিয়ে হাইপার-ভি ভার্চুয়াল মেশিন পরিচালনা করা

আপনি vmbus (Windows Server 2016, Windows 10, এবং পরবর্তীতে উপলব্ধ) মাধ্যমে ভার্চুয়াল মেশিনের গেস্ট OS-এর সাথে সরাসরি সংযোগ করতে PowerShell Direct ব্যবহার করতে পারেন। ইনভোক-কমান্ড ব্যবহার করুন (স্ক্রিপ্ট চালানোর জন্য) এবং এন্টার-PSSession (একটি ইন্টারেক্টিভ পাওয়ারশেল সেশন চালানোর জন্য):

Invoke-Command -VMName mun-app01 -ScriptBlock {Get-Process}
Enter-PSSession -VMName mun-app01

PowerShell ডাইরেক্ট ব্যবহার করে একটি হাইপার-ভি হোস্ট থেকে একটি ভার্চুয়াল মেশিনে ফাইল কপি করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

$PSSession = New-PSSession -VMName mun-app01 -Credential (Get-Credential)
Copy-Item -ToSession $PSSession -Path E:\ISO\install_image.iso -Destination D:\ISO\

আপনি হাইপার-ভি হোস্টে ভার্চুয়াল মেশিনগুলিকে স্থানীয়ভাবে বা দূরবর্তীভাবে (উইন্ডোজ সার্ভার ফুল জিইউআই বা সার্ভার কোর মোডে, ফ্রি উইন্ডোজ হাইপার-ভি সার্ভারে, বা উইন্ডোজ 10) গ্রাফিকাল টুলগুলির সাথে হাইপার-ভি ম্যানেজার বা উইন্ডোজ অ্যাডমিন সেন্টার।


  1. হাইপার-ভি-তে ভার্চুয়াল মেশিনগুলি কীভাবে আমদানি, রপ্তানি বা ক্লোন করবেন

  2. হাইপার-ভি কনফিগার করুন এবং ব্যবহার করুন - উইন্ডোজ 10 এ ভার্চুয়াল মেশিন তৈরি করুন

  3. PowerShell ব্যবহার করে Hyper-V 2019-এ ভার্চুয়াল মেশিন তৈরি করা

  4. VMware কনভার্টার দিয়ে ভার্চুয়াল মেশিনে রূপান্তর করুন