Iketsetse Bare-Metal Provisioning, kapa ho itokisa ka boiketsetso ha li-server ho tloha qalong

Lumela, ke 'na Denis' me e 'ngoe ea libaka tseo ke sebetsang ho tsona ke nts'etsopele ea litharollo tsa litšebeletso tsa motheo ho X5. Kajeno ke rata ho arolelana le uena kamoo u ka sebelisang mokhoa oa ho itokisa oa seva o ipapisitseng le lisebelisoa tse fumanehang phatlalatsa. Ka maikutlo a ka, ena ke tharollo e thahasellisang, e bonolo le e bonolo.

Iketsetse Bare-Metal Provisioning, kapa ho itokisa ka boiketsetso ha li-server ho tloha qalong

Ka ho itokisa re bolela: fetola seva e ncha ka ntle ho lebokose hore e be seva e hlophisitsoeng ka botlalo e nang le OS. Linux kapa ka hypervisor ea ESXi (ho tsamaisoa ha li-server tsa Windows ha ho buuoe sehloohong sena).

Lipehelo:

  • li-server - li-server tse hlokang ho hlophisoa.
  • ho kenya seva ke sesebelisoa se seholo se fanang ka ts'ebetso eohle ea ho itokisa holim'a marang-rang.

Hobaneng ho hlokahala?

Ha re re ho na le mosebetsi: ho lokisa li-server ka matla ho tloha qalong, tlhōrōng - 30 ka letsatsi. Li-server tsa bahlahisi le mehlala e fapaneng, litsamaiso tse fapaneng tsa ts'ebetso li ka kengoa ho tsona, 'me li kanna tsa ba le hypervisor kapa tsa se be teng.

Ke lits'ebetso life tse kenyellelitsoeng ts'ebetsong ea ho seta (ntle le boiketsetso):

  • hokela keyboard, mouse, leihlo ho seva;
  • lokisa BIOS, RAID, IPMI;
  • ntlafatsa karolo ea firmware;
  • tsamaisa setšoantšo sa sistimi ea faele (kapa kenya hypervisor le ho kopitsa mochini o hlakileng);

Hlokomela. Ntle le moo, ho tsamaisoa ha OS hoa khoneha ka ho kenya ka faele ea karabo ea auto. Empa sena se ke ke sa tšohloa sehloohong sena. Le hoja u tla bona ka tlase hore ho eketsa tshebetso ena ha ho thata.

  • lokisa maemo a OS (lebitso la moamoheli, IP, joalo-joalo).

Ka mokhoa ona, litlhophiso tse tšoanang li etsoa ka tatellano ho seva ka seng. Ts'ebetso ea mosebetsi o joalo e tlase haholo.

Ntho ea bohlokoa ea ho iketsetsa ke ho felisa ho kenya letsoho ha batho ho tloha ts'ebetsong ea ho lokisa seva. Ka hohle kamoo ho ka khonehang.

Automation e fokotsa nako pakeng tsa ts'ebetso mme e etsa hore ho khonehe ho fana ka li-server tse ngata ka nako e le 'ngoe. Monyetla oa liphoso ka lebaka la lintlha tsa batho le ona o fokotsehile haholo.

Iketsetse Bare-Metal Provisioning, kapa ho itokisa ka boiketsetso ha li-server ho tloha qalong

Li-server li hlophisoa joang ka bo eona?

A re hlahlobeng mekhahlelo eohle ka botlalo.

U na le seva ea Linux eo u e sebelisang e le seva sa ho kenya PXE. Litšebeletso li kentsoe le ho hlophisoa ho eona: DHCP, TFTP.

Kahoo, re qalisa seva (e hlokang ho hlophisoa) ka PXE. A re hopoleng hore na e sebetsa joang:

  • Boot boot e khethiloe ho seva.
  • Seva e laela PXE-ROM ea karete ea marang-rang ebe e ikopanya le seva sa ho kenya ka DHCP ho fumana aterese ea marang-rang.
  • Seva ea ho kenya DHCP e fana ka aterese, hammoho le litaelo tsa ho khoasolla hape ka PXE.
  • Seva e jarisa bootloader ea marang-rang ho tloha ho seva sa ho kenya ka PXE, ho kenya ho eketsehileng ho etsahala ho latela faele ea tlhophiso ea PXE.
  • Boot e hlaha ho latela litekanyo tse amoheloang (kernel, initramfs, mount points, squashfs image, joalo-joalo).

