Maacht-et-selwer Bare-Metal Provisioning, oder Automatesch Virbereedung vun Serveren vun Null

Moien, ech sinn Denis an ee vu menge Aktivitéitsberäicher ass d'Entwécklung vun Infrastrukturléisungen um X5. Haut wëll ech mat Iech deelen wéi Dir en automateschen Servervirbereedungssystem op Basis vun ëffentlech verfügbaren Tools ofsetzt. Menger Meenung no ass dat eng interessant, einfach a flexibel Léisung.

Maacht-et-selwer Bare-Metal Provisioning, oder Automatesch Virbereedung vun Serveren vun Null

Mat Virbereedung mengen mir: en neie Server aus der Këscht an e komplett konfiguréierten Server mat OS maachen. Linux oder mam ESXi Hypervisor (den Détachement vu Windows Server gëtt net an dësem Artikel diskutéiert).

D 'Begrëffer:

  • Serveren - Serveren déi musse konfiguréiert ginn.
  • Installatiounsserver ass den Haaptserver deen de ganze Virbereedungsprozess iwwer dem Netz ubitt.

Firwat ass Automatisatioun néideg?

Loosst d'soen datt et eng Aufgab ass: d'Servere vun Null massiv virzebereeden, op engem Héichpunkt - 30 pro Dag. Server vu verschiddene Hiersteller a Modeller, verschidde Betribssystemer kënnen op hinnen installéiert ginn, a kënnen oder net en Hypervisor hunn.

Wéi eng Operatioune sinn am Setupprozess abegraff (ouni Automatisatioun):

  • eng Tastatur, Maus, Monitor op de Server verbannen;
  • konfiguréieren BIOS, Razzia, IPMI;
  • Update Komponent Firmware;
  • en Dateisystembild z'installéieren (oder en Hypervisor installéieren a virtuelle Maschinnen kopéieren);

Note. Alternativ ass OS Deployment méiglech duerch Installatioun mat enger Auto-Äntwert Datei. Mä dëst wäert net am Artikel diskutéiert ginn. Och wann Dir hei ënnen gesitt datt dës Funktionalitéit net schwéier ass.

  • OS Parameteren konfiguréieren (Hostnumm, IP, etc.).

Mat dëser Approche ginn déiselwecht Astellunge sequentiell op all Server duerchgefouert. D'Effizienz vun esou Aarbecht ass ganz niddereg.

D'Essenz vun der Automatisatioun ass d'mënschlech Participatioun vum Servervirbereedungsprozess ze eliminéieren. Sou vill wéi méiglech.

D'Automatisatioun reduzéiert d'Downtime tëscht Operatiounen a mécht et méiglech, verschidde Server gläichzäiteg ze versuergen. D'Wahrscheinlechkeet vu Feeler wéinst mënschleche Faktoren ass och staark reduzéiert.

Maacht-et-selwer Bare-Metal Provisioning, oder Automatesch Virbereedung vun Serveren vun Null

Wéi gëtt Server automatesch konfiguréiert?

Loosst eis all Etappe am Detail analyséieren.

Dir hutt e Linux Server deen Dir als PXE Installatiounsserver benotzt. Servicer sinn installéiert a konfiguréiert op et: DHCP, TFTP.

Also, mir booten de Server (dee muss konfiguréiert ginn) iwwer PXE. Loosst eis erënneren wéi et funktionnéiert:

  • Network Boot gëtt um Server ausgewielt.
  • De Server lued d'PXE-ROM vun der Netzwierkkaart a kontaktéiert den Installatiounsserver iwwer DHCP fir eng Netzwierkadress ze kréien.
  • Den DHCP Installatiounsserver gëtt eng Adress eraus, souwéi Instruktioune fir weider erofzelueden iwwer PXE.
  • De Server lued den Netzwierk Bootloader vum Installatiounsserver iwwer PXE, weider Luede geschitt no der PXE Konfiguratiounsdatei.
  • De Stiwwel geschitt baséiert op de kritt Parameteren (Kernel, initramfs, Mount Punkten, squashfs Bild, etc.).

