MyTetra Share
Делитесь знаниями!
База знаний по VMware, ESX, ESXi
Время создания: 20.07.2012 08:47
Раздел: Компьютер - Linux - Виртуализация и эмуляция - VMWare
Запись: xintrea/mytetra_syncro/master/base/1342759632qos53rjpvz/text.html на raw.github.com
VMware vSphere, ESX

Всякие полезности из командной строки.

Подключение ленточных библиотек в VM

1. FC-connected tape libraryes not supported

2. Отменить ALUA SATP для библиотечных устройств (tape и changer)

Для v4.1

esxcli nmp satp listrules -s VMW_SATP_ALUA

esxcli nmp satp deleterule --satp VMW_SATP_ALUA --claim-option tpgs_on

Для v5.0

esxcli стораге nmp satp listrules -s VMW_SATP_ALUA

esxcli storage nmp satp rule remove -s VMW_SATP_ALUA

--device="" --vendor="" --model="" --claim-option="tpgs_on"

--driver="" --transport="" -b

3. Сделать их monopath.

http://vmpress.blogspot.com/2010/12/fc-tape-library-vmware-esxi.html

Автоматическое создание и удаление снапшотов

http://faq.sanbarrow.com/index.php?solution_id=1080

В WS и Fusion - используем Autoprotect

В ESX - руками правим .vmx

napshot.minFreeSpace = value in bytes

snapshot.maxSnapshots = number of allowed snapshots

The basic parameters

rollingTier0.interval = "10"

This parameter sets a time-interval in seconds.

With this value a snapshot will be created every 10 seconds

snapshot.numRollingTiers = "3"

This parameter sets the number of timers you want to run.

rollingTier0.maximum = "33"

This parameter sets the maximum number of snapshots that will be created by the timer.

rollingTier0.live = "TRUE"

Also stores the memory along with the snapshot

Удаление снапшотов древнее, чем 3 дня:

Get-VM -Name VMName | Get-Snapshot | \

Where-Object { $_.Created -lt (Get-Date).AddDays(-3) } | Remove-Snapshot

Snaphot parameters

snapshot.action = [ keep | autoRevert | autoCommit | prompt ]

workingDir =

suspend.Directory =

snapshot.numSnapshots =

snapshot.minFreeSpace =

HA VM and VM&Application monitoring

Агент HA мониторит состояние VM, и если она умерла неестественной смертью -

перезапускает на _том же самом_ хосте.

VM monitoring, условие перезапуска:

либо: аварийный останов сопровождающего VMM

либо: отсутствие vmtools heartbeat AND полное отсутствие IO

Application monitoring, условие перезапуска:

Внутри VM необходимо в цикле запускать программу

C:\VMware-GuestAppMonitorSDK\bin\win32>vmware-appmonitor.exe

{enable | disable | markActive}

markActive - подается не реже, чем раз в 30 секунд

enable - включает application monitoring изнутри

disable - выключает application monitoring изнутри

Входит в состав VMware-GuestAppMonitorSDK, добывается гуглением

http://www.yellow-bricks.com/2011/08/11/vsphere-5-0-ha-application-monitoring-intro/

Vmware Data Recovery

Pre- и post-freeze скрипты:

Windows: Перед бэкапным снапшотом - исполняются по алфавиту все скрипты из

C:\Program Files\VMware\VMware Tools\backupScripts.d

После удаления бэкапного снапшота - они же, в обратном порядке

Linux Pre-freeze /usr/sbin/pre-freeze-script

Linux Post-thaw /usr/sbin/post-thaw-script

Serial Port connection

Вариант: Named Pipe - цепляет компорт одной VM(near end=client) к

компорту другой VM(near end=server) - обе машины используют одинаковое

слово в поле Pipe Named - чтобы найти друг друга

Вариант: Use Network

* Server

Port URI: telnet://:12345

После включения VM делаем: "telnet esx.host 12345" и попадаем в компорт VM

Вариант: Use Network

* Client

Port URI: telnet://external.linux:23456 (можно так же ssh?)

После включения VM делает "telnet external.linux 23456"

и пробрасывает туда свой компорт

Virtual Serial Port Concentrator

Появился в v4.1. Поставляется в виде (платного?) апплианса

ACS v6000 Virtual Advanced Console Server

В апплиансе управление IP, с консоли: wiz

У VM'ки: Add Serial Port -- Connect Via Network --

Click Use Virtual Serial Port Concentrator.

Port URI: ACSID://ttyS42 (42 = номер порта в концентраторе)

vSPC URI: telnet://192.168.1.1:8801 - назначает tcp-порт в концентраторе

Внутри гостевого Linux, в /etc/grub.conf

console=ttyS0,9600 - переназначает GRUB-console w COM-port

Так же см: free vspcpy server

http://sourceforge.net/p/vspcpy/home/Home/

Коротко про View Persona Management

Origin: http://www.vmgu.ru/articles/vmware-view-persona-management

Установить на Connection-сервере GPMC.msc - Group Policy Management Editor

http://www.microsoft.com/download/en/details.aspx?id=21895

Запускаем GPMC

Computer Configuration>Policies>Administrative Templates - Add/Remove Templates

Подключаем c:\...\VMware\VMwareView\Server\extras\GroupPolicyFiles\ViewPM.adm

Затем переходим в

Computer Configuration>Policies>Administrative Templates

>VMware View Agent Configuration> Persona Management

>Roaming& syncronisation

GPO "Persona Repository Location"

>Folder Redirectiop

. . .

>Desktop UI

. . .

Как выключить ESXi через ssh

# этот метод жестко убивает VM-ки

ssh root@esx 'shutdown.sh ; poweroff'

VM cannot allocate memory при большом об'еме vmdk

При подключении более 20 жмдк и/или больше 4 Т vmdk суммарно

виртуальной машине не хватает heap size.

VMFS3.MaxHeapSizeMB = увеличить

Создание DB-instance в Oracle для VCSA

sqlplus sys/manager as SYSDBA

CREATE SMALLFILE TABLESPACE "VPX" DATAFILE "/var/oracle/oradata/vpxd/vpx01.dbf"

SIZE 1G AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED LOGGING EXTENT

MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

CREATE USER "VPXADMIN" PROFILE "DEFAULT" IDENTIFIED BY "oracle"

DEFAULT TABLESPACE "VPX" ACCOUNT UNLOCK;

grant connect, resource, create view, sequence, create table to VPXADMIN;

grant create materialized view to VPXADMIN;

grant execute on dbms_lock, execute on dbms_job to VPXADMIN;

