Files
syno-scripts/Deployment_ESXi/erstellen_Kickstart.ps1
T

44 lines
1.4 KiB
PowerShell
Executable File

# Module laden
Import-Module ImportExcel
# Excel-Datei einlesen
$excelPath = "C:\Pfad\zu\esx_config.xlsx"
$hosts = Import-Excel -Path $excelPath -WorksheetName "Tabelle1"
# Zielverzeichnis für die Kickstart-Dateien
$outputDir = "C:\Kickstart-Files"
New-Item -ItemType Directory -Path $outputDir -Force | Out-Null
# Für jeden Host eine Kickstart-Datei generieren
foreach ($host in $hosts) {
$hostname = $host.Hostname
$fqdn = $host.FQDN
$ip = $host."Mgmt Net IP"
$netmask = $host."Mgnt Netmask"
$gateway = $host."vSan GW"
$rootPassword = $host."root PW"
$vsanIp = $host."vSan IP"
$vsanNetmask = $host."vSAN Netmask"
$vsanGateway = $host."vSan GW"
# Kickstart-Inhalt
$kickstart = @"
vmaccepteula
rootpw $rootPassword
install --firstdisk --overwritevmfs
network --bootproto=static --device=vmnic0 --ip=$ip --netmask=$netmask --gateway=$gateway --hostname=$hostname
reboot
%post --interpreter=busybox
# Nach der Installation auszuführende VSAN-Netzwerkkonfiguration
esxcli network ip interface add --interface-name=vmk1 --portgroup-name=vSAN
esxcli network ip interface ipv4 set --interface-name=vmk1 -I $vsanIp -N $vsanNetmask -g $vsanGateway --type=static
%end
"@
# Datei speichern
$filePath = Join-Path -Path $outputDir -ChildPath "$hostname-ks.cfg"
$kickstart | Out-File -FilePath $filePath -Encoding UTF8
Write-Host "Kickstart-Datei für $hostname erstellt: $filePath"
}