Hlokomela. Sengoloa se hlalosa ho qala ka PXE ka mokhoa oa BIOS. Hajoale, bahlahisi ba ntse ba kenya tšebetsong UEFI bootmode. Bakeng sa PXE, phapang e tla ba ho tlhophiso ea seva sa DHCP le boteng ba bootloader e eketsehileng.

Ha re shebeng mohlala oa tlhophiso ea seva ea PXE (menu ea pxelinux).

Faele 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 // переход на следующее меню

Faele 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=”…”

The kernel le initramfs sethaleng sena ke setšoantšo sa Linux se bohareng, ka thuso ea hore ho lokisoa le ho hlophisoa ha seva ho tla etsahala.

Joalokaha u bona, bootloader e fetisetsa liparamente tse ngata ho kernel. Tse ling tsa liparamente tsena li sebelisoa ke kernel ka boeona. 'Me re ka sebelisa tse ling molemong oa rona. Sena se tla tšohloa hamorao, empa hajoale o ka hopola feela hore litekanyo tsohle tse fetisitsoeng li tla fumaneha setšoantšong sa Linux se mahareng ka /proc/cmdline.

Nka li fumana hokae, kernel le initramfs?
E le motheo, o ka khetha kabo efe kapa efe ea Linux. Seo re se ela hloko ha re khetha:

  • setšoantšo sa boot e tlameha ho ba bokahohleng (boteng ba bakhanni, bokhoni ba ho kenya lisebelisoa tse eketsehileng);
  • Mohlomong, o tla hloka ho etsa li-initramfs.

See se etsoa joang tharollong ea rona ea X5? CentOS 7 e khethiloe e le motheo A re lekeng mokhoa o latelang: lokisa sebopeho sa setšoantšo sa nakong e tlang, se kenye ka har'a polokelo ea boitsebiso 'me u thehe initramfs, ka hare ho eona ho tla ba le polokelo ea rona ea tsamaiso ea lifaele. Ha o kenya setšoantšo, polokelo e tla atolosoa ho arola tmpfs e entsoeng. Ka tsela ena re tla fumana setšoantšo sa linux se fokolang, empa se tletseng ka botlalo se nang le lisebelisoa tsohle tse hlokahalang, tse nang le lifaele tse peli feela: vmkernel le 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

Kahoo re hlalositse kernel le initramfs tse lokelang ho kenngoa. Ka lebaka leo, mothating ona, ka ho kenya setšoantšo sa bohareng ba linux ka PXE, re tla fumana khomphutha ea OS.

E kholo, empa joale re hloka ho fetisetsa taolo ho "automation" ea rona.

E ka etsoa tjena.

A re nke hore ka mor'a ho kenya setšoantšo re rera ho fetisetsa taolo ho script mount.sh.
Ha re kenyelleng mongolo oa mount.sh ho autorun. Ho etsa sena o tla hloka ho fetola initramfs:

  • unpack initramfs (haeba re sebelisa khetho e kaholimo ea initramfs, sena ha se hlokehe)
  • kenyelletsa khoutu ho qala e tla sekaseka liparamente tse fetisitsoeng ho /proc/cmdline le taolo ea phetisetso ho ea pele;
  • phuthela initramfs.

Hlokomela. Tabeng ea thulusi ea X5, taolo ea ho kenya e fetisetsoa ho script /opt/x5/toolkit/bin/hook.sh с помощью override.conf в getty tty1 (ExecStart=…)

Kahoo, setšoantšo se laetsoe, moo mongolo oa mount.sh o qalang ho autorun. Ka mor'a moo, sengoloa sa mount.sh se sekaseka li-parameter tse fetisitsoeng (script_cmd=) nakong ea ts'ebetso ebe e qala lenaneo/script e hlokahalang.

