* vSphere 4 *
Установка vCSHB - VC Server Heartbeat
4Gb disk, 512Mb RAM, Display 1024x768
Включить RDP (My Computer - Propertie - Remote)
Выключить Firewall (Control panel - Windows Firewall)
Enable VSS для C: C: - Properties - Shadow copy
Eth1 - Statical IP for VC, Advanced - WINS - Enable NetBIOS over TCP
Eth2 - Statical IP for HB channel, Advanced - WINS - Enable NetBIOS over TCP
Установить vSphere Client
Установить VC
Дистрибутив vCSHB обязан лежать на C: (с сетевого пути не ставится)
Открыть доступ к консоли esx-VM через VNC
Работает в ESX3.5, ESX4, WorkStation 6,7. В ESXi не работает
http://kb.vmware.com/selfservi...ayKC&externalId=1246
В .vmx добавляем
RemoteDisplay.vnc.enabled = TRUE
RemoteDisplay.vnc.port = "5910"
RemoteDisplay.vnc.password = "secret"
Не забыть в файволе на ESX-сервере открыть указанный порт
esxcfg-firewall --enableService vncServer
или
esxcfg-firewall -i 5910,tcp,in,vnc10
Коннектимся к ESX-серверу:
vncviewer esx.host.name:5910 или esx.host.name:10
Бэкап конфигурации ESXi через RCLI
Бэкап:
vicfg-cfgbackup.pl --server esxN --username root --password pass -s r:\esxN.cfg
Восстановление:
vicfg-cfgbackup.pl --server esxN --username root --password pass -l r:\esxN.cfg
Что такое vShield Zones
Это система VM-ок файрволлов(vShield) на каждом ESX + управляющая
консоль(vShield Manager) - тоже VM.
У каждой vShield три сетевых интерфейса: mgmt, unprot и prot, которые
подключены в соотв. портгруппы.
mgmt (со своим IP )- для коммуникации с vShield Manager
unprot смотрит в физическую сетку
prot - смотрит в internal vSwitch - в нем и живут защищаемые VM-ки
Обеспечивает полностью прозрачный firewall, фильтрацию и т.д.
Настройка VM Workstation 7.0 для установки в нее ESX4
Общий диск делаем Preallocated, Independent, Persistent, NoWriteCache
в .vmx добавляем строчки:
disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
Это позволит в Workstation'е не нарываться на блокировку vmdk
Ethernet'а достаточно и одного.
Поставить его в "Bridged" + "Replicate physical connection state"
Для NAT и HosOnly чекбокса "Replicate conn state" нет, его можно сделать:
ethernet0.linkStatePropagation.enable = "TRUE"
Тогда виртуалки будут видны во внешнем LAN.
Wake on LAN включается так:
ethernet0.wakeOnPcktRcv = "FALSE"
Настройка VM для установки в нее ESX4
Да, это возможно. ESX 3.5 и 4.0 может крутиться внутри виртуальной
машины WorkStation 6,7, Mac Fusion 7 и ESX 4.0
http://www.vcritical.com/2009/05/vmware-esx-4-can-even-virtualize-itself/
Настройки VM:
GuestOS: RHEL 5(64 bit)
VM Virtuall Hardware Version 7
VCPU: 2, RAM: 2Gb
NIC: 2* e1000
SCSI: LSI Logic Parallel
PortGroup security: Promiscous mode=Accept
Ставимся со стандартного iso с ESX4 или ESX4i
Однако при попытке стартовать VM внутри виртуалного ESX получим:
"You may not power on virtual machine in a virtual machine"
Чтобы справиться с этим добавить в .vmx файл ESX'а строку
monitor_control.restrict_backdoor = TRUE
В V4 перестала работать скриптовая инсталляция
Веб-интерфейс для генерации ks-файлов был ликвидирован, зато в /root/ks.cfg
лежит адекватная версия для проинсталлированной системы.
опция загрузки ksdevice=eth0 отныне не работает, надо использовать vmnic0
итоговая строка скриптовой инсталляции должна выглядеть примерно так:
esx ks=nfs://192.168.51.10/ks/sc-unreal06.cfg ksdevice=vmnic0
http://communities.vmware.com/message/1274648
ks.cfg # вариант для сетовой инсталляции
. . .
install url http://192.168.1.1/4.0/
. . .
SNIP-config:
kernel vmlinuz-install-vmware4
append initrd=initrd-install-vmware4.img ksdevice=vmnic0 ip=172.16.12.132 netmask=255.255.255.0 gateway=172.16.12.1 nameserver=172.16.11.250 vmkopts=debugLogToSerial:1 mem=512M ks=http://172.16.10.2/ks/${file}.cfg
??
IPAPPEND 1
Как открыть root'доступ в vMA
sudo chsh -s /bin/bash root
how can i view which physical nic each VM's vNic maps to
esxtop will show the used uplink in the TEAM-PNIC colum
(vSphere esxtop only)
Distributed switch: ephemeral vs dynamic port binding
Static - port-id для VM назначается в момент создания/задания подключения
количество подключенных VM ограничено числом портов в портгруппе
Dynamic - port-id выдается в момент poweron
количество "подключеных" VM не ограничено
количество включенных VM ограничено числом портов в портгруппе
Ephemeral - количество портов в портгруппе не задано.
Port-id выдается в момент poweron,
количество включенных VM - любое
В этом режиме невозможно задавать параметры для конкретных port-id
FT - экономим netw - secondary может самостоятельно вести disk IO
По умолчанию весь дисковый ввод/вывод ведет PrimaryVM, а прочитанные данные
передаются на SecondaryVM через FTloggingNet. Но можно переключить SecondaryVM
на самостоятельное чтение с диска
Добавить в .vms
replay.logReadData = checksum
Естественно, дисковый вывод порождаемый SecondaryVM по-прежнему игнорируется
FT - список совместимости
3rd-Generation AMD Opteron based on the AMD Barcelona, Budapest and Shanghai
processor families; and Intel Xeon processors based on the Penryn and Nehalem
microarchitectures
Intel Xeon based on 45nm Core 2 Microarchitecture Category:
o 3100, 3300, 5200 (DP), 5400, 7400
Intel Xeon based on Core i7 Microarchitecture Category:
o 5500 Series
AMD 3rd Generation Opteron Category:
o 1300, 2300 Series (DP), 8300 (MP)
Ограничен также список поддерживаемых операционных систем. Подробности:
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1008027
FT FAQ
vApp IP settings do not directly influence anything
Then, at the individual VM level turn on Edit Settings > Options > vApp Options, and at OVF Settings turn on one or both of the Environment Transports. The next thing is to go to vApp Options > Advanced > Properties. For each network setting that you want to query in your VM add a new property there, give it an appropriate key, open Type > Edit, select Dynamic Property and the thing you want to query (e.g. IP Address for network Production). When you are satisfied, give your OK to all dialogs and start the VM.
Once the VM is up, depending on which transport you enabled you will find a CD in its drive containing ovf-env.xml or you can query the same information with
vmware-guestd --cmd "info-get guestinfo.ovfEnv"
This XML blob will contain the properties you configured above including, for example an IP adress assigned from the IP Pool. All that's left to do is write code that parses the file and bashes the settings into the guest OS. Of course all vApp properties that are not autoconfigured will be there as well.
Вернуть аплинк из дистрибутед свитча обратно обычному, с SC-портом
esxcfg-vswitch -l # get the port ID for the nic
esxcfg-vswitch -V the-port-id -Q vmnic# DVSvSwitchname
esxcfg-vswitch -L vmnic# vSwitch#
* Vi 3.5 *
SSH доступ к ESXi
http://wiki.vm4.ru/InstBase/ssh
Официально VMware не дает вообще такой возможности. Но.
В локальной консоли ESXi нажмите ALT-F1. Напечатайте unsupported.
Текста видно не будет, но вы войдете в режим Tech Support Mode и
появится запрос пароля root
vi /etc/inetd.conf
Расскомментировать #ssh
Перезапустите management services командой /sbin/services.sh restart.
Что нового в VI4 aka vSphere aka NextGeneration VI
Upgrading VMware deployments
Distributed virtual switches to simplify datacenter-wide network management
VMDirectPath - assign a PCI adapter directly to a virtual machine
Storage vMotion - миграция диска работающей VM
Увеличение размера виртуальных дисков и VMFS томов в онлайне
VMware's new Pluggable Storage Architecture
VMware Fault Tolerance - application availability
Lincked Mode - Manage more than one vCenter Server from the same client
Use the new Host Profiles feature to keep hosts uniformly configured
VMware Distributed Power Management - энергосбережение
Save disk space with thin provisioning
Виртуальные апплиансы, содержащие сразу несколько VM
Если в VI Client не открывается консоль виртуальной машины
Clicked on the VM and selected "open console" I got the following:
"error connecting: can not connect to host x.x.x.x: a connection attempt
failed because the connected party did not properly respond after a period
of time, or established connection failed because connected host has failed
to respond."
To fix the problem add the following line to the /etc/vmware/config file:
vmauthd.server.alwaysProxy = "TRUE"
http://vmetc.com/2008/06/02/vi-client-open-console-attempt-fails/
Если клавиатура в консоли VM двоит
Увеличиваем таймаут между нажатиями в .vmx
keyboard.typematicMinDelay = 20000000
Как остановить виртуальную машину
Получить список зарегистрированных в ESX-сервере машин.
vmware-cmd -l
Посмотреть статус VM
vmware-cmd {cfg} getstate
where {cfg} is the path to the .vmx file retrieved from the vmware-cmd -l
command.
Останов, старт, саспенд, снапшот виртуальной машины: start/stop/suspend/snapshot
vmware-cmd {cfg} stop
4. Verify the state again with:
vmware-cmd {cfg} getstate
Как установить в ESX Storage VMotion
www.vmware.com => Downloads => VMware Infrastructure 3 Download =>
Driver & Tools => VMware Infrastructure Remote CLI Download
Проще всего запускаться командой
svmotion --interactive
Как добавить пользовательские дравера на Convertor Cold Clone CD
Within the cd there is a tool called petool.exe with it you can add the
needed extra drivers for your hardware.
You just need to create a folder in uppercase with the drivers, than run the
command bellow, it will import the drivers to the coldclone ISO.
petool.exe -i c:\temp\coldclone.iso -d c:\temp\DRIVERS
Как ограничить IP-доступ к виртуальному центру
conf directory for tomcat and there is a file called server.xml
If you put the following entry in that file it does the job
There is a different valve for limiting by domain name.
Создание и управление VMFS-стораджами
Сторадж создается только на SCSI-дисках (к которым относятся SCSI, SAS, FC,
iSCSI) В отдельной партиции, ID партиции - "fb", начало партиции желательно
выравнять на 128 блок (64Kb)
esxcfg-vmhbadevs # выводит список лунов и соответствующих им /dev/sd* в SC
vmhba1:0:13 /dev/sda
vmhba1:0:14 /dev/sdb
vmhba1:0:21 /dev/sdc
fdisk /dev/sda # создаем primary партицию с ID "fb"
n
p 1
t 1
fb
w
fdisk /dev/sda # выставляем начало 1 партиции на 128-й блок (64-й килобайт)
x
b 1
128
w
. . .
fdisk -l /dev/sda
Device Boot Start End Blocks Id System
/dev/sda1 1 11 88326 fb Vmware VMFS
esxcfg-info -s
При создании стораджа указываем партицию, которую хотим отформатировать под VMFS3
vmkfstools -C vmfs3 -S StorageName vmhba1:0:13:1
Добавление экстенда к стораджу:
vmkfstools -Z vmhba1:0:14:1 vmhba1:0:13:1 # -Z добавка голова
Работа со стораджами
ls -l /vmfs/volumes
vdf
vmkfstools -P StorageName
vmkfstools -P -h StorageName # -h - выводить разнеры в Mb/Gb
ln -sf /vmfs/volumes/storage-uuid /vmfs/volumes/NewStorageName
Файлы, из которых состоит VM
VM.vmx Конфиг-файл VM
VM.vmdk Диск VM (конфиг файл диска)
VM-flat.vmdk Цельный диск VM (preallocated - собственно данные)
VM-f0001.vmdk Splitted диск VM (2Гб кусок splited preallocated диска)
VM-s0001.vmdk Splitted growable диск VM (2Гб кусок расрастущего диска)
VM.vmsd Словарь снапшота и заснапшоченых дисков
VM.vmem VM memory mapped то file
VM.nvram NVRAM Award-BIOS'а VM
VM.vmx.lock Lock, создается при старте VM
VM-delta.vmdk Снапшотная дельта
VM-Snapshot8.vmsn Конфигурация снапшота No 8
Distribudet Lock Handling Host-блокировки на VMFS3
Хост-lock создается в heartbit-регионе, timestamp обновляются каждые 3 сек.
Наличие лока проверяется 15 секунд - если за 5 проверок timestamp не
обновился - значит владелец lock'а скончался, и его можно перехватить. Далее
делается восстановление накатом журнала, и ставится свой lock.
Монтаж стораджей, и стораджи на LUN-снапшотах
ESX монтирует все корректные (с его точки зрения) стораджи с VMFS3
В заголовке VMFS3 указан UUID и номер LUN'а, на котором он создан.
Если в заголовке VMFS3 указан не тот LUN, под которым мы его видим -
значит это не оригинал, а RAID-овый снапшот, полученный в результате CA или BC
Категорически недопустимо монтировать два стораджа, имеющих одинаковый UUID
Автоматический монтаж управляется двумя Advanced Config-переменными
LVM.DisallowSnapshotLUN, LVM.EnableResignature
LVM.EnableResignature = 1 (default) если видим снапшотный LUN - прописываем
ему в заголовок новый UUID и LUN, после этого он безболезненно монтируется
LVM.DisallowSnapshotLUN = 1 либо просто запрещаем монтировать такой LUN
LVM.DisallowSnapshotLUN = 0 (default 0) снапшотный LUN - таки монтируется
LVM.EnableResignature = 0 если видим снапшотный LUN - заголовок не меняем
Самый цирк случается, если хитровымученный RAID-массив один и тот же LUN
двум разным хостам показывает под разным lun-номером. Тогда один из них
всегда будет воспринимать этот LUN как заснапшоченый - и стремиться
произвести с ним ресигнатуру - скорректировать заголовок, следом - второй
хост захочет того-же - и так в вечном цикле. Именно для таких случаев
выставляют LVM.EnableResignature = 0, LVM.DisallowSnapshotLUN = 0
Управление переменными:
cat /proc/vmware/config/LVM/EnableResignature # посмотреть
esxcfg-advcfg -g /LVM/EnableResignature # посмотреть
esxcfg-advcfg -s 1 /LVM/EnableResignature # выставить в 1
esxcfg-rescan vmhba1
Либо (стремно)
vi /etc/vmware/esx.conf
/adv/LVM/EnableResignature = "1"
/adv/Disk/MaskLUNs = "vmhba2:0:34-38;vmhba3:0:1,5,7-9"
/adv/Disk/MaxLUN = "256"
/adv/Disk/DiskSupportSparseLUN
/adv/Disk/ShedNumReqOutstanding
shutdown -r 0
Модули, драверы и их настройки
esxcfg-module -q # посмотреть статус и список модулей VMKERNEL
cat /proc/scsi/qla2300/1 # посмотреть настройки 1-го контроллера типа qla2300
/proc/scsi/[draver]/[instance]
esxcfg-boot -q vmkmod # boot-options vmkernel'a
# сконфигурить длину очереди для QLogig FCesxcfg-module -s ql2maxqdepth=64 qla2300_707_vmw
vi /etc/vmware/esx.conf
/vmkernel/module/qla2300_707_vmw.o/options = ql2maxqdepth=64
vmkload_mod -s qla2300_707_vmw # детальные текущие настройки дравера
Сразу несколько настроек для разных instansow драверa в одной команде:
esxcfg-module -s "lpfc0_lun_queue_depth=16 lpfc0_lun_queue_depth=16" lpfcdd_7xx
после любых настроек модулей выполнить команду esxcfg-boot -b
esxcfg-boot -b # пересобирает init-ram-disk и его настройки
Для гостевых Windows - удлинить таймаут по опознанию сбойнувшего диска
Старт -- Рун -- регедит
HKEY_LOCAL_MACHINE > System > CurrentControlSet > Services > Disk
TimeOutValue = 60
Работаем с virtual-свитчами
esxcfg-nics -l # статус физических ethernet'ов
esxcfg-nics -s 1000 -d full vmnic2
32 nics per host
32 nics per vSwitch
128 vSwitchs
512 PortGroups
1016 Ports per vSwitch
4096 Ports in all PortGroups (точнее 4096 - 128 - numvswith*8)
esxcfg-vswitch -a vSwith2:32 # создать 24-портовый (32-8) v-свитч
esxcfg-vswitch -D Production vSwith2 # оторвать портгруппу
esxcfg-vswitch -A Production vSwith2 # создать в vSwith2 портгруппу Production
esxcfg-vswitch -A Production -v 105 vSwith2 # создать в vSwith2 портгруппу Production с VLAN 105
esxcfg-vswitch -v 105 -p "Service Console" vSwitch0 # Назначить порт-группе Service Console VLAN 105
esxcfg-vswitch -L vmnic2 vSwith2 # подключить физический ethernet в vSwith2
esxcfg-vswitch -U vmnic2 vSwith2 # оторвать физический ethernet
esxcfg-vswitch -l # просмотреть конфиг всех vSwitch
esxcfg-vswitch -m 9000 vSwith1 # enable Jumbo frames в vSwitch1
esxcfg-vswitch -B listen vSwith1 # включить CiscoDiscoveryProtocol
esxcfg-vswitch -B down vSwith1 # выключить CDP
esxcfg-vswitch -b vSwith1 # проверить статус CDP
esxcfg-vswif -l # Посмотреть IP-настройки Service Console
# Назначить IP-адрес для Service Consoleesxcfg-vswif -a -i 192.168.31.36 -n 255.255.255.0 -m 1500 -p "Service Console" vswif0
esxcfg-vmknic -l # посмотреть статус VMkernel'ных IP
esxcfg-vmknic -a -i IP -n NETMASK -m MTU -p PortGroupName # назначить IP для vmkernel
# TSO включается по умолчанию, чтобы не включался - добавить -t
esxcfg-route [gateway-IP] # default gateway для VMkernel
esxcfg-route -l # посмотреть таблицу маршрутизации vmkernel
cat /proc/vmware/net/tcpip/ifconfig
vmping # ping с vmkernel'ного адреса
Как прописать себе права админа VC, если Администратор стал ReadOnly
VC SQL database table : VPX_ACCESS
Then add another row :
ID: 1
Principal : Administrators
Role_ID : -1
ENTITY_ID : 1
FLAG : 3
Afterwards you need to restart the Virtual Center Services.
Как переименовать ESX-сервер
1. Update the following files with the correct server name
/etc/hosts
/etc/sysconfig/network
/etc/vmware/esx.conf
2. Update the hostname as follows
# hostname mateo0x.hp.local3. Restart the network
# service network restart4. Restart the hostd daemon so that the VI client will get the updated hostname
# service mgmt-vmware restarthttp://www.kulichki.com/moshkow/unixhelp/vmware.txt