Note. Den Artikel beschreift Booten iwwer PXE iwwer BIOS Modus. De Moment sinn Hiersteller aktiv UEFI Bootmode implementéieren. Fir PXE ass den Ënnerscheed an der Konfiguratioun vum DHCP Server an der Präsenz vun engem zousätzleche Bootloader.

Loosst eis e Beispill vun enger PXE Server Konfiguratioun kucken (pxelinux Menü).

Datei pxelinux.cfg/default:

default menu.c32
prompt 0
timeout 100
menu title X5 PXE Boot Menu
LABEL InstallServer Menu
	MENU LABEL InstallServer
	KERNEL menu.c32
	APPEND pxelinux.cfg/installserver
LABEL VMware Menu
	MENU LABEL VMware ESXi Install
	KERNEL menu.c32
	APPEND pxelinux.cfg/vmware
LABEL toolkit // меню по умолчанию
	MENU LABEL Linux Scripting Toolkits
	MENU default
	KERNEL menu.c32
	APPEND pxelinux.cfg/toolkit // переход на следующее меню

Datei pxelinux.cfg/toolkit:

prompt 0
timeout 100
menu title X5 PXE Boot Menu
label mainmenu
    menu label ^Return to Main Menu
    kernel menu.c32
    append pxelinux.cfg/default
label x5toolkit-auto // по умолчанию — автоматический режим
        menu label x5 toolkit autoinstall
        menu default
        kernel toolkit/tkcustom-kernel
        append initrd=toolkit/tk-initramfs.gz quiet net.ifnames=0 biosdevname=0 nfs_toolkit_ip=192.168.200.1 nfs_toolkit_path=tftpboot/toolkit nfs_toolkit_script=scripts/mount.sh script_cmd=master-install.sh CMDIS2=”…”
label x5toolkit-shell // для отладки - консоль
        menu label x5 toolkit shell
        kernel toolkit/tkcustom-kernel
        append initrd=toolkit/tkcustom-initramfs.gz quiet net.ifnames=0 biosdevname=0 nfs_toolkit_ip=192.168.200.1 nfs_toolkit_path=tftpboot/toolkit nfs_toolkit_script=scripts/mount.sh script_cmd=/bin/bash CMDIS2=”…”

De Kernel an Initramfs op dëser Etapp sinn en Zwëschen Linux Bild, mat der Hëllef vun deem d'Haaptvirbereedung an d'Konfiguratioun vum Server stattfënnt.

Wéi Dir gesitt, passéiert de Bootloader vill Parameteren un de Kernel. E puer vun dëse Parametere gi vum Kernel selwer benotzt. A mir kënnen e puer fir eis eegen Zwecker benotzen. Dëst wäert méi spéit diskutéiert ginn, awer fir de Moment kënnt Dir just drun erënneren datt all passéiert Parameteren am Zwëschen Linux Bild iwwer /proc/cmdline verfügbar sinn.

Wou kann ech se kréien, Kernel an initramfs?
Als Basis kënnt Dir all Linux Verdeelung wielen. Wat mir oppassen wann Dir wielt:

  • d'Boot Image muss universell sinn (Disponibilitéit vu Chauffeuren, Fäegkeet fir zousätzlech Utilities z'installéieren);
  • Wahrscheinlech musst Dir d'Initramfs personaliséieren.

Wéi gëtt dat an eiser Léisung fir X5 gemaach? Als Basis gouf CentOS 7 gewielt, loosst eis de folgenden Trick probéieren: déi zukünfteg Bildstruktur virbereeden, se an en Archiv packen an en Initramfs erstellen, an deem et eisen Dateiesystemarchiv gëtt. Beim Luede vum Bild gëtt d'Archiv an déi erstallt tmpfs Partition erweidert. Op dës Manéier kréie mir e minimalt, awer vollwäerteg Live Linux Bild mat all néideg Utilities, besteet aus nëmmen zwee Dateien: vmkernel an initramfs.