label toolkit-koloi
kernel...
tlatsa... nfs_toolkit_script=scripts/mount.sh script_cmd=master-install.sh

label toolkit-khetla
kernel...
tlatsa... nfs_toolkit_script=scripts/mount.sh script_cmd=/bin/bash

Iketsetse Bare-Metal Provisioning, kapa ho itokisa ka boiketsetso ha li-server ho tloha qalong

Mona ka ho le letšehali ke lenane la PXE, ka ho le letona ke setšoantšo sa phetisetso ea taolo.

Re ile ra nahana ka phetiso ea taolo. Ho ipapisitse le khetho ea lenane la PXE, ho tla hlahisoa mongolo oa auto-configuration kapa console ea debugging.

Tabeng ea tlhophiso ea othomathiki, li-directory tse hlokahalang li kentsoe ho tsoa ho seva sa ho kenya, se nang le:

  • mengolo;
  • li-template tsa BIOS / UEFI tse bolokiloeng bakeng sa li-server tse fapaneng;
  • firmware;
  • lisebelisoa tsa seva;
  • likutu

Ka mor'a moo, mount.sh script e fetisetsa taolo ho master-install.sh script ho tsoa bukeng ea script.

Sefate sa script (taelo eo li qalisoang ka eona) se shebahala tjena:

  • hle-kenya
  • sharefunctions (mesebetsi e arolelanoeng)
  • lintlha (lintlha tsa litaba)
  • mehlala (ho beha liparamente tsa ho kenya ho ipapisitse le mohlala oa seva)
  • lokisetsa_utils (ho kenya lisebelisoa tse hlokahalang)
  • fwupdate (ntlafatso ea firmware)
  • diag (tlhahlobo ea mantlha)
  • biosconf (litlhophiso tsa BIOS/UEFI)
  • clockfix (ho beha nako ho motherboard)
  • srmconf (sebopeho sa segokanyimmediamentsi sa hole)
  • raidconf (ho hlophisa melumo e utloahalang)

e 'ngoe ea:

  • preinstall (ho fetisetsa taolo ho OS kapa hypervisor installer, joalo ka ESXi)
  • merged-install (ho qala hang-hang ho notlolla setšoantšo)

Joale rea tseba:

  • mokhoa oa ho qalisa seva ka PXE;
  • mokhoa oa ho fetisetsa taolo ho mongolo oa hau.


Ha re tsoeleng pele. Lipotso tse latelang e bile tsa bohlokoa:

  • Joang ho khetholla seva eo re e lokisetsang?
  • Ke lisebelisoa life le mokhoa oa ho lokisa seva?
  • U ka fumana li-setting tsa seva e itseng joang?

Joang ho khetholla seva eo re e lokisetsang?

Ho bonolo - DMI:

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

Sohle seo u se hlokang se mona: morekisi, mohlala, nomoro ea serial. Haeba o sa tiisehe hore lintlha tsena li teng ho li-server tsohle, u ka li tseba ka liaterese tsa tsona tsa MAC. Kapa ka litsela tse peli ka nako e le 'ngoe, haeba barekisi ba seva ba fapane le ho mefuta e meng ha ho na tlhahisoleseding e mabapi le nomoro ea serial.

Ho ipapisitsoe le tlhaiso-leseling e fumanoeng, li-folders tsa marang-rang li kenngoa ho tsoa ho seva sa ho kenya 'me tsohle tse hlokahalang li laeloa (lisebelisoa, firmware, joalo-joalo).

Ke lisebelisoa life le mokhoa oa ho lokisa seva?

Ke tla fana ka lisebelisoa tsa Linux bakeng sa bahlahisi ba bang. Lisebelisoa tsohle li fumaneha liwebsaeteng tsa molao tsa barekisi.

Iketsetse Bare-Metal Provisioning, kapa ho itokisa ka boiketsetso ha li-server ho tloha qalong

Ka firmware, ke nahana hore tsohle li hlakile. Hangata li tla ka sebopeho sa lifaele tse phethiloeng tse pakiloeng. Faele e sebetsang e laola ts'ebetso ea ntlafatso ea firmware mme e tlaleha khoutu ea ho khutlisa.

