天天看點

Hyper-V 批量建立虛拟機自動改IP并配置PPPOE撥号

#----------------------批量建立虛拟機腳本-----------------

#母盤位置:注意不要放C槽!!

$MasterDiskPath="d:\20210816.vhdx"

#虛拟機存放位置

$VHDPath="d:\vhd\"

#虛拟機IP初始資訊

$IP="192.168.18."

#虛拟機IP開始值

$IP_START=2

#建立虛拟機的數量

$IP_ZENJIA=50

#虛拟機網卡名稱

$NetworkName1="nat"

$NetworkName2="adsl"

#虛拟機撥号網卡名稱

$pppoenic="eth1"

#撥号DNS+密碼

$DNS1="223.5.5.5"

$DNS2="223.6.6.6"

#虛拟機cpu核數

$LogicPrecesserCount=2

#虛拟機記憶體

$MomeryCount=2GB

#----------------------------下面部分不用修改------------------------

$IP_END=$IP_START+$IP_ZENJIA - 1

for($I=$IP_START;$I -le$IP_END;$I++) {

$VMDIR = $VHDPath + $IP +$I

#建立虛拟機磁盤存放的檔案夾

mkdir $VMDIR

#虛拟機名稱

$VMName = $IP + $I + ".vhdx"

#虛拟機檔案所在的完整路徑

$VMCFDIR = $VMDIR + "\" + $VMName

#建立完整磁盤到虛拟機指定的目錄下

#Copy-Item $MasterDiskPath $VMCFDIR

#建立差異磁盤到虛拟機指定的目錄下

New-VHD -ParentPath $MasterDiskPath -Path $VMCFDIR -Differencing

#讀取該虛拟機指定的撥号資訊

$Contents=Import-Csv "c:\pppoe.csv"

$csvpppoe=$Contents.csvpppoe[$I]

$csvpassword=$Contents.csvpassword[$I]

$csvvmhost=$Contents.csvvmhost[$I]

$csvvlan=$Contents.csvvlan[$I]

#建立虛拟機

$HYName = $csvvmhost + "/" + $IP + $I + "/" + $csvpppoe + "/" + $csvpassword

New-VM -Name $HYName -path $VMDIR -MemoryStartupBytes $MomeryCount -VHDPath $VMCFDIR -SwitchName $NetworkName1

#到虛拟機磁盤目錄

cd $VMDIR

#建立内網網卡資訊

New-Item "ip.txt" -type File

#寫入内網網卡資訊到檔案

"IPADDR=$IP$I" |Out-File ip.txt -encoding utf8

#建立自動撥号腳本

New-Item "autoad.sh" -type File

#編輯自動撥号腳本

"pppoe-setup <<EOF" |Add-Content autoad.sh -encoding utf8

" " |Add-Content autoad.sh -encoding utf8

"$csvpppoe" |Add-Content autoad.sh -encoding utf8

"$pppoenic" |Add-Content autoad.sh -encoding utf8

"no" |Add-Content autoad.sh -encoding utf8

"$DNS1" |Add-Content autoad.sh -encoding utf8

"$DNS2" |Add-Content autoad.sh -encoding utf8

"$csvpassword" |Add-Content autoad.sh -encoding utf8

"$csvpassword" |Add-Content autoad.sh -encoding utf8

"yes" |Add-Content autoad.sh -encoding utf8

"0" |Add-Content autoad.sh -encoding utf8

"yes" |Add-Content autoad.sh -encoding utf8

"y" |Add-Content autoad.sh -encoding utf8

"EOF" |Add-Content autoad.sh -encoding utf8

"hostnamectl set-hostname $csvvmhost" |Add-Content autoad.sh -encoding utf8

#生成腳本并複制到虛拟機目錄

New-Item "iso.bat" -type File

"ultraiso -volume iso -file %cd%\ip.txt -file %cd%\autoad.sh -output %cd%\ip.iso" |Add-Content iso.bat

#Copy-Item c:/iso.bat $VMDIR

#設定UltraISO環境變量

$Env:path=$Env:Path+";C:\"

#執行生成iso腳本

cmd /c iso.bat

#虛拟機挂載iso檔案

set-VMDvdDrive -VMName $HYName -path $VMDIR\ip.iso

#增加一個網卡擴充卡并挂載網卡

Add-VMNetworkAdapter $HYName -Name network2

Connect-VMNetworkAdapter $HYName -Name network2 $NetworkName2

#修改撥号網卡的vlan

#Set-VMNetworkAdaptervlan -VMName $HYName -VMNetworkAdapterName network2 -Access -VlanID $csvvlan

#設定虛拟機核心數量

Set-VMProcessor $HYName -Count $LogicPrecesserCount

#設定動态記憶體

#Set-VMMemory $HYName -StartupBytes 2048MB

#Set-VMMemory $HYName -DynamicMemoryEnabled $true -MaximumBytes 2048MB -MinimumBytes 800MB

#設定所有網卡的速率為20mb

#Set-VMNetworkAdapter –VMName $HYName -MaximumBandwidth 20000000

#删除網卡

#Remove-VMNetworkAdapter -VMName $HYName -VMNetworkAdapterName network2

#開啟路由器保護功能

Set-VMNetworkAdapter $HYName -RouterGuard On

#啟動虛拟朿

Start-VM -Name $HYName

}

CentOS母盤制作步驟

1.修改網卡配置檔案,将内網網卡配置檔案中的"IPADDR=192.168.2.2"該行删除

2.将gaiip.sh 上傳到系統/目錄

3.添加gaiip.sh執行權限

chmod +x /gaiip.sh

4.編輯開機啟動項

vi /etc/rc.d/rc.local

添加一行腳本路徑

/gaiip.sh

添加開機啟動項的執行權限

chmod +x /etc/rc.d/rc.local

5.将虛拟機關機,該虛拟機磁盤檔案即為可用來制作自動建立虛拟機的系統模闆

母盤腳本 gaiip.sh:

#!/bin/bash

mount /dev/cdrom /mnt

cp /mnt/ip.txt /ip.txt

cp /mnt/autoad.sh /autoad.sh

sed -i 's/^\xEF\xBB\xBF//g' /ip.txt

sed -i 's/^\xEF\xBB\xBF//g' /autoad.sh

dos2unix /ip.txt

dos2unix /autoad.sh

cat /ip.txt >>/etc/sysconfig/network-scripts/ifcfg-eth1

chmod 777 /autoad.sh

service network restart

sh /autoad.sh

rm -rf /ip.txt

rm -rf /autoad.sh

eject /dev/cdrom

開始批量建立虛拟機

1.将UltraISO.exe+iso.bat+adsl.txt+建立虛拟機改IP.PS1 拷貝到伺服器C槽根目錄

2.在伺服器中安裝UltraISO.exe ,安裝目錄使用預設路徑,不要修改!

3.使用PowerShell打開腳本檔案,修改模闆檔案路徑、存放虛拟機的路徑、網卡名稱/速率、IP資訊(隻允許寫IP,不要加其他資訊)、機器配置/數量等資訊

4.開始執行腳本,批量建立虛拟機并自動修改IP位址

5.使用PassPort軟體,結合EXCEL批量 導入映射資訊

6.測遠端連接配接,虛拟機建立完成

繼續閱讀