grant execute on dba_tablespaces to VPXADMIN;

grant select on dba_temp_files, select on dba_data_files to VPXADMIN;

grant unlimited tablespace to VPXADMIN;

Название instance придумывается и вбивается в web-управлялке VCSA

tsnames.ora редактировать не требуется

Advanced настройки управляющие памятью

Mem.ShareVmkEnable = 1 # Разрешает Transparent Page Sharing

Mem.MemZipEnable = 1 # Разрешает Memory Compression

Mem.GuestAllocLargePages = 1 # Разрешает LagePage во всех VM

Отключение ASLR (Address Space Layout Randomization) в реестре VM

\HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\MoveImages

создать ключ DWORD = 0 # Disable ASLR = плюс 20% к эффективности TPS

# Disable ASLR = минус x% к секьюрности OS

Внутри VM читаем информацию о настройках vApp, IP pool и OVF environment

http://virtual-red-dot.blogspot.com/2012/01/vapp-options-in-vm.html

http://blogs.vmware.com/vapp/2009/07/selfconfiguration-and-the-ovf-environment.html

Linked-clone своими руками

Берем обычную VM-1 с обычным виртуальным диском. Делаем ей снапшот.

Делаем VM-2, с "Disk - Use existing". Через "Browse" находим диск VM-1 - их

там два - исходник, и delta - цепляемся к исходному. Не включая VM-2, делаем

ей снапшот. Теперь VM-1 и VM-2 можно безболезненно запускать, в т.ч. и на

разных хостах.

Beacon probing по двум аплинкам: револьверный режим

На двух аплинках beacon probing failure не в состоянии определить, какой из

аплинков "погас" (ведь бродкасты не проходят по обоим направлениям). Тогда

дополнительно проверяется Link Status. Если оба аплинка "up", vSwitch

переключается в "shortgun mode"(двустволка) - весь трафик дублируется в оба

аплинка. Это может быть (а может не быть) чревато шквалом RARP бродкастов -

используемых при "Notify switches".

Beacon probing нельзя применять при Ether Channel (balancing by IP hash)

Просмотр информации о хардвере ESXi 5.0

smbiosDump

Установка апдейта в vSphere 5.0

vihostupdate в V5 отменена. Вместо нее esxcli

esxcli -server=x.x.x.x -username=root software vib update -depot=/vmfs/volumes/datastore/ESXi500-201109001.zip

Что почитать про vSphere

Книжки:

Scott Lowe "Mastering vSphere 5"

F.Guthrie, S.Lowe, M.Saidel-Keesing "VMware vSphere Design"

Duncan Epping, Duncan Epping "VMware vSphere 5 Clustering Technical Deepdive"

Околоvmware'овские блоги:

http://www.vmgu.ru

http://vmind.ru

http://www.virtuallyghetto.com

http://www.vm4.ru

http://blog.vadmin.ru

http://jabuin.livejournal.com/

http://www.vsphere.ru

http://www.vmworld5.ru

http://vmpress.blogspot.com

http://communities.vmware.com/blogs/Deshifrator

http://communities.vmware.com/community/vmtn/vmug/forums/emea/russia?view=discussions

VMware Free Learning Videos

VMware Technical Journal

VADP: vSphere storage APIs for Data Protection

VAPD FAQ

VADP описание API http://www.vmware.com/support/developer/vddk/vadp_vsphere_backup111.pdf

VADP сам по себе (загрузка?)

VAAI: vSphere storage APIs for Array Integration

VAAI plugins for Array

ATS (Atomic Test and Set) - Hardware Assisted Locking

Clone - Hardware Accelerated Full Copy - копирование vmdk

Zero - Hardware Accelerated Block Zeroing - обнуление eager zeroed vmdk

Delete - Thin Provisioning - оповещение RAID об удалении VMDK (полезно для массивов с thin-provisioned LUN)

VAAI plugins for NFS

Reserve Space - позволяет создать thick vmdk на NFS'e

Full File Clone - копирование vmdk

Lasy File Clone - "копирование" посредством NAS-snapshot (offload аналог linked clone)

Extended Statistics

Просмотр возможносри VAAI для разных LUNs

esxcli storage core device vaai status get

Просмотр стандартных назначений VAAI-модулей для поддерживаемых Arrais

esxcli storage core claimrules list -c all

Как назначить локальному SATA диску фальшивый атрибут SSD

http://www.virtuallyghetto.com/2011/07/how-to-trick-esxi-5-in-seeing-ssd.html

# делаем правило

esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device mpx.vmhba1:C0:T2:L0 --option=enable_ssd

# проверяем его

esxcli storage nmp satp rule list | grep enable_ssd

# активируем

esxcli storage core claiming reclaim -d mpx.vmhba1:C0:T2:L0

vim-cmd hostsvc/storage/refresh

# убеждаемся

esxcli storage core device list --device=mpx.vmhba1:C0:T2:L0

Чтобы ESXi не жаловался на включенный SSH

Configuration -- Software -- "Advanced Settings"

UserVars > UserVars.SupressShellWarning = 1

HA/DRS 5.0 advanced options

VMware Distributed Resource Management: Design, Implementation and Lessons Learned 

das.ignoreinsufficienthbdatastore = true
das.heartbeatdsperhost = value
http://www.virtuallyghetto.com/2011/07/new-vsphere-5-ha-drs-and-sdrs.html


Частота прерывания таймера в Linux

Кернельный параметр divider=10 сокращает дефолтную частоту обработчика

таймера в 10 раз, что сокращает CPU overhead для idle VM.

Размещение снапшотов

snapshot.redoNotWithParent = "TRUE"

workingDir = "..."

snapshot.maxSnapshots = "n"

Configuring Auto Deploy on the vCenter Server Appliance

Подробнее тут

http://www.yellow-bricks.com/2011/08/25/using-vsphere-5-auto-deploy-in-your-home-lab/

1. Запускаем Autodeploy на VCapp

https://vcapp-iodine12.hp.local:5480/

Services - Status - Start ESXi services

2. Настраиваем TFTP

vSphere Client -- Home - Administration - Autodeploy -

"Download TFTP boot zip" и вскрываем эти PXE-файлы

в корневой каталог TFTP-сервера

Привязка PXE-загрузчика к конкретному Autodeploy - в файле "tramp":

#!gpxe

set filename https://10.10.47.242:6502/vmw/rbd/tramp

chain https://10.10.47.242:6502/vmw/rbd/tramp

3. Настраиваем DHCP

vi /etc/sysconfig/dhcpd

DHCPD_INTERFACE="eth0"

mv /etc/dhcpd.conf /etc/dhcpd.conf.old