#создаем директории: 

mkdir -p /tftpboot/toolkit/CustomTK/rootfs /tftpboot/toolkit/CustomTK/initramfs/bin

#подготавливаем структуру:

yum groups -y install "Minimal Install" --installroot=/tftpboot/toolkit/CustomTK/rootfs/
yum -y install nfs-utils mariadb ntpdate mtools syslinux mdadm tbb libgomp efibootmgr dosfstools net-tools pciutils openssl make ipmitool OpenIPMI-modalias rng-tools --installroot=/tftpboot/toolkit/CustomTK/rootfs/
yum -y remove biosdevname --installroot=/tftpboot/toolkit/CustomTK/rootfs/

# подготавливаем initramfs:

wget https://busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-x86_64 -O /tftpboot/toolkit/CustomTK/initramfs/bin/busybox
chmod a+x /tftpboot/toolkit/CustomTK/initramfs/bin/busybox
cp /tftpboot/toolkit/CustomTK/rootfs/boot/vmlinuz-3.10.0-957.el7.x86_64 /tftpboot/toolkit/tkcustom-kernel

# создаем /tftpboot/toolkit/CustomTK/initramfs/init (ниже содержание скрипта):

#!/bin/busybox sh
/bin/busybox --install /bin
mkdir -p /dev /proc /sys /var/run /newroot
mount -t proc proc /proc
mount -o mode=0755 -t devtmpfs devtmpfs /dev
mkdir -p /dev/pts /dev/shm /dev/mapper /dev/vc
mount -t devpts -o gid=5,mode=620 devpts /dev/pts
mount -t sysfs sysfs /sys
mount -t tmpfs -o size=4000m tmpfs /newroot
echo -n "Extracting rootfs... "
xz -d -c -f rootfs.tar.xz | tar -x -f - -C /newroot
echo "done"
mkdir -p /newroot/dev /newroot/proc /newroot/sys
mount --move /sys  /newroot/sys
mount --move /proc /newroot/proc
mount --move /dev  /newroot/dev
exec switch_root /newroot /sbin/init

# упаковываем rootfs и initramfs:

cd /tftpboot/toolkit/CustomTK/rootfs
tar cJf /tftpboot/toolkit/CustomTK/initramfs/rootfs.tar.xz --exclude ./proc --exclude ./sys --exclude ./dev .
cd /tftpboot/toolkit/CustomTK/initramfs
find . -print0 | cpio --null -ov --format=newc | gzip -9 > /tftpboot/toolkit/tkcustom-initramfs-new.gz

Also hu mir de Kernel an d'Initramfs spezifizéiert, déi geluede ginn. Als Resultat, op dëser Etapp, andeems Dir den Zwëschen Linux Bild iwwer PXE lued, kréie mir d'OS Konsole.

Super, awer elo musse mir d'Kontroll op eis "Automatisatioun" transferéieren.

Et kann esou gemaach ginn.

Loosst eis unhuelen datt mir nom Luede vum Bild plangen d'Kontroll op de mount.sh Skript ze transferéieren.
Loosst eis de mount.sh Skript an Autorun enthalen. Fir dëst ze maachen, musst Dir d'Initramfs änneren:

  • unpack initramfs (wa mir déi uewe genannte initramfs Optioun benotzen, ass dëst net erfuerderlech)
  • enthält Code am Startup deen d'Parameteren analyséiert, déi duerch /proc/cmdline passéiert sinn an d'Kontroll weider transferéieren;
  • packen initramfs.

Note. Am Fall vum X5 Toolkit gëtt d'Luedekontroll op d'Skript transferéiert /opt/x5/toolkit/bin/hook.sh с помощью override.conf в getty tty1 (ExecStart=…)

