Skip to content

minority opinions

Menu
  • Home
  • 꿀팁정리 & 자기계발
  • 기술 정보 & 테크 소식
  • 이슈 뉴스 정리
  • 주식 경제
  • Tags
Menu

Windows 윈도우 VM 자동 생성 powershell script

Posted on 11월 17, 20217월 8, 2023 by Daniel J.

Hyper-v 클라우드 환경에서 일괄적으로 여러대 VM을 생성해야할때 유용한 powershell script.


# 메모리값 입력
$Mem = Get-WmiObject -Class Win32_OperatingSystem -Namespace root/cimv2 -ComputerName .
Write-Host "MemoryInfo :"$Mem.FreePhysicalMemory"/"$Mem.TotalVisibleMemorySize

# 전체 타이머 시작
$ElapsedTotal = [System.Diagnostics.Stopwatch]::StartNew() 
 
for($i=10; $i -le 10; $i++)
{
    # 루프단위 타이머 시작
    $elapsed = [System.Diagnostics.Stopwatch]::StartNew() 

    #변수 입력
    $VMname = "Virtual_$i";
    $VMcore = "2"
    $default_VHDdir = "C:\VM\"
    $default_VHD = "Virtual.vhdx"
    $destVHDdir = "C:\VM\$VMname"
    $destVHD = "\$VMname.vhdx"
    $VM_Template = "$destVHDdir$destVHD"
   
    # 가상머신 생성
    Write-Host "$VMname VM Creating..."
    New-VM -name $VMname -path $destVHDdir
   
    # 메모리 할당 MB단위
    #Write-Host "$VMname 메모리 할당합니다."
    #Set-VM -StaticMemory -Name $VMname -MemoryStartupBytes 2GB
	#Set-VM -DynamicMemory  -Name $VMname -MemoryMaximumBytes 2GB
	Set-VM -DynamicMemory -Name $VMname -MemoryStartupBytes 2GB -MemoryMaximumBytes 2GB
   
    # CPU_core 할당
    #Write-Host "$VMname CPU-Core를 할당합니다."
    SET-VMProcessor –VMName $VMname –Count $VMcore
    #sleep(1)
 
    # NIC 추가
    #Write-Host "$VMname 가상 네트워크 어댑터를 추가합니다."
    Connect-VMNetworkAdapter -VMName $VMName -SwitchName "VLAN1"
  
    # 기본VHD 파일을 새로 생성한 VM으로 복사
    #Write-Host "$VMname 원본 VHD파일을 생성중인 가상머신의 폴더로 복사중입니다."
    copy $default_VHDdir$default_VHD $destVHDdir$destVHD
    #sleep(1) 
  
    # 생성된 가상머신에 하드디스크 추가 및 복사된 VHD 연결
    Write-Host "$VMname VHD 이미지연결합니다."
    Add-VMHardDiskDrive -VMName $VMName -Path $VM_Template
    #sleep(1)
  
    # 생성한 가상머신 Start
    #Write-Host "$VMname 시작합니다.
    Start-VM -name $VMname

    # 루프 한번 동작 완료 후 시간 출력
    Write-Host "$VMname VM Create Time: $($elapsed.Elapsed.ToString())`n"
}

# 전체 완료 후 시간 출력
Write-Host "Total VM Create Time: $($ElapsedTotal.Elapsed.ToString())`n"
sleep 5

#전체 VM 현황 출력
Get-VM

현업에서 가끔 POC나 BMT 목적으로 VM을 동시에 여러대 생성하거나 삭제해야할 이슈가 있을때 해당 파워쉘 스크립트를 사용하면 편리하다.

이 글 공유하기:

  • 페이스북에 공유하려면 클릭하세요. (새 창에서 열림) Facebook
  • 클릭하여 X에서 공유 (새 창에서 열림) X
  • 인쇄하기 (새 창에서 열림) 인쇄
  • 클릭하여 친구에게 이메일로 링크 보내기 (새 창에서 열림) 전자우편
  • Telegram에 공유하려면 클릭하세요. (새 창에서 열림) Telegram
  • WhatsApp에 공유하려면 클릭하세요. (새 창에서 열림) WhatsApp

이것이 좋아요:

좋아하기 가져오는 중...

관련

답글 남기기 응답 취소

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Category

  • Article (66)
  • Uncategorized (178)
  • 게임 소식 (13)
  • 기술 정보 & 테크 소식 (260)
  • 꿀팁정리 & 자기계발 (317)
  • 블로그 (26)
  • 사건 사고 (64)
  • 역사 (35)
  • 영화 & 드라마 & 애니메이션 (27)
  • 이슈 뉴스 정리 (207)
  • 정치 인물 사회 (122)
  • 주식 경제 (119)

Recent Posts

  • 위고비(Wegovy) 효능과 가격(1펜) 정리

    위고비(Wegovy) 효능과 가격(1펜) 정리

    2월 16, 2025
  • 도메인 URL 주소 단축하는 사이트 모음

    도메인 URL 주소 단축하는 사이트 모음

    1월 30, 2025
  • 5년전 정혜수 MBC 기상캐스터가 해고당하면서 올린 글

    5년전 정혜수 MBC 기상캐스터가 해고당하면서 올린 글

    1월 28, 2025
  • MBC 기상캐스터 오요안나 자살과 집단 괴롭힘 가해자

    MBC 기상캐스터 오요안나 자살과 집단 괴롭힘 가해자

    1월 27, 2025
  • 홍장원 전 국정원 1차장 좌파이력 정리

    홍장원 전 국정원 1차장 좌파이력 정리

    1월 22, 2025

Popular Posts

©2025 minority opinions | Design: Newspaperly WordPress Theme
%d