vi /etc/dhcpd.conf

ddns-update-style interim;

subnet 10.10.47.0 netmask 255.255.255.0 {

range 10.10.47.212 10.10.47.212;

option routers 10.10.47.3;

option subnet-mask 255.255.255.0;

option domain-name-servers 192.168.47.3;

# файл автодеплойного загрузчика на указанном TFTP сервере

filename "undionly.kpxe.vmw-hardwired";

next-server 192.168.47.112;

host _disklessesxhostname_ {

hardware ethernet _MA:Ca:dd:re:ss:ESX_;

fixed-address 10.10.47.212;

} }

service dhcpd restart

4. Настраиваем Autodeploy с помощью autodeploy PlugIN

http://labs.vmware.com/flings/autodeploygui

4. Настраиваем Autodeploy с помощью PowerCLI

File path to the ESXi offline image c:\HL234\VMware-ESXi-5.0.0-469512-depot.zip

# разрешаем работу PowerCLI

get-executionpolicy

set-executionpolicy unrestricted

connect-viserver vCenter.Server.name

# подключаем архив с дистрибутивом ESXi к ImageBuilder

Add-EsxSoftwareDepot c:\HL234\VMware-ESXi-5.0.0-469512-depot.zip

# а так подключается vmwar-овский депот

Get-Help Add-ESXSoftwareDepot -Full

Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

# HP depot с HP-build ESXi

Add-EsxSoftwareDepot http://vibsdepot.hp.com/index.xml

# Список image-профайлов в подключенных депотах

get-esximageprofile

# Заряжаем правила соответствия - какой хост каким boot-образом кормить:

# Привязываем image-профайл (фактически - boot-образ) ко всем хостам

new-deployrule -name prawilo1 -item ESXi-5.0.0-469512-standard -allhosts

# загруженный хост включать в кластер Cluster12

new-deployrule -name prawilo2 -item "Cluster12" -allhosts

# к загруженному хосту применить Host Profile

new-deployrule -name prawilo3 -item "HostProfile12" -allhosts

# Активируем созданные правила

add-deployrule -deployrule prawilo1

add-deployrule -deployrule prawilo2

add-deployrule -deployrule prawilo3

add-deployrule -deployrule

get-deployruleset

Еще несколько команд:

Test-DeployRuleSetCompliance -VMHost host1.company.local

Get-VMHost host1.company.local | Test-DeployRuleSetCompliance

Get-VMHost host1.company.local | Test-DeployRuleSetCompliance | Repair-DeployRuleSetCompliance

Get-VMHostAttributes -VMHost host1.company.localB

Get-VMHost host1.company.local | Get-VMHostAttributesB

Get-VMHostMatchingRules host1.company.local

Get-VMHost host1.company.local | Get-VMHostMatchingRulesB

Get-Command -Module VMware.DeployAutomaionB

Image Builder

Add-EsxSoftwareDepot C:\ESXi-Depot\update-from-esxi5.0-5.0_update01.zip # Add offline software depot

Add-EsxSoftwareDepot http://vibsdepot.hp.com # Add online software depot

Remove-EsxSoftwareDepot zip:C:\ESXi-Depot\update-from-esxi5.0-5.0_update01.zip?index.xml # Remove offline software depot

Get-EsxSoftwareChannel

Set-EsxImageProfile

Get-EsxSoftwarePackage # Show available VIBs

Get-EsxSoftwarePackage -Name tools-light # Show details for VIB "tools-light"

Get-EsxSoftwarePackage -Vendor VMware # Show all VMware VIBs

Get-EsxSoftwarePackage -AcceptanceLevel PartnerSupported # Show PartnerSupported VIBs

Get-EsxSoftwarePackage net-e1000 | Select -ExpandProperty Depends # Show dependencies for VIB "net-e1000"

Get-EsxSoftwarePackage net-e1000 | Select -ExpandProperty Conflicts # Show conflicts for VIB "net-e1000"

Get-EsxSoftwarePackage net-e1000 | Select StatelessReady # Identify if VIB "net-e1000" is Stateless Ready

New-EsxImageProfile -CloneProfile ESXi-5.0.0-20120302001-standard -Name CustomProfile -AcceptanceLevel PartnerSupported

New-EsxImageProfile -NewProfile -Name MinInstall -Vendor Custom -SoftwarePackage esx-base,esx-tboot,misc-drivers

Add-EsxSoftwarePackage -ImageProfile CustomProfile -SoftwarePackage tools-light # Add VIB "tools-light" to CustomProfile

Remove-EsxSoftwarePackage -ImageProfile CustomProfile -SoftwarePackage tools-light # Remove VIB "tools-light" from CustomProfile

Get-EsxImageProfile # Show Image Profiles

Get-EsxImageProfile CustomProfile | Select -Expand VibListY # List VIBs in Image Profile "CustomProfile"

Compare-EsxImageProfile CustomProfile01 CustomProfile02 # Compare Image Profiles CustomProfile01 and CustomProfile02

Export-EsxImageProfile -ImageProfile CustomProfile -ExportToIso -FilePath C:\ESXi-Depot\CustomProfile.iso

Export-EsxImageProfile -ImageProfile CustomProfile -ExportToBundle -FilePath C:\ESXi-Depot\CustomProfile.zip

Get-Command -Module VMware.ImageBuilder

Изменение частоты таймера для Linux

Штатная частота прерываний таймера во многих Linux - 1000 Hz. Понизить ее до

100 Hz можно ключом начальной загрузки:

divider=10

Если DPM не выключает хосты

Проверить, что _все_ VM-ки поддаются vmotion в оба конца.

Зачистить COM-порты у VM-ок, полученных с помощью Convertor'а,

как минимум выставить им: NOT connected, и NOT connected at poweron

Чтоб vsphere-клиент при выборе LUN для RDM/VMFS показывал все LUN

Чтоб vsphere-клиент при выборе LUN для RDM/VMFS показывал все LUN,

а не только незанятые:

Administration > vCenter Server Settings > Advanced Settings.

config.vpxd.filter.rdmFilter; false

config.vpxd.filter.vmfsFilter; false

Это СТРЕМНО! Не подумав, не применять!

http://kb.vmware.com/selfservice/microsites/search.do?externalId=1010513

Оффтопик. Скриптинг в win-cmd

cmd /c c:\wintools\devcon.exe find "USB\VID_0BB4&PID_0C02&MI_01" | c:\batch\htc.cmd

########### htc.cmd ##########################

@echo off

set /p res=

if "%res%"=="No matching devices found." goto end