Also ass d'Bild gelueden, an deem de mount.sh Skript bei Autorun ufänkt. Als nächst analyséiert de mount.sh Skript déi passéiert Parameteren (script_cmd=) während der Ausféierung a lancéiert den néidege Programm / Skript.

Label Toolkit-Auto
kernel...
append... nfs_toolkit_script=scripts/mount.sh script_cmd=master-install.sh

Label Toolkit-Réibau
kernel...
append... nfs_toolkit_script=scripts/mount.sh script_cmd=/bin/bash

Maacht-et-selwer Bare-Metal Provisioning, oder Automatesch Virbereedung vun Serveren vun Null

Hei op der lénker Säit ass de PXE Menü, op der rietser ass de Kontrolltransferdiagramm.

Mir hunn den Transfert vun der Kontroll erausfonnt. Ofhängeg vun der Wiel vum PXE-Menü gëtt entweder den Auto-Konfiguratiounsskript oder d'Debuggingkonsole gestart.

Am Fall vun automatescher Konfiguratioun sinn déi néideg Verzeichnisser vum Installatiounsserver montéiert, déi enthalen:

  • Scripten;
  • gespäichert BIOS / UEFI Template fir verschidde Serveren;
  • Firmware;
  • Server Utilities;
  • Logbicher

Als nächst gëtt de mount.sh Skript d'Kontroll op de Master-install.sh Skript aus dem Skript Verzeechnes iwwerdroen.