BIOS le IPMI hangata li hlophisoa ka litempele. Haeba ho hlokahala, template e ka hlophisoa pele e jarolla.

Lisebelisoa tsa RAID tse tsoang ho barekisi ba bang le tsona li ka hlophisoa ho sebelisoa template. Haeba ho se joalo, o tla tlameha ho ngola script ea tlhophiso.

Mokhoa oa ho theha RAID hangata o tjena:

  • Re kopa tlhophiso ea hajoale.
  • Haeba ho se ho ntse ho e-na le lihlopha tse utloahalang, rea li hlakola.
  • Ha re shebeng hore na ke li-disk tsa 'mele tse teng le hore na li kae.
  • Etsa lethathamo le lecha le utloahalang. Re emisa ts'ebetso haeba ho ka ba le phoso.

U ka fumana li-setting tsa seva e itseng joang?

Ha re nke hore litlhophiso tsa li-server tsohle li tla bolokoa ho seva sa ho kenya. Tabeng ena, ho araba potso ea rona, re tlameha ho qala ka ho etsa qeto ea ho fetisetsa litlhophiso ho seva sa ho kenya.

Qalong, o ka tsoela pele ka lifaele tsa mongolo. (Nakong e tlang, u ka 'na ua batla ho sebelisa faele ea mongolo e le mokhoa oa ho fetisa litlhophiso.)

U ka "arolelana" faele ea mongolo ho seva sa ho kenya. 'Me u kenye thaba ea eona ho mount.sh script.

Ka mohlala, mela e tla shebahala tjena:

<nomoro ya seriale> <lebitso la moemedi> <subnet>

Mehala ena e tla fetisetsoa faeleng ke moenjiniere ho tloha mochine oa hae oa mosebetsi. 'Me joale, ha u theha seva, litekanyetso tsa seva e itseng li tla baloa ho tloha faeleng.

Empa, ha nako e ntse e ea, ho molemo ho sebelisa database ho boloka litlhophiso, linaha le lits'ebetso tsa lits'ebetso tsa seva.

Ha e le hantle, database feela ha ea lekana, 'me u tla hloka ho etsa karolo ea bareki ka thuso ea hore na ke litlhophiso life tse tla fetisetsoa ho database. Sena se thata haholo ho se sebelisa ha se bapisoa le faele ea mongolo, empa ha e le hantle, ntho e 'ngoe le e' ngoe ha e thata joalokaha e bonahala. Hoa khoneha ho ngola mofuta o fokolang oa moreki o tla fetisetsa data ho database ka bouena. 'Me nakong e tlang ho tla khoneha ho ntlafatsa lenaneo la bareki ka mokhoa oa mahala (litlaleho, mangolo a khatiso, ho romela litsebiso, joalo-joalo tse tlang kelellong).

Ka ho etsa kopo e khethehileng ho database le ho hlalosa nomoro ea serial ea seva, re tla fumana litekanyo tse hlokahalang bakeng sa ho lokisa seva.

Hape, re ke ke ra hloka ho tla ka liloko bakeng sa ho kena ka nako e le 'ngoe, joalo ka ha ho le joalo ka faele ea mongolo.

Re ka ngola lethathamo la litlhophiso ho database ka mekhahlelo eohle mme ra laola ts'ebetso ea ho kenya ka liketsahalo le lifolakha tsa mekhahlelo ea ho itokisa.

Joale re tseba joang:

  • qala seva ka PXE;
  • fetisetsa taolo ho script ea rona;
  • tsebahatsa seva e hlokang ho lokisoa ka nomoro ea eona ea serial;
  • lokisa seva u sebelisa lisebelisoa tse loketseng;
  • fetisetsa litlhophiso ho database ea seva sa ho instola o sebelisa karolo ea moreki.

Re fumane hore na:

  • seva e kentsoeng e fumana litlhophiso tse hlokahalang ho tsoa ho database;
  • tsoelo-pele eohle ea ho itokisa e tlalehiloe polokelong (li-log, liketsahalo, lifolakha tsa sethala).

Ho thoe'ng ka mefuta e fapaneng ea software eo u e kenyang? Mokhoa oa ho kenya hypervisor, kopitsa VM le ho e hlophisa kaofela?

Tabeng ea ho kenya setšoantšo sa tsamaiso ea faele (linux) ho hardware, ntho e 'ngoe le e' ngoe e bonolo haholo:

  • Kamora ho theha likarolo tsohle tsa seva, re tsamaisa setšoantšo.
  • Kenya grub bootloader.
  • Re chroot le ho lokisa tsohle tse hlokahalang.

Mokhoa oa ho fetisetsa taolo ho sesebelisoa sa OS (ho sebelisa ESXi joalo ka mohlala).

  • Re hlophisa phetisetso ea taolo ho tloha ho mongolo oa rona ho ea ho sehokelo sa hypervisor re sebelisa faele ea karabelo ea othomathiki (kickstart):
  • Re hlakola likarolo tsa hona joale ho disk.
  • Theha karohano e nang le boholo ba 500MB.
  • Re e tšoaea e le bootable.
  • Fetolela ho FAT32.
  • Re kopitsa lifaele tsa ho kenya ESXi ho motso.
  • Ho kenya syslinux.
  • Kopitsa syslinux.cfg ho /syslinux/

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

  • Kopitsa mboot.c32 ho /syslinux.
  • Boot.cfg e lokela ho ba le kernelopt=ks=ftp:// /ks_esxi.cfg
  • Re qala seva hape.

Ka mor'a hore seva se qale hape, mochine oa ESXi o tla khoasolla ho tswa ho hard drive ea seva. Lifaele tsohle tse hlokahalang tsa ho kenya li tla kenngoa mohopolong ebe ts'ebetso ea ESXi e tla qala, ho latela faele e boletsoeng ea karabelo e ikemetseng.

Mona ke mela e 'maloa ho tsoa faeleng ea autoresponse 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

Mothating ona, hypervisor e kentsoe le ho hlophisoa, 'me mechini ea sebele e kopitsoa.

Mokhoa oa ho lokisa mechini ea sebele hona joale?

Re ile ra qhekella hanyenyane: nakong ea ho kenya re beha parameter guestinfo.esxihost.id = "$SYSSN" faeleng ea VM1.vmx mme re bonts'a nomoro ea serial ea seva sa 'mele ho eona.

Joale, kamora ho qala, mochini o sebetsang (o nang le sephutheloana sa lisebelisoa tsa vmware) o ka fihlella paramente ena:

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

Ke hore, VM e tla khona ho itsebahatsa (e tseba nomoro ea serial ea moeti oa 'mele), etsa kopo ho database ea seva sa ho kenya le ho amohela litekanyo tse lokelang ho lokisoa. Sena sohle se hlophisitsoe hore e be script, e lokelang ho qalisoa ka bo eona ha Guestos vm e qala (empa hang: RunOnce).

Joale re tseba joang:

  • qala seva ka PXE;
  • fetisetsa taolo ho script ea rona;
  • tsebahatsa seva e hlokang ho lokisoa ka nomoro ea eona ea serial;
  • lokisa seva u sebelisa lisebelisoa tse loketseng;
  • fetisetsa litlhophiso ho database ea seva sa ho kenya o sebelisa karolo ea bareki;
  • Lokisa mefuta e fapaneng ea software, ho kenyelletsa le ho tsamaisa esxi hypervisor le ho lokisa mechini e fumanehang (kaofela ka bohona).

Re fumane hore na:

  • seva e kentsoeng e fumana litlhophiso tse hlokahalang ho tsoa ho database;
  • tsoelo-pele eohle ea ho itokisa e tlalehiloe polokelong (li-log, liketsahalo, lifolakha tsa sethala).


Ntlha ea bohlokoa:

Ke lumela hore ho ikhetha ha tharollo ena ho itšetlehile ka ho feto-fetoha ha maemo, bonolo, bokhoni le ho feto-fetoha ha maemo.

Ka kopo ngola maikutlong seo u se nahanang.

Source: www.habr.com

Eketsa ka tlhaloso