"C:\Program Files (x86)\MyPhoneExplorer\MyPhoneExplorer.exe" action=sync flags=noerrmsg syncitem=multi

:end

VDS - конфигурирование без VC

Вообще-то без VC VDS конфигурировать невозможно, но если у портовой группы

port binding = ephemeral, то подключить виртуалку к VDS можно будет и через

host, без доступа к VC

Превращение VM с 4-vcpu в VM с двумя двухядерными процессорами

cpuid.coresPerSocket = 2

Как уменьшить размер виртуального диска

1. Партицию на уменьшаемом диске надо подрезать _заранее_

2. В файле .vmdk уменьшаем явно заданный (в блоках по 512b) размер диска,

RW 25165824 VMFS "Win2003se-flat.vmdk"

затем - делаем диску migrate, или "storage vmotion" или VM clone.

3. Официально vmware этот трюк не поддерживает.

Просмотр ARP-таблицы в ESXi

esxcli network neighbor list

а еще можно - vimsh - по свойствам vSwitch

Как обнулить пароль в ESX и ESXi

В ESX - загрузиться single user mode

В ESXi содержимое /etc/passwd при каждой загрузке замещается с конфиг-архива.

Поэтому править нужно в нем.

setup.tgz лежит на VFAT-партиции No 2(? 3?4?) содержит local.tar -

вскрыть их, исправить файл, затем свернуть обратно и положить на место.

Как восстановить удаленный VMFS3

Команда "Delete Datastore" удаляет из partition table партицию типа "fb", но

сама мета-информация VMFS - остается целой.

Для оживления удаленного VMFS надо просто воссоздать партицию ручным fdisk с

тем же размером, что был у оригинала.

Тип партиции: "fb"

Командой "e" (Expert mode) - "x 128"(отступ) сместить начало партиции на 128

блок (т.е. 64Kb от начала)

Затем "Rescan strorages" - и VMFS будет обнаружен.

Переназначение snapshot'ов и swap'а на другой сторадж

Вставляем в .vmx строчку

workingDir="/vmfs/volumes/Datastore1/vm-snapshots"

она переназначает и снапшоты и swapfile тоже.

Если swapfile должен лежать в другом сторадже, задаем его:

sched.swap.dir="path_to_vm_directory...or_other_datastore_dir"

сделать машине "Remove from inventory"+"Add to inventory"

Установка updates в ESXi

Встать в Maintеnаnce моде

Удаленно:

/usr/lib/vmware-vcli/apps/host/hostops.pl --target_host ESX-Host-FQDN

--operation enter_maintenance --url https://vCenter-Host/sdk/vimService.wsdl

Локально:

vim-cmd hostsvc/maintenance_mode_enter

esxupdate --bundle /vmfs/volumes/nfs/update-from-esxi4.1-4.1_update01.zip update

vim-cmd для ESXi

vim-cmd vmsvc/getallvms # список всех VM

vim-cmd vmsvc/power.getstate 65 # power-статус

vim-cmd vmsvc/power.off 64

power.shutdown,power.suspend ...

vim-cmd vmsvc # help

# shutdown всех VM

vim-cmd vmsvc/getallvms|sed -e "s/ .*//"|grep "^[0-9]*$"|\

while read vmid ; do vim-cmd vmsvc/power.shutdown $vmid ; done

Перезагрузка ESX3.5:

shutdown -r или

vim-cmd hostsvc/maintenance_mode_enter

reboot -f

vim-cmd hostsvc/maintenance_mode_exit

Реконфигурация сети у vMA

Можно перезапустить скрипт начальной конфигурации сетевых параметров vMA:

# в VMA 4.0

vi-admin$ sudo /opt/vmware/vima/bin/vmware-vima-netconf.pl

# в VMA 4.1

vi-admin$ sudo /opt/vmware/vma/bin/firstboot/vmware-vma-netconf.pl

Дабы у vMA не двоила клавиатура - вставить в .vmx

keyboard.typematicMinDelay = 2000000

Как выполнить команду внутри GUEST OS

Для этого имеется VMware API VIX

download: http://www.vmware.com/support/developer/vix-api/

В его состав входит команда vmrun

http://www.virtuatopia.com/index.php/Controlling_VMware_Virtual_Machines_from_the_Command_Line_with_vmrun

В .vmx вписать (по умолчанию выключено)

vix.inGuest.enable = TRUE

Примеры использования vmrun (-T esx , -T ws ...)

vmrun -T esx -h https://myHost.com/sdk -u hostUser -p hostPassword stop "[datastore1] vm/myVM.vmx"

vmrun -T esx -h https://hostname/sdk -u root -p PaSs -gu Administrator

-gp guestpasswd listProcessesInGuest "[Vol1] win2008-1/win2008-1.vmx"

vmrun -T esx -h https://hostname/sdk -u root -p PaSS -gu Administrator

-gp guestpaswd runProgramInGuest "[datastore1] win2008-1/win2008-1.vmx"

-activeWindow "c:\windows\system32\cmd.exe"

vmrun -T ws -h https://hostname:8333/sdk -u root -p PaSS -gu Administrator

-gp guestpasswd killProcessInGuest "[Vol1] win2008-1/win2008-1.vmx" 2368

vmrun -T server -h https://hostname:8333/sdk -u root -p PaSS -gu Administrator

-gp guestpasswd runScriptInGuest "[Vol1] CentOS 5/Centos 5.vmx"

/usr/bin/ruby /home/ruby/hello.rb

Либо PowerCLI

Инсталляция ESXi по сети

Origin: http://communities.vmware.com/blogs/vmwareinsmb/2010/07/13/esxi-41-scripted-installation-via-pxe-and-kickstart

Иметь установленными: dhcpd, tftpd, apache, syslinux, pxeboot

# Настройки приведены для openSUSE 11.3 - для других Linux надо

# делать очевидные замены, типа zypper == > apt-get, yum и т.д.

zypper install tftp dhcp-server syslinux qiwi-pxeboot apache2

#### /etc/dhcpd.conf #### задать инсталляционным адресам загрузчик pxelinux

option domain-name-servers 192.168.1.4;

default-lease-time 86400;

max-lease-time 604800;

authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.151 192.168.163.180;

filename "pxelinux.0";

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.1;

}

# А еще лучше - индивидуально задать на mac-адрес хоста

host esxi02 {

hardware ethernet 08:00:07:26:c0:a5;

fixed-address 192.168.1.22;

filename "pxelinux.0";

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.1;

}

################################

Смотрим в /etc/xinetd.d/tftp - где корневая директория tftp, например

server_args = -s /srv/tftpboot

