ESXi kickstart: различия между версиями
Материал из noname.com.ua
Перейти к навигацииПерейти к поискуSirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
Строка 52: | Строка 52: | ||
==пример установочного конфига== |
==пример установочного конфига== |
||
+ | Ниже я постараюсь прокомментировать конфиг, как можно подробнее: |
||
+ | |||
+ | * куда ставить |
||
<PRE> |
<PRE> |
||
+ | install --firstdisk --overwritevmfs |
||
+ | </PRE> |
||
+ | * настройка сети (для хост системы) |
||
+ | <PRE> |
||
+ | network --device=vmnic0 --addvmportgroup=false --bootproto=static --ip=172.16.252.253 --netmask=255.255.255.0 --gateway=172.16.252.254 --nameserver=172.16.1.2 --hostname=esx01.com |
||
+ | </PRE> |
||
+ | <PRE> |
||
+ | rootpw ТутПароль |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | reboot |
||
+ | #--noeject |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | vmaccepteula |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | #%packages |
||
+ | #@ ESX Server |
||
+ | #kernel-smp |
||
+ | # |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | %post --interpreter=busybox |
||
+ | |||
+ | sleep 10 |
||
+ | |||
+ | echo Step 1 >> /vmfs/volumes/datastore1/log.sirmax1 |
||
+ | ls -lsa /vmfs/volumes/ >> /vmfs/volumes/datastore1/log.sirmax2 |
||
+ | |||
+ | /sbin/vmkload_mod iso9660 2>&1 >> /vmfs/volumes/datastore1/log.sirmax2 |
||
+ | /sbin/esxcfg-mpath -b | grep "CD-ROM" 2>&1 >> /vmfs/volumes/datastore1/log.sirmax3 |
||
+ | ls -lsa /vmfs/volumes/datastore1 >> /vmfs/volumes/datastore1/log.sirmax4 |
||
+ | /sbin/vsish -e set /vmkModules/iso9660/mount $(/sbin/esxcfg-mpath -b | grep "CD-ROM" | awk '{print $1}') 2>&1 >> /vmfs/volumes/datastore1/log.sirmax5 |
||
+ | ls -lsa /vmfs/volumes/ 2>&1 >> /vmfs/volumes/datastore1/log.sirmax5 |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | # Copy VM files |
||
+ | mkdir /vmfs/volumes/datastore1/Vyatta_1 2>&1 >> /vmfs/volumes/datastore1/log.sirmax6 |
||
+ | cd /vmfs/volumes/datastore1/Vyatta_1 2>&1 >> /vmfs/volumes/datastore1/log.sirmax7 |
||
+ | cp /vmfs/volumes/CDROM/VM/V1/VYATTA_1.TAR . 2>&1 >> /vmfs/volumes/datastore1/log.sirmax8 |
||
+ | tar -xvf VYATTA_1.TAR ; rm VYATTA_1.TAR; ls -1 | xargs gunzip 2>&1 >> /vmfs/volumes/datastore1/log.sirmax9 |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | |||
+ | <PRE> |
||
+ | %firstboot --interpreter=busybox |
||
+ | vim-cmd hostsvc/enable_ssh |
||
+ | vim-cmd hostsvc/start_ssh |
||
+ | vim-cmd hostsvc/enable_esx_shell |
||
+ | vim-cmd hostsvc/start_esx_shell |
||
+ | </PRE> |
||
+ | # |
||
+ | </PRE> |
||
+ | /bin/vim-cmd solo/registervm /vmfs/volumes/datastore1/Vyatta_1/Vyatta_1.vmx 2>&1 >> /vmfs/volumes/datastore1/log.sirmax10 |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | /bin/vim-cmd vmsvc/power.on 1 & 2>&1 >> /vmfs/volumes/datastore1/log.sirmax11 |
||
+ | <PRE> |
||
+ | |||
+ | sleep 10 2>&1 >> /vmfs/volumes/datastore1/log.sirmax12 |
||
+ | |||
+ | <PRE> |
||
+ | /bin/vim-cmd vmsvc/message 1 _vmx2 2 2>&1 >> /vmfs/volumes/datastore1/log.sirmax13 |
||
+ | </PRE> |
||
+ | |||
+ | <PRE> |
||
+ | sleep 30 |
||
+ | # Enable autostart |
||
+ | /bin/vim-cmd hostsvc/autostartmanager/enable_autostart true |
||
+ | /bin/vim-cmd hostsvc/autostartmanager/update_autostartentry 1 PowerOn 90 1 stop 90 yes |
||
+ | </PRE> |
Версия 17:23, 21 марта 2012
ESXi kickstart file
- ESX можно установить с файлом ответов.
- Существует файл ответа по умолчанию, который установит ESX без лишних вопросов, с паролем root = mypassword.
- Так же, можно подложить свой файл ответов, как и раньше по сети, или на USB флешке.
- и наконец можно развернуть готовую систему с предустановленными и настроенными ВМ
Создание своего образа
- Скачать ESXi ISO
- Подмонтировать образ:
mount -o loop VMware-VMvisor-Installer-5.x.x-XXXXXX.x86_64.iso /esxi_cdrom_mount
- Cкопировать содержимое
cp -r /esxi_cdrom_mount /esxi_cdrom
cp ks_custom.cfg /esxi_cdrom
- исправить ISOLINUX.CFG file в соответвии с требованиеми:
В моем случае он выгляит вот так:
DEFAULT menu.c32 MENU TITLE Dell Customized ESXi-5.0.0 Standard(A01) Installer Boot Menu NOHALT 1 PROMPT 0 TIMEOUT 80 LABEL install3 KERNEL mboot.c32 APPEND -c boot.cfg ks=cdrom:/KS1.CFG MENU LABEL Dell Customized ESXi-5.0.0 Standard(A01) ^3 Installer LABEL hddboot LOCALBOOT 0x80 MENU LABEL ^Boot from local disk
На что тут стоит обратить внимание:
* ks=cdrom:/KS1.CFG - указывает на файл кикстарта, собственно это ключевой момент. внимание - файл должен быть в верхнем регистре, с этим есть проблема. Я не особо искал решение но факт - фай в нижнем регистре не находиться при загрузке хотя на диске существует. С этим же столкнулся при установке виртуальных машин. * Отладка конфига кикстарта муторное дело - быть предельно внимательным.
- Пересоздать образ.
Так советует дока:
mkisofs -relaxed-filenames -J -R -o custom_esxi.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /esxi_cdrom
Так делал я т.к. у меня был образ больше размера ДВД (тестовая установка на виртуальную машину, да да именно nested VM)
mkisofs -allow-limited-size -relaxed-filenames -J -R -o ./custom_esxi.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table ./ISO_NEW/ISO_TEST/
После чего загружаемся с полученного диска, и система должна установиться сама, без вмешательства человека обезьяны
пример установочного конфига
Ниже я постараюсь прокомментировать конфиг, как можно подробнее:
- куда ставить
install --firstdisk --overwritevmfs
- настройка сети (для хост системы)
network --device=vmnic0 --addvmportgroup=false --bootproto=static --ip=172.16.252.253 --netmask=255.255.255.0 --gateway=172.16.252.254 --nameserver=172.16.1.2 --hostname=esx01.com
rootpw ТутПароль
reboot #--noeject
vmaccepteula
#%packages #@ ESX Server #kernel-smp #
%post --interpreter=busybox sleep 10 echo Step 1 >> /vmfs/volumes/datastore1/log.sirmax1 ls -lsa /vmfs/volumes/ >> /vmfs/volumes/datastore1/log.sirmax2 /sbin/vmkload_mod iso9660 2>&1 >> /vmfs/volumes/datastore1/log.sirmax2 /sbin/esxcfg-mpath -b | grep "CD-ROM" 2>&1 >> /vmfs/volumes/datastore1/log.sirmax3 ls -lsa /vmfs/volumes/datastore1 >> /vmfs/volumes/datastore1/log.sirmax4 /sbin/vsish -e set /vmkModules/iso9660/mount $(/sbin/esxcfg-mpath -b | grep "CD-ROM" | awk '{print $1}') 2>&1 >> /vmfs/volumes/datastore1/log.sirmax5 ls -lsa /vmfs/volumes/ 2>&1 >> /vmfs/volumes/datastore1/log.sirmax5
# Copy VM files mkdir /vmfs/volumes/datastore1/Vyatta_1 2>&1 >> /vmfs/volumes/datastore1/log.sirmax6 cd /vmfs/volumes/datastore1/Vyatta_1 2>&1 >> /vmfs/volumes/datastore1/log.sirmax7 cp /vmfs/volumes/CDROM/VM/V1/VYATTA_1.TAR . 2>&1 >> /vmfs/volumes/datastore1/log.sirmax8 tar -xvf VYATTA_1.TAR ; rm VYATTA_1.TAR; ls -1 | xargs gunzip 2>&1 >> /vmfs/volumes/datastore1/log.sirmax9
%firstboot --interpreter=busybox vim-cmd hostsvc/enable_ssh vim-cmd hostsvc/start_ssh vim-cmd hostsvc/enable_esx_shell vim-cmd hostsvc/start_esx_shell
/bin/vim-cmd solo/registervm /vmfs/volumes/datastore1/Vyatta_1/Vyatta_1.vmx 2>&1 >> /vmfs/volumes/datastore1/log.sirmax10
/bin/vim-cmd vmsvc/power.on 1 & 2>&1 >> /vmfs/volumes/datastore1/log.sirmax11 <PRE> sleep 10 2>&1 >> /vmfs/volumes/datastore1/log.sirmax12 <PRE> /bin/vim-cmd vmsvc/message 1 _vmx2 2 2>&1 >> /vmfs/volumes/datastore1/log.sirmax13
sleep 30 # Enable autostart /bin/vim-cmd hostsvc/autostartmanager/enable_autostart true /bin/vim-cmd hostsvc/autostartmanager/update_autostartentry 1 PowerOn 90 1 stop 90 yes