Salve, ego sum Dionysius et unus ex meis locis activitatis est progressus solutionum infrastructurarum ad X5. Hodie vobiscum communicare vellem quomodo ratio praeparationis latae servientis explicari potest in promptu instrumentorum publice fundatorum. Opinor, haec est interesting, simplex et flexibilis solutio.
Praeparationem significamus: novum ministratorem ex archa convertam in servitorem plene figuratum cum OS. Linux vel hypervisor cum ESXi (instructio servorum Fenestra hoc articulo non tractatur).
verbis:
- servers - servers qui necessitate configurari.
- servo institutionis principalis ministrator est qui totum processum praeparationis super retiacula praebet.
Cur automation opus est?
Negotium esse dicamus: massive praeparare servitores de scabere, ad apicem β 30 per diem. Servientes diversorum fabricantium et exemplorum, diversae systemata operativae in eis institui possunt, et hypervisorem habere vel non possunt.
Quae operationes in processu setup procedunt (sine automatione);
- claviaturas, murem, monitor servo;
- configurare BIOS, RAID, IPMI;
- firmware elementum update;
- imagini systematis fasciculi explicandam (vel hypervisorem instituendum et machinis virtualis effingo);
Nota. Vel, OS instruere potest per institutionem cum tabella auto-responsabili. Sed hoc in articulo non dicetur. Quamvis infra videbis hanc functionem addere non difficile est.
- OS parametri configurare (hostname, IP, etc.).
Cum hoc accessu, iidem ordines successiue in singulis ministris peraguntur. Talis operis efficacia est valde inferior.
Ratio automationis est abolere participationem humanam a processu praeparationis ministri. Quantum potest.
Automatio temporis inter operationes minuit et efficit ut pluribus simul ministrantibus provideatur. Multum etiam imminuitur errorum verisimilitudo ob factores hominum.
Quomodo servientes automatice configurantur?
Omnes gradus singillatim excutiamus.
Linux servo tuo uteris ut servo institutionis PXE uteris. Officia in ea installantur et configurantur: DHCP, TFTP.
Ita nos servo tabernus (quod configurari debet) per PXE. Meminerimus quomodo agit;
- Network tabernus quod in calculonis servi electus est.
- Servus onerat PXE-ROM card retis ac contactus institutionem servo per DHCP ut obtineat retis inscriptio.
- In servo institutionis DHCP inscriptio exit, necnon instructiones ad ulteriores per PXE deprimendas.
- Servus retis velum oneratus ab institutione servo per PXE onerat, porro oneratio fit secundum PXE configurationis fasciculum.
- Tabernus occurs in parametris acceptis (nuclei, initramfs, puncta montis, imaginis squashfs, etc.).
Nota. Articulus tabernus per PXE per BIOS modum describit. In statu, artifices UEFI bootmode strenue exsequentes. Pro PXE, differentia erit in schemate DHCP servientis et praesentiae adiectis praedones.
Intueamur exemplum figurae PXE servientis (pxelinux menu).
Tabella 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 // ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΌΠ΅Π½Ρ
Fasciculus 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=ββ¦β
Praecipua ac initramfs in hoc statu sunt media Linux imago, cuius ope principalis praeparatio et conformatio servi fient.
Ut videre potes, bootloader multos parametros ad nucleum transit. Horum aliquot parametri ab ipso nucleo utuntur. Alicuius autem possumus uti ad propositum nostrum. Hoc postea dicetur, nunc autem modo meminisse potes omnes parametri praetermissos in media Linux imaginis via /proc/cmdline praesto erunt.
Unde mihi eos, nucleos et initramfs?
Fundamento, aliquam distributionem Linux eligere potes. Quod attendimus ad eligendum;
- imago violenta universalis esse debet (availability of drivers, facultas additional utilitates instituendi);
- Maxime, mos initramfs necesse est.
Quomodo hoc factum est in solutione nostra pro X5? CentOS 7 in basium electum est, sequentem technam experiamur: praeparet structuram futurae imaginis, eam in archivum fac et initramfs crea, in quibus intus nostrum tabularium tabularium erit. Cum onerant imaginem, tabularium in tmpfs partitione creatum dilatetur. Hoc modo dabimus minimam, plenam tamen vivam imaginem linux flexis cum omnibus necessariis utilitatibus, duobus tantum fasciculis constans: vmkernel et 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
Ita diximus nucleos et initramfs quibus onerari debet. Quam ob rem, in hac scaena, imaginis linux mediae per PXE onerato, consolatorium OS accipiemus.
Magna, sed nunc necesse est potestatem nostram transferre ad "automationem".
Fieri potest ut hoc.
Demus imaginem oneratam imaginis transferendi potestatem in scripturam montis.
Includamus scriptum in autorun. Ad hoc opus initramfs mitigare necesse est;
- unpack initramfs (si optione supra initramfs utimur, hoc non requiritur)
- includunt codicem in startup qui parametris per /proc/cmdlineum transivit et in ulteriorem potestatem transferet, resolvere erit;
- stipant initramfs.
Nota. In casu instrumenti X5, oneratisque imperium ad scriptum transfertur /opt/x5/toolkit/bin/hook.sh Ρ ΠΏΠΎΠΌΠΎΡΡΡ override.conf Π² getty tty1 (ExecStart=β¦)
Est igitur imago onerata, in qua incipit scriptionis mons autoruni. Deinceps scriptura scriptor parametri latas (script_cmd=) in executione analyscat et necessarias programmata script.
titulus toolkit-Car
nucleus...
append... nfs_toolkit_script=script/mount.sh script_cmd=master-install.sh
titulus toolkit-testa
nucleus...
append... nfs_toolkit_script=script/mount.sh script_cmd=/bin/bash
Hic a sinistris est menu PXE, in dextra figura translationis est.
Figuratum habemus translationem imperii. Secundum PXE electionem tabulae, vel scriptionem auto- configurationis vel consolatorium debugging educitur.
In casu schematismi, directoria necessaria sunt ex servo institutionis, quae continent:
- scripta;
- BIOS/UEFI templates pro variis servientibus servavit;
- firmware;
- utilitatis cultor;
- acta
Deinceps scripturae scriptionis insanicae traditionis imperium ad dominum install.sh scripturam e directorio scripti transfert.
Scriptum arboris (ordine quo inducuntur) simile quiddam spectat;
- dominus-install
- sharefunctions (participatur munera)
- info (notitia output)
- exempla (profecta institutionem parametri secundum exemplar servo)
- prepare_utils (necessariae utilitatis institutionem)
- fwupdate (firmware update)
- diag (ementa diagnostica)
- biosconf (BIOS/UEFI occasus)
- clockfix (occasum tempus in motherboard)
- srmconf (remota configuratione interface interface)
- raidconf (configurans logicae voluminibus)
unum:
- preinstall (transferre imperium ad OS vel hypervisor installer, ut ESXi)
- merged-install (initium statim vestimenta imaginis)
Nunc scimus;
- quomodo a servo per PXE;
- quam ad tuam scriptionem transferre potestatem.
Perge. Sequuntur quaestiones pertinet:
- Quomodo cognoscere paramus servo?
- Quae utilitas et quomodo servo configuratur?
- Quam impetro occasus pro certo servo?
Quomodo cognoscere paramus servo?
Simplex suus - DMI;
dmidecode βs system-product-name
dmidecode βs system-manufacturer
dmidecode βs system-serial-number
Omne quod opus est hic est: venditor, exemplar, numerus vide. Si non certus es hanc informationem omnibus servientibus adesse, eas per eorum MAC inscriptionem cognoscere potes. Vel utroque modo simul, si diversae sunt venditores venditorum et in aliquibus exemplaribus, nulla prorsus notitia est de numero serial.
Fundatur in indicio recepto, folders retiarii a servo institutionis conscenduntur et omnia necessaria onerantur (utilitas, firmware, etc.).
Quae utilitas et quomodo servo configuratur?
Utilitates Linux aliqua pariatur. Omnes utilitates in websites mercatorum officialium praesto sunt.
Firmware ego omnia clara esse arbitror. Solent venire in forma files exsecutabile packaged. Exsecubilis fasciculus processus update firmware moderatur et reditus nuntiat codicem.
BIOS et IPMI plerumque per exempla figurantur. Si opus est, exemplum editum iri ante demptionem.
INCURSUS utilitas a nonnullis venditoribus configurari etiam potest usu exemplaris. Si hoc non fit, configurationem scribendam habebis.
Ratio instaurationis incursio saepissime est:
- Configuratione hodiernam petimus.
- Si iam sunt indumenta logicalia, eas delemus.
- Intueamur quidnam sint orbes physici et quot sint.
- Novam logicam ordinatam crea. Processum interrumpimus in casu erroris.
Quam impetro occasus pro certo servo?
Ponamus quod unctiones omnium ministrantium in servo institutionis reponendae erunt. In hoc casu, ut ad nostram quaestionem respondeamus, primum statuendum est quomodo ordines ad institutionem ministri transferendi sint.
In primis, per files textis licebit. (In posterum, fasciculo textu uti velis ut methodo fallamentorum ad occasus transferendi.)
Potes "partire" textum fasciculi in servo institutionis. Et montem eius adde script.
Lineae, exempli gratia, hoc vide:
<vide numerum> <hostname> <subnet>
Hae lineae ad fasciculum a fabro ex machina operis transferentur. Tum, cum servo constituens, parametri pro servo certo e tabella legentur.
Sed, in longum tempus, melius est uti database ut occasus, civitates et tigna officinarum servientium condant.
Scilicet, sola database non satis est, et clientem partem creare debes cuius ope ad database loca transferentur. Difficilius est hoc instrumentum ad textum limam comparatum, re vera omnia non tam difficilia quam ut videtur. Valde possibile est clientis versionem minimam scribere, quae simpliciter notitias ad te datorum transferet. Et in posterum poterit emendare clientem programmatis in libero modo (renuntiationes, pittacia imprimendi, notificationes mittens, etc. quae in mentem venit).
Petitionem specificam datorum et numerum serialem denotantes, necessarios parametri recipiemus pro servo figurantes.
Plus, non necesse est nos cum cincinnis accedere ad accessum simultaneum, sicut in fasciculo textu.
Scribere configurationem stipes database omnibus gradibus et processus institutionem moderari per eventus ac vexilla praeparationis gradus.
Nunc scimus quomodo;
- tabernus servo per PXE;
- imperium ad nostram scriptionem transferre;
- cognoscere cultorem qui suo numero serial praeparari debet;
- configurare servo opportunis utilitatibus utens;
- transfer occasus ad institutionem servo datorum utens parte clientis.
Invenimus quomodo:
- server installed occasus necessarios e datorum accipit;
- omnis progressus praeparationis memoratur in datorum (tignis, eventis, scaenicis vexillis).
Quid de generibus software vos install? Quomodo hypervisorem inaugurare, VM effingere et omnia configurare?
In explicandis fasciculi systematis imagine (linux) ferramentis, omnia plane simplicia sunt;
- Postquam omnia membra servuli constituunt, imaginem explicamus.
- Install vermis bootloader.
- Nos omnia quae opus sunt ingerimus et configuramus.
Quomodo imperium ad OS installarium transferendum (ESXi utens exemplo).
- Instruimus translationem imperii a scripto nostro ad instrumentum hypervisorem utendo tabella responsionis latae sententiae (intrimentum);
- Hodiernae partitiones in disco delemus.
- Partem creare cum magnitudine 500MB.
- Notamus eam quasi bootable.
- Forma ad FAT32.
- Exemplar institutionis ESXi ad radicem imagini adsignamus.
- Inaugurari syslinux.
- Effingo syslinux.cfg ad /syslinux/
default esxi
prompt 1
timeout 50
label esxi
kernel mboot.c32
append -c boot.cfg
- Exemplar mboot.c32 ad /syslinux.
- Boot.cfg debet habere kernelopt=ks=ftp:// /ks_esxi.cfg
- Servo reboot sumus.
Post reboots servo, installator ESXi ex servo ferreus coegi extrahet. Omnes fasciculi necessarii installarii in memoriam onerabuntur et tunc institutionem ESXi incipiet, secundum praefinitum documentum auto-responsum.
Hic sunt paucae lineae ex tabella autoresponsa 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
Hac scaena, hypervisor inauguratus et configuratus est, et machinae virtuales exscriptae sunt.
Quomodo nunc virtualis machinis configurare?
Paulum circumscripsimus: inter institutionem modulum guestinfo.esxihost.id = "$SYSSN" in tabella VM1.vmx posuimus et in ea numerum serialem ministrantis corporis indicavimus.
Nunc, inceptis, machina virtualis (cum involucro vinware inaugurato) hunc modulum accedere potest:
ESXI_SN=$(vmtoolsd --cmd "info-get guestinfo.esxihost.id")
Hoc est, VM se cognoscere poterit (novit numerum serialem exercitus corporis), rogationem datorum datorum institutionem et parametri recipiendi qui configurari necesse est. Haec omnia compilata sunt in scriptionem, quae automatice deducenda est quando incipit Hospes vin (sed semel: RunOnce).
Nunc scimus quomodo;
- tabernus servo per PXE;
- imperium ad nostram scriptionem transferre;
- cognoscere cultorem qui suo numero serial praeparari debet;
- configurare servo opportunis utilitatibus utens;
- transfer occasus ad institutionem servo datorum utens in parte clientis;
- varias programmatum configurare, inter quas explicandis hypervisoris Esxi et machinis virtualibus conformantibus (omnium automatice).
Invenimus quomodo:
- server installed occasus necessarios e datorum accipit;
- omnis progressus praeparationis memoratur in datorum (tignis, eventis, scaenicis vexillis).
Bottom linea:
Singularitatem credo huius solutionis in eius flexibilitate, simplicitate, capacitatibus et versatilitate positam esse arbitror.
Quaeso scribe in commentaria quid sentias.
Source: www.habr.com