меняем disable = yes

на disable = no

и перезапускаем xinetd

service xinetd restart

# Размещаем в ней загрузчик pxelinux

/srv/tftpboot/pxelinux.0

# и его конфигуратор

# /srv/tftpboot/pxelinux.cfg/default :

DISPLAY boot.txt

DEFAULT ESX_4.1_install

LABEL ESX_4.1_install

kernel vmware/esx4.1/mboot.c32

append vmware/esx4.1/vmkboot.gz ks=http://192.168.1.4/linux/vmware/esxi-ks.cfg --- vmware/esx4.1/vmkernel.gz --- vmware/esx4.1/sys.vgz --- vmware/esx4.1/cim.vgz --- vmware/esx4.1/ienviron.vgz --- vmware/esx4.1/install.vgz

в подкаталог tftpd сервера монтируем инсталляционный CDROM ESXi

mkdir -p /srv/tftpboot/vmware/esx4.1

mount /dev/cdrom /srv/tftpboot/vmware/esx4.1

или

mount -o loop /export/vmware/ESXi4.1.iso /srv/tftpboot/vmware/esx4.1

# Ostalosx sdelatx kick-start-файл, и можно приступать

#### /export/linux/vmware/esxi-ks.cfg ##############

accepteula

rootpw supersecretpassword

autopart --firstdisk --overwritevmfs

install url http://192.168.1.4/linux/vmware

network --bootproto=static --ip=192.168.1.22 --gateway=192.168.1.1 --nameserver=192.168.1.4 --netmask=255.255.255.0 --hostname=esxi02 --addvmportgroup=0

reboot

####################################################

Назначение локального SATA-диска в RDM для ESXi

Origin: http://www.vm-help.com/esx40i/SATA_RDMs.php

При создании RDM через клиента ESXi локальные SATA-ные диски выбрать не дает.

Поэтому RDM-конфиг для него придется делать руками, командой vmkfstools

# находим VML-идентификатор требуемого диска

ls -l /dev/disks/

... vml.01000000002020202020202020202020203951473358423630535433353030 ->

t10.ATA_____ST3500630AS_________________________________________9QG3CC60

# Создаем папку для RDM-дисков и переходим в нее

mkdir /vmfs/volumes/datastore1

cd /vmfs/volumes/datastore1

# создание виртуального RDM (-r с поддержкой снапшотов)

vmkfstools -r /vmfs/devices/disks/vml...30535433353030 rdm1.vmdk -a lsilogic

# создание физического RDM (-z без снапшотов)

vmkfstools -z /vmfs/devices/disks/vml.01....5433353030 rdm1.vmdk -a lsilogic

В виртуальную машину такой RDM цепляем как "Use existing disk"

esxcli в vSphere 5.0

# Список nfs-монтирований на хосте:

# esxcli storage nfs list

# Список установленных vib-пакетов:

# esxcli software vib list

# Информация о памяти на хосте ESXi, включая объем RAM:

# esxcli hardware memory get

# Информация о количестве процессоров на хосте ESXi:

# esxcli hardware cpu list

# Список iSCSI-адаптеров и их имена:

# esxli iscsi adapter list

# Список сетевых адаптеров:

# esxcli network nic list

# Информация об IP-интерфейсах хоста:

# esxcli network ip interface list

# Информация о настройках DNS:

# esxcli network ip dns search list

# esxcli network ip dns server list

# Состояние активных соединений (аналог netstat):

# esxcli network ip connection list

# Вывод ARP-таблицы:

# esxcli network neighbors list

# Состояние фаервола ESXi и активные разрешения для портов и сервисов:

# esxcli network firewall get

# esxcli network firewall ruleset list

# Информация о томах VMFS, подключенных к хосту:

# esxcli storage vmfs extent list

# Мапинг VMFS-томов к устройствам:

# esxcli storage filesystem list

# Текущая версия ESXi:

# esxcli system version list

# Вывод информации о путях и устройствах FC:

# esxcli storage core path list

# esxcli storage core device list

# Список плагинов NMP, загруженных в систему:

# esxcli storage core plugin list

# Рескан HBA-адаптеров:

# esxcli storage core adapter rescan

# Получить список ВМ с их World ID и убить их по этому ID

# esxcli vm process list # получаем ID

# esxcli vm process kill --type=[soft,hard,force] --world-id=WorldID

# Узнать и изменить приветственное сообщение ESXi:

# esxcli system welcomemsg get

# esxcli system welcomemsg set

# Поискать что-нибудь в Advanced Settings хоста:

# esxcli system settings advanced list

# Текущее аппаратное время хоста:

# esxcli hardware clock get

# Порядок загрузки с устройств:

# esxcli hardware bootdevice list

# Список PCI-устройств:

# esxcli hardware pci list

# Рескан iSCSI-адаптеров (выполняем две команды последовательно):

# esxcli iscsi adapter discovery rediscover -A {adapter_name}

# esxcli storage core adapter rescan [-A {adapter_name} | -all]

# Список виртуальных коммутаторов и портгрупп:

# esxcli network vswitch standard list

Активация dependend-hardware iSCSI (broadcom chip)

Ethernet Broadcom 5708,5709(1Gb) и 57711(10Gb) имеет iSCSI offload engine на

борту. Дравера к ним появились начиная с 4.1 Update 1.

1) создать выделенные vmk (для каждого адаптера) и в свойствах портовой

группы vmk в "NIC Teaming" -- "Failover Order" в Active оставить только

broadcom-овские аплинки

2) Привязать VMK к соответствующим iscsi-vmhba:

esxcli swiscsi nic add -n vmk2 -d vmhba32

esxcli swiscsi nic add -n vmk3 -d vmhba33

3) Настройка target-discavering "Broadcom iSCSI Adapter" идентична

настройкам для Software iSCSI

Назначение нескольких vmk для доступа к iSCSI

1. Создать несколько vmk-адресов (желательно, привязав их на разные аплинки)

2. биндим vmk1 и vmk2 в Siftware iSCSI vmhba31 (или какой у него номер)

esxcli swiscsi nic add -n vmk2 -d vmhba31

esxcli swiscsi nic add -n vmk3 -d vmhba31

esxcli swiscsi nic list -d vmhba33

Пути ведущие к iSCSI-лунам с vmk1 и vmk2 будут выглядеть соотвественно

vmhba33:C1:T*:L* и vmhba33:C2:T*:L*

Выбирая путь к LUN'у с C1 или C2 - мы определяем IP-адрес и интерфейс,

с которого будет вестись работа с этим путем к LUN'у