De Skriptbaum (d'Uerdnung an där se lancéiert ginn) gesäit sou eppes aus:

  • Master-installéieren
  • sharefunctions (shared functions)
  • info (Informatiounsausgab)
  • Modeller (Installatiounsparameter setzen op Basis vum Servermodell)
  • prepare_utils (Installatioun vun néideg Utilities)
  • fwupdate (Firmware Update)
  • diag (Elementardiagnostik)
  • biosconf (BIOS/UEFI Astellungen)
  • Clockfix (Astellung vun der Zäit um Motherboard)
  • srmconf (Remote Interface Interface Konfiguratioun)
  • raidconf (logesch Bänn konfiguréieren)

ee vun:

  • Preinstall (iwwerdroen d'Kontroll op den OS oder den Hypervisor Installateur, wéi ESXi)
  • fusionéiert-installéieren (direkt Ufank vum Auspacken vum Bild)

Elo wësse mer:

  • wéi een Server iwwer PXE booten;
  • wéi Dir Kontroll op Ären eegene Skript transferéiert.


Loosst eis weidergoen. Déi folgend Froen goufen relevant:

  • Wéi identifizéieren de Server dee mir virbereeden?
  • Wéi eng Utilities a wéi de Server ze konfiguréieren?
  • Wéi kréien ech Astellunge fir e spezifesche Server?

Wéi identifizéieren de Server dee mir virbereeden?

Et ass einfach - DMI:

dmidecode –s system-product-name
dmidecode –s system-manufacturer
dmidecode –s system-serial-number

Alles wat Dir braucht ass hei: Verkeefer, Modell, Seriennummer. Wann Dir net sécher sidd datt dës Informatioun op all Server präsent ass, kënnt Dir se duerch hir MAC Adress identifizéieren. Oder op béide Weeër zur selwechter Zäit, wann d'Server Verkeefer anescht sinn an op e puer Modeller gëtt et einfach keng Informatioun iwwer d'Seriennummer.

Baséierend op d'Informatioun, déi kritt gëtt, ginn d'Netzwierker vum Installatiounsserver montéiert an alles wat néideg ass gelueden (Utilities, Firmware, asw.).

Wéi eng Utilities a wéi de Server ze konfiguréieren?

Ech wäert Utilities fir Linux fir e puer Hiersteller ubidden. All Utilities sinn op den offiziellen Websäite vu Verkeefer verfügbar.

Maacht-et-selwer Bare-Metal Provisioning, oder Automatesch Virbereedung vun Serveren vun Null

Mat der Firmware mengen ech alles ass kloer. Si kommen normalerweis a Form vu verpackten ausführbaren Dateien. Déi ausführbar Datei kontrolléiert de Firmware Update-Prozess a bericht de Retourcode.

BIOS an IPMI ginn normalerweis duerch Template konfiguréiert. Wann néideg, kann d'Schabloun geännert ginn virum Download.

RAID Utilities vun e puer Ubidder kënnen och mat enger Schabloun konfiguréiert ginn. Wann dat net de Fall ass, da musst Dir e Konfiguratiounsskript schreiwen.

D'Prozedur fir RAID opzestellen ass meeschtens wéi follegt:

  • Mir froen déi aktuell Konfiguratioun.
  • Wann et scho logesch Arrays gëtt, läschen mir se.
  • Loosst eis kucken wéi eng kierperlech Disken präsent sinn a wéi vill et sinn.
  • Erstellt eng nei logesch Array. Mir ënnerbriechen de Prozess am Fall vun engem Feeler.

Wéi kréien ech Astellunge fir e spezifesche Server?

Loosst eis unhuelen datt d'Astellunge vun all Server um Installatiounsserver gespäichert ginn. An dësem Fall, fir eis Fro ze beäntweren, musse mir als éischt entscheeden wéi d'Astellungen op den Installatiounsserver transferéiert ginn.

Am Ufank kënnt Dir mat Textdateien duerchgoen. (An Zukunft wëllt Dir vläicht eng Textdatei als Réckfallmethod benotze fir Astellungen ze transferéieren.)

Dir kënnt eng Textdatei um Installatiounsserver "deelen". A füügt säi Mount un de mount.sh Skript.

D'Linnen wäerten zum Beispill esou ausgesinn:

<Seriennummer> <Hostnumm> <Subnet>

Dës Linnen ginn vum Ingenieur vu senger Aarbechtsmaschinn op de Fichier transferéiert. An dann, wann Dir e Server opstellt, ginn d'Parameteren fir e spezifesche Server aus der Datei gelies.

Awer laangfristeg ass et besser eng Datebank ze benotzen fir Astellungen, Staaten a Logbicher vu Serverinstallatiounen ze späicheren.

Natierlech ass eng Datebank eleng net genuch, an Dir musst e Clientsdeel erstellen mat der Hëllef vun deenen Astellungen op d'Datebank transferéiert ginn. Dëst ass méi schwéier ze realiséieren am Verglach mat enger Textdatei, awer tatsächlech ass alles net sou schwéier wéi et schéngt. Et ass ganz méiglech eng minimal Versioun vun engem Client ze schreiwen, déi einfach Daten an d'Datebank selwer transferéiert. An an Zukunft wäert et méiglech sinn de Client Programm am fräie Modus ze verbesseren (Rapporten, Etiketten drécken, Notifikatiounen schécken, asw.

Andeems Dir eng spezifesch Ufro un d'Datebank mécht an d'Seriennummer vum Server spezifizéiert, kréie mir déi néideg Parameter fir de Server ze konfiguréieren.

Plus, mir brauchen net mat Spären ze kommen fir gläichzäiteg Zougang, wéi dat de Fall ass mat enger Textdatei.

Mir kënnen d'Konfiguratiounsprotokoll an d'Datebank op all Etappe schreiwen an den Installatiounsprozess iwwer Eventer a Fändelen vun de Virbereedungsstadien kontrolléieren.

Elo wësse mer wéi:

  • de Server iwwer PXE booten;
  • Iwwerdroung Kontroll op eis Schrëft;
  • de Server z'identifizéieren deen duerch seng Seriennummer virbereet muss ginn;
  • Konfiguratioun vum Server mat de passenden Utilities;
  • Transfermaart Astellungen op d'Installatioun Server Datebank benotzt de Client Deel.

Mir hunn erausfonnt wéi:

  • den installéierten Server kritt déi néideg Astellunge vun der Datebank;
  • all Virbereedung Fortschrëtter an der Datebank opgeholl (Logbicher, Evenementer, Etapp Fändelen).

Wat iwwer déi verschidden Zorte vu Software déi Dir installéiert? Wéi installéiere ech en Hypervisor, kopéiert e VM an konfiguréiert alles?

Am Fall vun engem Dateisystembild (Linux) op Hardware z'installéieren, ass alles ganz einfach:

  • Nodeems mir all d'Serverkomponenten opgeriicht hunn, setzen mir d'Bild aus.
  • Installéiert de Grub Bootloader.
  • Mir chrooten a konfiguréieren alles wat néideg ass.

Wéi d'Kontroll op d'OS Installateur ze Transfert (benotzt ESXi als Beispill).

  • Mir organiséieren den Transfer vun der Kontroll vun eisem Skript op den Hypervisor Installateur mat der automatescher Äntwertdatei (Kickstart):
  • Mir läschen déi aktuell Partitionen op der Disk.
  • Erstellt eng Partition mat enger Gréisst vun 500MB.
  • Mir markéieren et als bootbar.
  • Format op FAT32.
  • Kopéiert d'ESXi Installatiounsdateien op d'Wuerzel dovun.
  • Syslinux installéieren.
  • Kopéiert syslinux.cfg op /syslinux/

default esxi
prompt 1
timeout 50
label esxi
kernel mboot.c32
append -c boot.cfg

  • Kopéiert mboot.c32 op /syslinux.
  • Boot.cfg soll kernlopt=ks=ftp:// hunn /ks_esxi.cfg
  • Mir starten de Server nei.

Nodeems de Server nei gestart ass, wäert den ESXi Installateur vun der Festplack vum Server eroflueden. All néideg Installatiounsdateien ginn an d'Erënnerung gelueden an da fänkt d'ESXi-Installatioun un, no der spezifizéierter Auto-Äntwertdatei.

Hei sinn e puer Zeilen aus der Autoresponse Datei ks_esxi.cfg:

%firstboot --interpreter=busybox
…
# получаем серийный номер

SYSSN=$(esxcli hardware platform get | grep Serial | awk -F " " '{print $3}')

# получаем IP

IPADDRT=$(esxcli network ip interface ipv4 get | grep vmk0 | awk -F " " '{print $2}')
LAST_OCTET=$(echo $IPADDRT | awk -F'.' '{print $4}')

# подключаем NFS инсталл-сервера

esxcli storage nfs add -H is -s /srv/nfs_share -v nfsshare1

# копируем временные настройки ssh, для использования ssh-клиента

mv /etc/ssh /etc/ssh.tmp
cp -R /vmfs/volumes/nfsshare1/ssh /etc/
chmod go-r /etc/ssh/ssh_host_rsa_key

# копируем ovftool, для развертывания ВМ сейчас, плюс возможно пригодится позже

cp -R /vmfs/volumes/nfsshare1/ovftool /vmfs/volumes/datastore1/

# развертываем ВМ

/vmfs/volumes/datastore1/ovftool/tools/ovftool --acceptAllEulas --noSSLVerify --datastore=datastore1 --name=VM1 /vmfs/volumes/nfsshare1/VM_T/VM1.ova vi://root:[email protected]
/vmfs/volumes/datastore1/ovftool/tools/ovftool --acceptAllEulas --noSSLVerify --datastore=datastore1 --name=VM2 /vmfs/volumes/nfsshare1/VM_T/VM2.ova vi://root:[email protected]

# получаем строку с настройками нашего сервера

ssh root@is "mysql -h'192.168.0.1' -D'servers' -u'user' -p'secretpassword' -e "SELECT ... WHERE servers.serial='$SYSSN'"" | grep -v ^$ | sed 's/NULL//g' > /tmp/servers
...
# генерируем скрипт настройки сети

echo '#!/bin/sh' > /vmfs/volumes/datastore1/netconf.sh
echo "esxcli network ip interface ipv4 set -i=vmk0 -t=static --ipv4=$IPADDR --netmask=$S_SUB || exit 1" >> /vmfs/volumes/datastore1/netconf.sh
echo "esxcli network ip route ipv4 add -g=$S_GW -n=default || exit 1" >> /vmfs/volumes/datastore1/netconf.sh
chmod a+x /vmfs/volumes/datastore1/netconf.sh

# задаем параметр guestinfo.esxihost.id, указываем в нем серийный номер

echo "guestinfo.esxihost.id = "$SYSSN"" >> /vmfs/volumes/datastore1/VM1/VM1.vmx
echo "guestinfo.esxihost.id = "$SYSSN"" >> /vmfs/volumes/datastore1/VM2/VM2.vmx
...
# обновляем информацию в базе

SYSNAME=$(esxcli hardware platform get | grep Product | sed 's/Product Name://' | sed 's/^ *//')
UUID=$(vim-cmd hostsvc/hostsummary | grep uuid | sed 's/ //g;s/,$//' | sed 's/^uuid="//;s/"$//')
ssh root@is "mysql -D'servers' -u'user' -p'secretpassword' -e "UPDATE servers ... SET ... WHERE servers.serial='$SYSSN'""
ssh root@is "mysql -D'servers' -u'user' -p'secretpassword' -e "INSERT INTO events ...""

# возвращаем настройки SSH

rm -rf /etc/ssh
mv /etc/ssh.tmp /etc/ssh

# настраиваем сеть и перезагружаемся

esxcli system hostname set --fqdn=esx-${G_NICK}.x5.ru
/vmfs/volumes/datastore1/netconf.sh
reboot

Op dëser Etapp gëtt den Hypervisor installéiert a konfiguréiert, a virtuelle Maschinnen kopéiert.

Wéi konfiguréieren ech virtuell Maschinnen elo?

Mir hunn e bësse gefuddelt: während der Installatioun setzen mir de Parameter guestinfo.esxihost.id = "$SYSSN" an der VM1.vmx Datei an hunn d'Seriennummer vum kierperleche Server dran uginn.

Elo, nom Start, kann déi virtuell Maschinn (mat dem Vmware-Tools Package installéiert) op dëse Parameter zougräifen:

ESXI_SN=$(vmtoolsd --cmd "info-get guestinfo.esxihost.id")

Dat ass, de VM wäert fäeg sinn sech selwer z'identifizéieren (et weess d'Seriennummer vum kierperleche Host), eng Ufro un d'Installatiounsserver Datebank maachen an d'Parameteren kréien déi konfiguréiert musse ginn. Dëst ass alles an e Skript kompiléiert, deen automatesch lancéiert soll ginn wann guestos vm ufänkt (awer eemol: RunOnce).

Elo wësse mer wéi:

  • de Server iwwer PXE booten;
  • Iwwerdroung Kontroll op eis Schrëft;
  • de Server z'identifizéieren deen duerch seng Seriennummer virbereet muss ginn;
  • Konfiguratioun vum Server mat de passenden Utilities;
  • Transfermaart Astellungen op d'Installatioun Server Datebank benotzt de Client Deel;
  • verschidden Zorte vu Software konfiguréieren, inklusiv d'Deploy vum esxi Hypervisor an d'Konfiguratioun vun virtuelle Maschinnen (all automatesch).

Mir hunn erausfonnt wéi:

  • den installéierten Server kritt déi néideg Astellunge vun der Datebank;
  • all Virbereedung Fortschrëtter an der Datebank opgeholl (Logbicher, Evenementer, Etapp Fändelen).


Stréch:

Ech gleewen datt d'Eenzegaartegkeet vun dëser Léisung a senger Flexibilitéit, Einfachheet, Fäegkeeten a Villsäitegkeet läit.

Schreift w.e.g. an de Kommentaren wat Dir mengt.

Source: will.com

Setzt e Commentaire