Маскировка LUN в vSphere 4

Для маскировки LUN'у вместо штатного плугина PSA назначается "тупой"

плугин MASK_PATH

# найти LUN_ID нужного LUN

esxcfg-scsidevs -l

# все пути для этого LUN. Например vmhba2:C0:T2:L13

esxcfg-mpath -L | grep {LUN_ID}

# Добавить правило в конфиг-файл под незанятым номером (в диапазоне 101-200)

esxcli corestorage claimrule add --rule 113 -t location -A vmhba2 -C 0 -T 2 -L 13 -P MASK_PATH

# Загрузить созданное правило в список активных

esxcli corestorage claimrule load

# Убедиться, что имеются два правила с выбранным номером (file и runtime)

esxcli corestorage claimrule list

# Переопределить текущие правила для маршрутов к LUN'у на только что созданные.

esxcli corestorage claiming reclaim -d {LUN_ID}

esxcfg-scsidevs -m

Origin: http://vgeek.noteit.ru/3097.html

Origin: http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1009449

# Отмена маскрировки LUN'a

esxcli corestorage claimrule list

esxcli corestorage claimrule delete --rule 113

esxcli corestorage claimrule load

esxcfg-rescan

esxcfg-rescan # один раз может не помочь

esxcfg-mpath -l -P vmhba1:C0:T0:L0

esxcli corestorage claiming reclaim -d {NAA.ID}

Активация SNMP-агента в ESXi 4

# Куда слать трапы (напр. с комьюнити public)

vicfg-snmp --server hostname -t host.snmp.receiver/public

# Задать порт SNMP-агента (для get/set)

vicfg-snmp --server hostname -p 161

# Задать комьюнити для агента (например public)

vicfg-snmp --server hostname -c public

# Включаем агента SNMP

vicfg-snmp --server hostname -enable

Настройки сохраняются в /etc/vmware/snmp.xml

# Описания MIB и трапов - тут

http://communities.vmware.com/community/developer/managementapi

Сетевая PXE инсталляция ESXi 4.1

http://communities.vmware.com/blogs/vmwareinsmb/2010/07/13/esxi-41-scripted-installation-via-pxe-and-kickstart

Делаем USB-флешку для инсталляции ESXi 4.1 с USB

Origin: Vallard Benincosa http://benincosa.org/blog/?p=171

Doinfo: http://habrahabr.ru/blogs/sysadm/109204/#habracut

Dopinfo scripts: http://www.vm-help.com/forum/viewtopic.php?f=14&t=4

# монтируем ESXi iso

mount -o loop /VM/VMware-VMvisor-Installer-4.1.0-260247.x86_64.iso /media/ESXi

На флешке: 1 primary partition, size >= 310M, active, type "b" W95 FAT32

# Отформатировать партицию под vfat

mkfs.vfat -n BOOT -F 32 /dev/sdc1

# прописать mbr на саму флешку, скопировать загрузчик syslinux на партицию

syslinux -s /dev/sdc1

dd if=/usr/share/syslinux/mbr.bin of=/dev/sdc

# Скопировать содержимое ESXi-cdorm на флешку

mount /dev/sdc1 /media/USB

cp -a /media/ESXi /media/USB

# Удалить с флешки "родной" iso-загрузчик

rm /media/USB/isolinux.bin

# подсунуть "родное" стартовое меню загрузчику syslinux

mv /media/USB/isolinux.cfg /media/USB/syslinux.cfg

########################################################

# инсталлятор будет искать install на CDROM, поэтому без КС-файла не обойтись

# в файле меню добавить вызов ks-файла для unattended инсталляции: ks=usb

########################################################

default menu.c32

menu title VMware VMvisor Boot Menu

timeout 80

label ESXi Installer

menu label ^ESXi Installer

kernel mboot.c32

append vmkboot.gz ks=usb --- vmkernel.gz --- sys.vgz --- cim.vgz --- ienviron.vgz --- install.vgz

# ks=file:///etc/vmware/weasel/ks.cfg

label ^Boot from local disk

menu label ^Boot from local disk

localboot 0x80

########################################################

# simple kickstart file (ks.cfg) just looks like this:

########################################################

vmaccepteula

rootpw cluster

######## расскомментировать, если полностью в себе уверен:

# автоформат 1-го диска # autopart --firstdisk --overwritevmfs

install usb

# install url example.com/vm - распакованый образ инсталляшки

network --bootproto=static --ip=192.168.70.76 --gateway=192.168.70.1 --hostname=esxi-76 --device=vmnic0 --nameserver=192.168.70.1 --netmask=255.255.255.0

reboot

########################################################

Если соседские VC генерят разным виртуалкам совпадающие mac-адреса

Mac-адрес виртуалки генерится исходя из VC Unique ID - если центры залиты с

одного темплейта, то дубляж mac-ов практически гарантирован.

Лечение: в настройках VM - меняем адаптеру automatic на ручной, затем снова

automatic

Лечение правильное (Reference VMware KB 1024025):

Administration > vCenter Server Settings > Runtime Settings

Меняем vCenter Server Unique ID (в диапазоне 1-63) - всем разный

vSphere 4.1 - что нового

4.1 - последняя версия ESX. Далее будет только ESXi

Поддержка scripted-инсталляции (исползуется стандартный ks-file)

vSphere-клиент с ESX не ставится. Только с www или с vCentre installation

ESXi - может грузиться с SAN. В т.ч. с software iSCSI.

Storage hardware assistance array integration (VAAI) - операции с vmdk по

возможности отдаются RAID-массиву

Продвинутая storage performance статистика

Ресурсные пулы для storage-операций.

Dependend iSCSI (hardware offload) для Broadcom 57**

http://vmware.com/support/vsphere4/doc/vsp_41_new_feat.html

VM с многоядерным процессором

cpuid.coresPerSocket = 2 # или 4 или 8

Как задать неvmwar'ный МАК-адрес для VM

Никак. В ESX 3.5 и 4 это невозможно.

Ниже описана технология для ESX 2 (и workstation)

http://communities.vmware.com/thread/172548

ethernet0.present = "true"

ethernet0.checkMACAddress = "FALSE"

ethernet0.wakeOnPcktRcv = "false"

ethernet0.networkName = "Virtual Machine Network VLAN1"

ethernet0.addressType = "static"

ethernet0.address = "01:23:43:5a:e0:9f"

Как опознать ESX-хост, который заблокировал файл у VM

vmware-cmd -l # список VM-ок и их каталогов.

проверяем, заблокирован ли файл:

touch file.vmdk

. . . device or resource busy

To report the MAC address of the lock holder, run the command:

vmkfstools -D /vmfs/volumes/UUID/VMDIR/LOCKEDFILE.xxxx

tail /var/log/vmkernel # в лог попадает MAC-адрес хоста блокиратора

Apr 5 09:45:26 Hostname vmkernel: gen 532, mode 1, owner 45feb537-9c52009b-e812-00137266e200 mtime

00137266e200 - mac-adress service-console IP.

Блокировки на NFS-стораджах выглядят как .lck.####

Какая VM так же использует мой VMDK?

egrep -i DISKNAME.vmdk /vmfs/volumes/*/*/*.vmx

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=10051

HA 4.1 рестарт VM

При HA failover делается 5 попыток рестарта виртуальных машин:

R,2min,4min,8min,8min,8min # суммарно - 30 минут

8min таймаут задается в

/opt/vmware/aam/ha/vmwaremanager.pl line 37:

my $VM_RESTART_DELAY_MAX = 480; # 8min

затем

service mgmt-vmware restart

service vmware-vpxa restart

HA admition control

Host Failures Tolerated (1..4)

Размер слота = (Mem x CPU reservation максимальной VM

Считаем сколько слотов помещается в кластере, за вычетом заданного HostTolerate

Получаем максимальное число VM-ок, которое разрешается запустить в кластере

Advanced Configuration parameters for HA

Дефолтный размер HA-слота для машин с нулевой резервацией

das.vmCpuMinMHz = 256 MHz

das.vmMemoryMinMB = 256 Mb

Ограничиваем максимальный размер HA-слота для машин

с очень большой резервацией:

das.slotCpuInMHz

das.slotMemInMB

das.usedefaultisolationaddress = false (по умолчанию - default gw SC)

das.isolationaddressX (X = 1..10) дополнительные Isolation-адреса

das.failuredetectiontime = 15000 (рекомендуется увеличить до 20000 ms)

LUN маскинг в V4

esxcli corestorage claimrule add -r claimrule_ID -t type requiredoption -P MASK_PATH

Distributed switches

Хост хранит настройки от DS в локальном кеше, синхронизирует их каждые 5 мин

/etc/vmware/dvsdata.db

net-dvs -f /etc/vmware/dvsdata.db # дешифровка dvsdata кэша

таймаут на дисконфигурацию - 24 часа

C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\vpxd.cfg

<dvs><portReserveTimeout>mm</portReserveTimeout></dvs>

Оторванный DS можно удалить только когда от него отцеплены все VM

Генерация лог-бандла на ESX

vm-support

Внешний log-host на ESX в /etc/syslog.conf

*.* @IP.address.of.log.host

esxcfg-firewall -o 514,out,udp,syslog_traffic

Внешний log-host на ESXi

vicfg-syslog -s IP.address.of.log.host

Конфигур логинга и его ротации:

/etc/vmware/viconfig/vilogdefaults.xml

Прием логов снаружи на лог-хосте:

/etc/sysconfig/syslog

SYSLOGD_OPTIONS="- -m 0"

service syslog restart

iptables -I INPUT -i eth0 -p udp --dport 514 -j ACCEPT

и добавить его же в /etc/rc.local, или в /etc/sysconfig/iptables

Активация центрального логгинга на vMA

vilogger --server ESX_or_ESXi enable

vilogger enable

vilogger list

vsish

vsish --help # работа с конфигурационными данными ESX

cd - change working directory

ls - list nodes

pwd - print working directory

get - perform GET operation

cat - synonym for GET

set - perform SET operation

typeget - get type information

typels - list type-level nodes

loglevel - set debugging log level

exit,quit,q - quit shell

 * vSphere 4 * 


vCLI

vicfg-*

esxcli

vmkfstools

vifs

svmotion

resxtop

vmware-cmd

vihostupdate

"vSphere Command-Line Interface Installation and Reference Guide"

http://www.vmware.com/support/pubs

vicfg-nics --server ESXa --username root --password vmware -l

vicfg-nics --server vC1 --username vcadmin --password vmware -vihost ESXa -l

vMA(vmware managemet appliance) - настройки и использование

root - отключен, используем vi-admin

все команды начинаются с префикса vicfg-

esxcfg- - сохранен для backwardcompatibility

1. Активируем vi-fastpass (неинтерактивная авторизация)

sudo vifp addserver vCenter.Server.system

vifp listservers

vifpinit vCenter.Server.system # при новом логине команду повторить

vicfg-nics -l --vihost ESX.host

2. Альтернатива - сохранять временный session file

/usr/share/doc/vmware-vcli/samples/session/save_session.pl

save_session.pl --savesessionfile /tmp/vimsession --server server.name.or.address --username user_name --password password

vicfg-nics --sessionfile /tmp/vimsession -l

Установка 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 для установки в нее ESXi5

В vSphere 5.0 появился поддерживаемый тип гостевой: vSphere 4 и vSphere 5

При создании новой VM его невозможно выбрать, поэтому создаем VM под

Linux RedHat 5/64, а затем меняем на vSphere 5.

HW CPU и MMU для VM по умолчанию срезается. Чтобы хост пробрасывал в

свои VM аппаратную поддержку виртуализации процессора, добавить в файл

/etc/vmware/config

vhv.allow = "TRUE"

Прочие настройки почти без изменений по сравнению с V4:

VM Virtual Hardware Version 8

GuestOS: vSphere 5

VCPU: 2, RAM: 2Gb++

NIC: 2* e1000

SCSI: LSI Logic Parallel

PortGroup security: Promiscous mode=Accept

Чтобы во вложенном ESXi 5.0 работал FT:

replay.supported = "true"

replay.allowFT = "true"

replay.allowBTOnly = "true"

esxcli system settings advanced set -o /Migrate/VMotionStreamDisable -i 0

esxcfg-advcfg -s 0 /Migrate/VMotionStreamDisable

Настройка 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 Virtual 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

А чтобы во вложенном ESX работал FT - добавляем (неподдерживаемый) параметр

replay.logReadData = checksum

В 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

на самостоятельное чтение с диска

Добавить в .vmx

Естественно, дисковый вывод порождаемый SecondaryVM по-прежнему выполняется

только с PrimaryVM

Кажется, этот фокус возможен только на RDM, ибо на VMDK висит

исключительная блокировка Primary-ESX

replay.allowBTOnly = TRUE setting

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 * 


Активация unsupported в ESXi


SSH доступ к ESXi

http://wiki.vm4.ru/InstBase/ssh

Вообще-то unsupported доступен по умолчанию, но на всякий случай:

Клиентом: ESXi-host -- Configuration -- Software -- Advanced Setting

VMkernel.Boot.techSupportMode = Enable

В локальной консоли ESXi нажмите ALT-F1. Напечатайте unsupported.

Текста видно не будет, но вы войдете в режим Tech Support Mode и

появится запрос пароля root

vi /etc/inetd.conf

Расскомментировать #ssh

Перезапустите management services или inetd

/sbin/services.sh restart

kill -HUP `cat /var/run/inetd.pid`

Reboot'ить при этом ESXi не надо - ибо содержимое /etc/inetd.conf

после перезагрузки ресетится к дефолтному состоянию.

Но и описанная технология, гидная для ESXi 3.5 - в 4-ке как-то

не заработала

Что нового в 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 добавка голова

vmkfstools -K name.vmdk #? не проверено - сплющить нулевые блоки в тонком диске

Работа со стораджами

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 FC

esxcfg-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 Console

esxcfg-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-сервер 3.5

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.local

3. Restart the network

# service network restart

4. Restart the hostd daemon so that the VI client will get the updated hostname

# service mgmt-vmware restart

Scripted installation KS file for ESXi4.1

Origin:

http://www.kendrickcoleman.com/index.php?/Tech-Blog/esxi-41-kickstart-install-wip.html

########### cut here ###################

rootpw changeme

install url http://192.168.187.66/ESXi

autopart --firstdisk --overwritevmfs

reboot

#Network install type

network --bootproto=static --addvmportgroup=false --device=vmnic0 --ip=192.168.50.13 --netmask=255.255.255.0 --gateway=192.168.50.1 --nameserver=192.168.3.2 --hostname=ESXi3.FQDN

accepteula

%firstboot --unsupported --interpreter=busybox

#Assign VLAN to Management PortGroup

esxcfg-vswitch -v 50 -p 'Management Network' vSwitch0

#Add vMotion Portgroup to vSwitch0

esxcfg-vswitch -A vMotion vSwitch0

#Add pNIC vmnic6 to vSwitch0

esxcfg-vswitch -L vmnic6 vSwitch0

#Assign ip address to vMotion vmk1

esxcfg-vmknic -a -i 192.168.51.12 -n 255.255.255.0 -p vMotion

#Assign VLAN to vMotion PortGroup

esxcfg-vswitch -v 51 -p vMotion vSwitch0

sleep 10

#set vMotion to vmk

vim-cmd hostsvc/vmotion/vnic_set vmk1

#Set NIC order policy for port groups

vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic0 --nicorderpolicy-standby=vmnic6 vSwitch0 'Management Network'

vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic6 --nicorderpolicy-standby=vmnic0 vSwitch0 vMotion

#Add new vSwitch for IP Storage

esxcfg-vswitch -a vSwitch_IP-SAN

#Set MTU to 9000 for jumbo frames on vSwitch

esxcfg-vswitch -m 9000 vSwitch_IP-SAN

#Add Portgroup to vSwitch_IP-SAN

esxcfg-vswitch -A NetApp_FAS2020a vSwitch_IP-SAN

#Assign IP address to vmknic

esxcfg-vmknic -a -i 192.168.52.12 -n 255.255.255.0 -m 9000 NetApp_FAS2020a

#Add NICs to new vSwitch

esxcfg-vswitch -L vmnic2 vSwitch_IP-SAN

#Add NICs to new vSwitch

esxcfg-vswitch -L vmnic7 vSwitch_IP-SAN

vim-cmd hostsvc/net/refresh

sleep 10

#Change LoadBalance for Etherchannel - WORKS WHEN TYPED IN CLI BUT NOT WORKING IN SCRIPT FOR SOME REASON

vim-cmd hostsvc/net/vswitch_setpolicy --nicteaming-policy=loadbalance_ip vSwitch_IP-SAN

#Add NFS datastores

esxcfg-nas -a -o 192.168.52.101 -s /FAS2020a_Node1_NFS_A FAS2020a_Node1_NFS_A

esxcfg-nas -a -o 192.168.52.101 -s /FAS2020a_Node1_NFS_B FAS2020a_Node1_NFS_B

esxcfg-nas -a -o 192.168.52.102 -s /FAS2020a_Node2_NFS_A FAS2020a_Node2_NFS_A

#Adding the FT Network

esxcfg-vswitch -a vSwitch_FT

esxcfg-vswitch -A Fault_Tolerance vSwitch_FT

esxcfg-vswitch -L vmnic4 vSwitch_FT

esxcfg-vswitch -L vmnic9 vSwitch_FT

esxcfg-vmknic -a -i 192.168.55.12 -n 255.255.255.0 -p Fault_Tolerance

vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic4 --nicorderpolicy-standby=vmnic9 vSwitch_FT Fault_Tolerance

vim-cmd hostsvc/advopt/update FT.Vmknic string vmk3

vim-cmd hostsvc/net/refresh

#Set DNS

vim-cmd hostsvc/net/dns_set --ip-addresses=192.168.3.23,192.168.3.2

# Set NFS advanced Configuration Settings

esxcfg-advcfg -s 30 /Net/TcpipHeapSize

esxcfg-advcfg -s 120 /Net/TcpipHeapMax

esxcfg-advcfg -s 10 /NFS/HeartbeatMaxFailures

esxcfg-advcfg -s 12 /NFS/HeartbeatFrequency

esxcfg-advcfg -s 5 /NFS/HeartbeatTimeout

esxcfg-advcfg -s 64 /NFS/MaxVolumes

# NTP time config - NOT WORKING!!

echo "Configuring NTP"

echo restrict default kod nomodify notrap noquerynopeer > /etc/ntp.conf

echo restrict 127.0.0.1 >> /etc/ntp.conf

echo server 0.vmware.pool.ntp.org >> /etc/ntp.conf

echo server 2.vmware.pool.net.org >> /etc/ntp.conf

echo driftfile /var/lib/ntp/drift >> /etc/ntp.conf

/sbin/chkconfig --level 345 ntpd on

/etc/init.d/ntpd stop

/etc/init.d/ntpd start

#enable SSH TechSupportMode - shouldn't use this, was just a test

vim-cmd hostsvc/enable_remote_tsm

vim-cmd hostsvc/start_remote_tsm

vim-cmd hostsvc/net/refresh

#grep ^admins: /etc/group > /dev/null || groupadd admins

#useradd -g admins -c LocalESXAccount LocalESX

#echo mypassword | passwd --stdin LocalESX

########### cut here ###################



Популярность:

94, Last-modified: Sat, 16 Jun 2012 08:00:49 GMT

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования