среда, 23 ноября 2011 г.

VCP certificate

Периодически повторяются вопросы про бумажный сертификат после сдачи теста VCP.

К примеру -
21 июля  я сдавал тест VCP5.
8 сентября  узнал что сдал.

22 ноября пришел сертификат.

Но я сдавал бета-версию теста.

В обычном случае - до Москвы из штатов доходит за месяц-полтора, по моему опыту.

Кстати, лицензия на Workstation по прежнему прилагается - мне пришла электронным письмом.

multiple datastores multiple disks VM


Из переписки:

Добрый день.
Вчера столкнулся с одним, весьма неприятным глюком vSphere 4.1, которым, если вы не против, хотел бы поделиться. (хотя, может вы об этом уже в курсе..))
При создании виртуалки с несколькими дисками, первый диск имеет название аналогичное названию виртуалки, допустим - "vmname.vmdk", а к остальным приписывается порядковый номер - "vmname_1.vmdk", "vmname_2.vmdk".
Допустим у нас есть виртуальная машина с тремя дисками. Мы решили добавить ещё один, предположительно "vmname_3.vmdk", а т.к. на дефолтном датасторе ВМ места под этот диск нет, то мы решили этот диск положить на другой датастор.
На этом датасторе создается папка названная именем вашей ВМ в которую помещается новый диск.
Теперь, мы решили переместить этот диск в другую папку, переименовать, или удалить вручную с датастора (причины могут быть разные, например после переименования ВМ, решили переименовать папки на датасторе).
Соответственно создаем новую папку, и копируем туда диск ("vmname_3.vmdk"). После этого заходим в настройки вм и удаляем этот третий диск ("vmname_3.vmdk"), чтобы добавить его по новому пути.
А вот тут начинается самое интересное!
Т.к. на новом датасторе лежит только третий диск, то, вопреки ожиданиям, его название не "vmname_3.vmdk", а "vmname.vmdk", которое, соответственно, совпадает с первым диском.
Казалось бы мелочь, но вся прелесть в том, что при удалении третьего диска в настройках ВМ (удалении файлов диска с датастора), т.к. ESX не находит его на датасторе (мы его перенесли/удалили вручную), он, ни о чем не предупреждая, удаляет первый диск, т.к. их имена совпадают!

Так что будьте аккуратнее.

P.S. Все выше сказанное относится к vSphere 4.1. На vSphere 5 при удалении диска в настройках ВМ выдается ошибка, что такого диска нет.

thx Дмитрий

понедельник, 21 ноября 2011 г.

правильный перенос физических серверов в ВМ–P2V

 

В комментариях к посту про средства, помогающие при P2V, мне подсказали интересный набор скриптов для миграции Windows-серверов – VMware P2V Converter Best Practices. В этой инструкции, кроме инструкции, собственно, есть еще (видимо) самописные скрипты для упрощения процесса.

 

Ну и для кучи чтобы все ссылки были в одном месте:

HP Proliant Support Pack Cleaner

Scripted Removal Of Non-present Hardware After A P2V.

Dell – Automated P2V cleanup remove & uninstall Dell PpenManage Broadcom/Intel drivers.

суббота, 19 ноября 2011 г.

vCSA

 

А вот vCenter Virtual Appliance не знает об отмене перевода часов. И в его базе часовых поясов времени Российского времени Москва+1 просто нет %-)

Поставил Азербайджан.

Наверное, этот SUSE можно допилить, но неохота тратить время на разбирательства.

View WinXP customizing problem

 

Памятка – если VMware View не может ввести WinXP в домен Win2008 (или ввести может но подключиться не дает), то надо поставить спецпатч – http://support.microsoft.com/kb/944043.

P2V cleanUp

 

К вопросу о доводке до ума виртуальных машин, полученных после P2V миграции физических серверов.

Проблема в том, что при переносе средствами VMware Converter, Acronis Universal Restore и прочими утилитами с подобным функционалом в полученной при их помощи виртуальной машине остается определенное количество ненужного ПО и настроек. Это драйверы физического серверного железа, агенты мониторинга, само по себе упоминание предыдущего набора железа и т.п. В ВМ они уже не нужны, и даже противопоказаны.

Ранее я уже писал о том, что существуют утилиты, помогающие в некоторых случаях автоматизировать процесс причесывания таких вещей. Это HP Proliant Support Pack Cleaner и Scripted Removal Of Non-present Hardware After A P2V. Сегодня углядел еще один самописный скрипт, теперь для серверов Dell – Automated P2V cleanup remove & uninstall Dell PpenManage Broadcom/Intel drivers.

пятница, 18 ноября 2011 г.

Storage Best Practice List


Самая “мутная” тема при обсуждении как правильно сайзить и настраивать виртуальную инфраструктуру – это тема касаемо систем хранения данных.
Полезным может оказаться подборка рекомендаций от самых разных производителей систем хранения именно для vSphere – Storage Best Practices from different vendors on VMware vSphere.
HP, EMC, NetApp, Dell, Hitachi, IBM.

UPD. мне тут подсказывают что начинать перечисление производителей СХД надо с NetApp [ тут такой троллфейс надо:-) ] , и что есть переведенные рекомендации:
Вот тут - перевод на русский упомянутого у тебя в посте  Best Practices NetApp
 
Может быть полезно.
 
ЗЫ. Там же есть и про VMware View, и про Citrix Server/Desktop

Move vCenter DB to new SQL Server

 

Оказывается у VMware есть прямо статья базы знаний – по переносу базы vCenter с бесплатного SQL Express на коммерческую версию MS SQL – Migrating the vCenter Server 4.x database from SQL Express 2005 to SQL Server 2008.

Плюс к тому, пара дополнительных хинтов тут – Expert tips for moving vCenter to a new SQL Server.

omg


Такое я вижу впервые:

1с и виртуализация

 

Есть вещи, которые не меняются.

Позабавило в очередной раз, углядел тут.

 

Чисто поулыбаться, 1С ники млин ...
Мне:
Ниже описаны некоторые требования, которые мы считаем целесообразным предъявить к конфигурации новых серверов и ПО на них:
1. SQL сервер должен стоять на железке, т.е. мы хотим, что бы он крутился на реальном сервере, а не на виртуальном.
2. Предпочтительная версия сиквела - SQL 2008.
3. SQL должен использовать максимально возможное количество оперативки на своем сервере.
4. На том диске, где будут храниться сиквельные базы, параметры форматирования диска должны быть следующими: размер сектора = 32 Кб
5. Файлы баз и файлы логов транзакций должны находится на персональных массивах (т.е. кроме лога транзакций на его массив ничего не должно писаться, аналогично с массивом файлов базы)
6. Сервер приложений 1С и SQL сервер должны стоять на разных физических серверах
7. Операционки и под сервер приложений 1С и под сиквел должны быть 64-битными
8. Не менее 500 гигов дискового пространства необходимо выделить под базы 1С 8 на том сервере, где будет SQL.
9. Отдельно 500 гигов под бэкапы.

 

Я:
Все понятно, но для обеспечения отказоустойчивости машины должны быть виртуальными.
Количество оперативной памяти и процессоров под задачу будут выделены вполне адекватные.
Так, сервер SQL получит 60 Гигабайт оперативной памяти и 16 ядер, сервера 1С тоже.
Физически машины под сервера 1С и SQL будут разными.
Терять производительность дисковой подсистемы, мне кажется не целесообразным, для каждой
виртуальной машины будет выделен свой LUN с единомоментным быстродействием 10 15K SAS дисков в RAID 10, суммарным
объемом кэш памяти 2ГБ и мощностью двух современных внешних RAID контроллеров.
При необходимости система расширяется до 64-х дисков.
Те рекомендации о построении дисковой подсистемы под SQL, которые Вы мне приводите рассчитаны
либо на очень большие базы (не 1С прошу заметить) либо единственный сервер с внутренним дисковым массивом.
Эти рекомендации не учитывают использование больших отказоустойчивых систем, и сетей SAN поскольку,
для них нельзя или очень трудно составить общие рекомендации. В общем случае разбиение внешней дисковой подсистемы на отдельные
множественные RAID, сильно снижают общую пиковую производительность, такие вещи используют, если во внешней системе не хватает быстродействия
и тогда ставят вторую или превышено максимальное количество дисков в RAID группе, чего в данной компании и на данных задачах мы еще долго не достигнем.
Накладные расходы на виртуализацию составляют в современных системах всего несколько процентов от производительности и ими вполне можно пренебречь.
Общая производительность системы рассчитана мною с запасом на 3 года, поэтому сейчас мы не сможем создать в рабочей обстановке сколько
нибудь заметной нагрузки на данную систему.
[немного пропущено]
А уж хранить резервные копии на тех же серверах и массивах это вообще вне моего разумения, для этого есть Symantec Backup EXEC с его
агентами, стриммер и внешняя дисковая подсистема.
Писал я это глядя на 2 16"ядерных" сервера с 64ГБ оперативки и внешней SAS to Fiber СХД в кластере под Win 2008 Ent.
В общем угораю я с 1С ников ... дальше еще скажут клиента 8-ки ставить локально на 200+ пользователей ибо терминалы грех ... абзац ...

vmfs locked

 

Памятка:

 

если vmfs раздел оказался заблокирован (появляется сообщение вида esx.problem.vmfs.error.volume.is.locked), то должна помочь команда

vmkfstools -B --breaklock device_path

 

kb.vmware.com/kb/2008210

VMware View клиент под Linux c поддержкой PCoIP

Из переписки

Добрый день!
Помнится была в блоге "записочка" с ссылкой на linux2aix на статейку по установке VMware View клиента от HP с поддержкой PCoIP и пробросом USB под Linux. И вот недавно я решил покрутить View 5 в целях самообразования (заодно руководству показать возможности).

В качестве клиентских ПК использовались довольно старенькие компики с Дебианом на борту. Решил набросать статейку и поделиться ей (авось кому-то пригодится).

Сразу хотел бы предупредить, что данное решение не является официальным, мало того, мне неизвестно насколько оно легально, т.к. в нем используются бинарные пакеты от HP которые официально предназначены для тонких клиентов HP ThinPro.

Итак, всех, кого не смущает мое предупреждение, прошу далее.
Предполагается, мы уже имеем:
  • установленный и настроенный vCenter,
  • один или несколько ESXi серверов,
  • сервер VMware View Connection Server

    (подробнее о настройке необходимых для View компонентов можно прочитать здесь или здесь, ну или тут. Инсталляция версий 4.x и 5 идентичны).
В качестве клиентских рабочих станций у меня выступают несколько стареньких ПК (Celeron 1.7/128MB/20Gb/100Mbit) с ОС Debian 6.0.3 i386 (хотя можно использовать любой линукс, но предпочтительно использовать дебианоподобные дистрибутивы) в минимальной инсталляции.

Я подозреваю что можно использовать и более старые ПК (запускал в виртуальной машине с лимитом частоты процессора в 400Mhz и 64Mb RAM, но производительность современного серверного железа с физическим 7-10 летней давности нельзя), а под рукой не оказалось таких для эксперимента.

Итак, приступим к настройке клиентской рабочей станции.
Для начала устанавливаем Debian 6.0.3 в минимальной конфигурации, на последнем этапе выбрав помимо стандартных системных утилит только ssh сервер (для удаленного управление рабочей станцией).
Далее ставим "иксы" и дополнительные зависимости VMware View Client:
root@viewclient:~# aptitude install xinit libqtgui4 libcurl3 libpcsclite1 libsamplerate0 libasound2 libgtk2.0-0 sudo 
 
А теперь приступаем к установке самого клиента. Скачиваем необходимые пакеты с ftp сервера HP:
root@viewclient:~# wget ftp://ftp.hp.com/pub/tcdebian/pool/thinpro33/non-free/hptc-manticore_3.2.1_i386.deb 
root@viewclient:~# wget ftp://ftp.hp.com/pub/tcdebian/pool/thinpro32/main/hptc-rdesktop_1.6.0-1.35_i386.deb 
root@viewclient:~# wget ftp://ftp.hp.com/pub/tcdebian/pool/thinpro33/non-free/hptc-sudo-edit_0.1_i386.deb 
root@viewclient:~# wget ftp://ftp.hp.com/pub/tcdebian/pool/thinpro33/non-free/vmware-view-client_4.6.0-366101-2_i386.deb 

К сожалению на данный момент нет пакетов для 5-й версии, но клиент версии 4.6 может свободно работать с сервером 5-й версии, за исключением новых фич, которые доступны в VMware View Client 5.0.

Я думаю вы заметили что пакет hptc-rdesktop скачивается не из той директории, в которой расположены остальные файлы, хоть он там и есть, да еще и более новой версии.

Дело в том, что новая версия собрана с поддержкой библиотеки libao2, но в репозитарии Debian Squeezze имеется только libao4.

libao2 доступен в Debian Lenny. Если в вашем дистрибутиве есть libao2, то можно использовать более свежий пакет hptc-rdesktop.

Инсталлируем их в следующей последовательности:
root@viewclient:~# dpkg -i hptc-manticore_3.2.1_i386.deb
root@viewclient:~# dpkg -i hptc-rdesktop_1.6.0-1.35_i386.deb
root@viewclient:~# dpkg -i hptc-sudo-edit_0.1_i386.deb
root@viewclient:~# dpkg -i vmware-view-client_4.6.0-366101-2_i386.deb 

Создаем симлинк, дял корректной работы проброса USB:
root@viewclient:~# ln -s /usr/lib/vmware/vmware-view-usb /etc/vmware/usb.link

И пробуем запустить клиент следующей командой:
root@viewclient:~# vmware-view 

Если запуск произошел без ошибок можно открыть первую бутылку пива :)

Теперь необходимо привести все это добро в удобоваримый для конечного пользователя вид. В процессе установки ОС был создан пользователь view, под которым будет запускаться VMware View Client.

Для начала настроим автоматический запуск "иксов" при загрузке системы под пользователем view.
Для этого редактируем файл rc.local добавив перед заключительной строкой exit  следующую строчку:
su - view -c startx 

Перезагружаемся что бы удостовериться что "иксы" стартовали успешно.
Если все ок, то последним этапом настраиваем автоматический старт VMware View Client при старте "иксов" и выключение ПК после его закрытия.
Для этого в домашней директории пользователя создаем файл .xinitrc следующего содержания:
. /usr/local/bin/vmwareview.sh

Создаем скрипт vmwareview.sh:
#!/bin/sh /usr/bin/vmware-view && sudo /sbin/shutdown -hP now 

И редактируем файл sudoers, разрешив пользователю view выключать ПК:
view ALL = NOPASSWD: /sbin/shutdown -hP now 

Еще раз перегружаемся и убеждаемся что все работает как запланировано.

Открываем вторую бутылку пива :)

На этом пожалуй все. В данной статье я рассмотрел только базовую настройку ОС клиентского ПК для запуска VMware View Client под Linux, но ее достаточно для комфортной работы.

P.S. Сферой применение подобной схемы может быть тестовое внедрение VDI на базе VMware View без закупки дополнительного оборудования (тонких клиентов), использование в образовательных целях (изучение VMware View) и т.д.

Thx to m0ps

суббота, 12 ноября 2011 г.

View 5

 

Интересная инфа про обновления максимумов для View 5 – A Review of VMware View 5.0 Limits and Maximums.

Вкратце:

  • если использовать связанные клоны, то в кластере не может быть больше 8 серверов (как и раньше);
  • нежесткая рекомендация по числу vCPU на ядро – теперь 16;
  • в одном пуле десктопов до 1000 десктопов, в том числе для Linked Clones;
  • если СХД поддерживает VAAI, то на одно хранилище нормально положить до 140 ВМ. Без VAAI – до 64. С NFS непонятно что;
  • до 2000 ВМ на vCenter;
  • 512 ВМ на сервер;
  • 1 connection server с туннелированием клиентских сессий обслужит до 2000 подключений.

среда, 9 ноября 2011 г.

VMUGUA


Внезапно проскочила новость:



Коллеги, добрый день!

Мы с Костей Введенским решили продолжить хорошую традицию, только теперь уже с блекджеком и презентациями
Потому рад сообщить, что регистрация на первую встречу Kiev VMware User Group уже открыта!

Всё это будет происходить целый день 25 ноября в в конференц зале «Арена Плаза» (ул. Красноармейская /Бассейная д.1-3/2 А, Бизнес-центр «Арена»).

Все подробности и анонсы о предстоящем событии и участии в нём будут публиковаться в блоге VMUGUA. Следите за обновлениями!

Презентации формируются, демонстрации подвисают, вообщем, работа кипит... Так что приходите - будет интересно

воскресенье, 6 ноября 2011 г.

Guest level disk mirroring

 

Интересный пост - Surviving SAN failure – Revisited (vSphere).

Можно взять ВМ, подцепить к ней второй диск (второй комплект дисков), и настроить на этот второй диск зеркалирование с исходного средствами гостя.

Если второй поместить на другое хранилище, то мы получим защиту от сбоя СХД.

В посте по ссылке инструкция по реализации такой схемы для Windows 2003. Так же, в официальной документации по vSphere 5 есть упоминание – что необходимо настроить на стороне vSphere чтобы такая фича заработала - Set Up Dynamic Disk Mirroring.

Ну а исходно я углядел пост на yellowbricks, где сожалелось о том, что такая конфигурация не поддерживается вместе с VMware Fault Tolerance. Было бы интересно, конечно, в некоторых сценариях.

четверг, 3 ноября 2011 г.

Memory Overcommitment, good or bad?


Я у себя не писал, но недавно VMware опубликовала документ “Сравнение производительности vSphere и Hyper-V”.
Заказчик исследования заслуженно победил Улыбка.
Лично я особо не интересовался этим документом, по нескольким причинам.
Во-первых любые сравнения обречены на холивор, а холиворы утомляют.
Во-вторых чтобы понять а какие выводы-то из результатов можно сделать – надо читать, думать, перечитывать. Это отнимает время и силы, и раз передо мной не стоит задача продажи vSphere вместо Hyper-V – я с чистой совестью этот документ пропустил.

Однако на русском читать проще, поэтому я с удовольствием ознакомился с мнением Алекса Кибкало по поводу данного сравнения.
Небольшое отступление.
Лично мне в данном посте (впрочем, то же верно и для остальных таких записей) не нравится стиль и маркетинговое дерьмо в сторону VMware, подающееся в противовес маркетинговому дерьму со стороны VMware; но ради технических вещей можно потерпеть. Позволю себе заметить, что как-то более человечно позволить загнивающей VMware тихо сдохнуть под неумолимой поступью великой компании Майкрософт и ее Настоящего Гипервизора™, чем публично кричать “А она вот вот сдохнет, ахххаахаха!” не первый год. Антон, это не ты непрерывно там троллишь? ;-) Но к делу.
Так вот, вот ссылка на статью – Сравнение производительности гипервизоров. Маркетинговая агония.
Довольно значительная доля смысла исходного сравнения и данного комментария крутится вокруг Memory Overcommitment, кто не до конца в теме что VMware имеет под этим в виду может быть интересно ознакомиться со статьей Memory Management.
Если очень упростить, позиция VMware:
У нас есть дофига техник уплотнения памяти, они круто работают и дают вам выгоду, мы берем за это денег.
Позиция Microsoft:
У нас это менее развито, но это никому не нужно.

Что-то мне подсказывает, что среди многомиллионной армии потребителей решений виртуализации есть много получающих эту выгоду, и много неиспользующих эти решения.

Я очень надеюсь на ту мою аудиторию, которая привыкла сама выбирать – надо ей что-то или не надо, а не полагаться на мантры продажников. Для вас приведенная здесь информация поможет с выбором.

среда, 2 ноября 2011 г.

Storage vMotion of a Virtualized SQL Server Database

 

К вопросу о влиянии Storage vMotion на производительность – официальный документ с тестами Storage vMotion of a Virtualized SQL Server Database.

Выводы:

There are two main factors that can influence the svMotion of virtual disks in a vSphere virtual infrastructure: I/O access patterns on the virtual disk that has to be migrated and the underlying storage infrastructure. While it is hard to expect change to the former, careful considerations given to the latter can help in achieving a better
svMotion experience and in minimizing impact to the applications that run in a virtual infrastructure where the VM storage is migrated. Based on the knowledge gained during the tests, the following best practices can help while planning an infrastructure that is capable of allowing live migration of VM storage:

1. Random access patterns on virtual disks interfere with the sequential access of svMotion and negatively affect the I/O throughput of svMotion. This can increase migration time by a significant value. If there is a need to
migrate such virtual disks, plan to schedule the migration during periods when there is low or no I/O activity
on the virtual disk.

2. Sequential access patterns of a VM on a VM’s virtual disk (for example, writes to log files in a virtual disk) generally don’t affect the sequential access pattern of svMotion. Even with more than one sequential stream on the virtual disk, most modern arrays are capable of utilizing the I/O prefetching logic in the arrays’
firmware to improve the I/O performance. Such virtual disks could be migrated even when there is some I/O activity on them.

 

However, if the VM’s I/O access to its virtual disk is significant, then the svMotion traffic will have to contend with the VM’s access for the I/O bandwidth. This could reduce the throughput for both the traffic flows. In such
situations, it is better to schedule svMotion during periods when the existing I/O load level reduces.

1. svMotion moves data blocks in 64KB chunks. Any I/O operation from the VM that uses a small request size might see higher access latency due to the large sized blocks of svMotion traffic. If the application in the VM is very sensitive to an increase in the access latency, consider scheduling svMotion during periods of low or no
I/O activity on the virtual disk.

2. Most applications that rely on random access patterns to fetch data from a physical storage media may not benefit from cache in the storage array. In such situations, administrators tend to configure (if permissible) a significant chunk of array cache for write access patterns. This may limit the amount of data prefetched by
the array for svMotion which can potentially impact the disk migration time. Having enough buffer space to
hold the prefetched data for svMotion may help in reducing the disk migration time.

3. In certain situations such as the experiments discussed in this paper, moving a virtual disk from an array with
newer hardware, firmware, and larger cache to older arrays could be faster than the other way around. 4. Faster storage media such as solid state disks (SSDs) provide a faster access to the smaller blocks even in the
presence of requests for larger blocks. By utilizing the services of SSDs (for example, storage pools built on
SSDs and SSD-based secondary cache) in the array, the impact on the performance of the application can be reduced when migrating the application’s disks.

PowerCLI addon


Немного новостей про PowerCLI:
Во-первых, ПаверСиЭлАй и распределенные коммутаторы. В PowerCLI нет команд по работе с dvSwitch.
Однако, они появились, пока экспериментально – http://labs.vmware.com/flings/vdspowercli.
Вот тут - vSphere Distributed Switch PowerCLI cmdlets - хороший короткий пост что там есть и как пользоваться.

Забавно, что есть несколько сторонних решений той же проблемы – PowerCLI + Distributed switch.

И во-вторых.
То, что использовал я (когда возникла нужда массово создавать и настраивать распределенные коммутаторы скриптом) – решение от авторов много раз упомянутой и крайне полезной книги VMware vSphere PowerCLI Reference: Automating vSphere Administration.
И я как-то только сейчас обнаружил на их сайте выложенный модуль с их собственными командлетами для vSphere – PowerCLI Book: Download Scripts, Functions and Modules.
Загружаем архив, распаковываем в какой-то из путей из переменной $env:PSModulePath.
И в профиль добавим команду
Import-Module PowerCLIBook
И, в общем-то, все.
Теперь команда
Get-Command -Module PowerCLIBook
отобразит список командлетов из набора PowerCLI Book.

PS C:\> Get-Command -Module PowerCLIBook

CommandType     Name                                                Definition
-----------     ----                                                ----------
Function        Add-DistributedSwitchVMHost                         ...
Function        Backup-MsSqlDatabase                                ...
Function        Backup-VcConfig                                     ...
Function        Check-Service                                       ...
Function        Connect-VMHost                                      ...
Function        Delete-HardDisk                                     ...
Filter          Escape-MetaCharacters                               ...
Function        Evacuate-VMHost                                     ...
Function        Export-Folders                                      ...
Function        Export-PermissionsToCSV                             ...
Function        Export-VMLocation                                   ...
Function        Export-Xls                                          ...
Function        Get-ADUserObject                                    ...
Function        Get-AggregationJobs                                 ...
Function        Get-ClusterSummary                                  ...
Function        Get-DistributedSwitch                               ...
Function        Get-DistributedSwitchCandidate                      ...
Function        Get-DistributedSwitchNetworkAdapter                 ...
Function        Get-DistributedSwitchPortGroup                      ...
Function        Get-DistributedSwitchPrivateVLAN                    ...
Filter          Get-FolderPath                                      ...
Function        Get-FolderStructure                                 process {...
Function        Get-IPPool                                          ...
Function        Get-LicenseKey                                      process {...
Function        Get-MissingPortgroups                               ...
Function        Get-Network                                         ...
Function        Get-OvfDetails                                      ...
Function        Get-SnapshotCreator                                 ...
Function        Get-SnapshotExtra                                   param($snap)...
Function        Get-SnapshotTree                                    ...
Function        Get-StatInstances                                   ...
Function        Get-StatReference                                   begin {...
Function        Get-StatTypeDetail                                  ...
Function        Get-vAppIPAssignment                                ...
Function        Get-vAppProductInfo                                 ...
Function        Get-vAppStartOrder                                  ...
Function        Get-vCenterScheduledTask                            ...
Filter          Get-VILocation                                      ...
Function        Get-VIPath                                          ...
Function        Get-VMDiskMapping                                   ...
Function        Get-VMGuestDiskUsage                                ...
Function        Get-VMHostPciDevice                                 ...
Function        Get-VMHostPnic                                      ...
Function        Import-Folders                                       ...
Function        Import-Permissions                                  ...
Function        Import-VMLocation                                   ...
Function        Move-Datastore                                      ...
Function        New-DistributedSwitch                               ...
Function        New-DistributedSwitchNetworkAdapter                 ...
Function        New-DistributedSwitchPortGroup                      ...
Function        New-DistributedSwitchPrivateVLAN                    ...
Filter          New-FolderStructure                                 ...
Function        New-IpPool                                          ...
Function        New-RegKey                                          param($RegLocation, $RegKey, $RegValue)...
Function        New-VMHostNetworkAdapter                            ...
Function        Register-VMX                                        ...
Function        Remove-DistributedSwitch                            ...
Function        Remove-DistributedSwitchNetworkAdapter              ...
Function        Remove-DistributedSwitchPortGroup                   ...
Function        Remove-DistributedSwitchPrivateVLAN                 ...
Function        Remove-DistributedSwitchVMHost                      ...
Function        Rename-LocalUser                                    ...
Function        Restore-MsSqlDatabase                               ...
Function        Set-DistributedSwitch                               ...
Function        Set-DistributedSwitchNetworkAdapter                 ...
Function        Set-DistributedSwitchPortGroup                      ...
Function        Set-DistributedSwitchVMHost                         ...
Function        Set-DPM                                             ...
Function        Set-IPPool                                          ...
Function        Set-LicenseKey                                      ...
Function        Set-StatIntervalLevel                               ...
Function        Set-ThinDisk                                        ...
Function        Set-vAppIPAssignment                                ...
Function        Set-vAppProductInfo                                 ...
Function        Set-vAppStartOrder                                  ...
Function        Set-VMAdvancedConfiguration                          ...
Function        Set-VMOffline                                       ...
Function        Update-TemplateHardware                             ...
Function        Wait-VMGuest                                        ...

Рекомендую.


вторник, 1 ноября 2011 г.

Data recovery after VMFS lose

 

Имел за последние две недели пару интересных бесед, на животрепещущую тему “да, админ не профессионал, бекапы не делал, но как бы теперь достать данные с порушенного VMFS?”.

 

В общем-то, оба раза это были не столько вопросы, сколько со мной делились опытом.

 

Случай один, представитель компании, занимающейся восстановлением данных.

 

К сожалению, законченной инструкции не получается, но полезным оказаться может.

Итак, ко мне в скайп постучались с вопросом восстановления данных с убитого раздела VMFS.

Я начал с риторического вопроса про бекап – я, в общем-то понимаю, что в таком контексте это звучит как издевка, но спросить то надо.

Продолжил я ссылкой на свою подборку средств доступа к проблемному vmfs-хранилищу и починке после случайного удаления\форматирования.

Не помогло.

Тогда я расписался в бессилии помочь.

Однако, спустя время, со мной снова связались, уже не с целью узнать, а с целью научить:

kirill: решил вопрос, данные поднял.
на уровне шестнадцатиричного кода все решал

kirill: нашел раздел NTFS
хорошо, хоть NTFS был

kirill: и склеивал по таблице его
95% целых данных получилось!

mikhail.mikheev: круто. чем пользовались?

kirill: winhex )
я искал только файловую систему самой вир.машины
это 16-ричный редактор, незаменимая вещь в data reсovery
довольно много функций

mikhail.mikheev: а как выглядит начало ntfs вы откуда знали?
kirill: любой диск с NTFS можно открыть и посмотреть
mikhail.mikheev: логично
kirill: обычно он на таких дисказ в 63 секторе
mikhail.mikheev: просто вдруг там какая автоматизация есть такого поиска
kirill: автоматом можно пробовать искать, но результат будет не очень

kirill: я вообще занимаюсь восстановлением данных с любых цифровых носителей

kirill: так что если что - обращайтесь
mikhail.mikheev: спасибо, буду иметь в виду

kirill: icanrc.ru
kirill: немного саморекламы)))

mikhail.mikheev: вот вам winhex помог найти начало vmdk файла, по сути, так ведь?
kirill: помог
но он был битый
mikhail.mikheev: и вы небось слили образ как-то отдельно
mikhail.mikheev: и потом обычным образом чинили?
kirill: именно
mikhail.mikheev: а как слили образ?
kirill: в файл
mikhail.mikheev: winhex это умеет в смысле?
kirill: да
mikhail.mikheev: а конец партиции тоже по каким то признакам можно найти?
kirill: данном случае я его не нашел
вообще можно, но конец раздела сложнее найти, чем скажем окончании записи MFT

mikhail.mikheev: а что такое mft?
kirill: таблица размещения файлов
mikhail.mikheev: в смысле тоже структура ntfs?
kirill: да, часть его
mikhail.mikheev: и что с ней можно сделать потом?
kirill: составить карту занятых секторов
склеить
сделать клон и слить данные
mikhail.mikheev: а чем это делается?
kirill: winhex)))
mikhail.mikheev: ))

а где нибудь почитать про такие манипуляции можно?
или это сакральные тайны?
kirill: вообще 90 - опыт
10% документация по NTFS
можно поискать
как она устроена
но никто не пишет как склеить, ка скопировать, определить и т д

http://icanrc.ru/

 

Вторым было письмо – простое письмо о той же проблеме – восстановления данных с порушенного VMFS.

Тут идея была еще проще – взяли R-Studeio, натравили на диск, достали большую часть данных.

 

После этого письма я не утерпел и попробовал:

  • создал iSCSI LUN
  • отформатировал в VMFS
  • создал на нем ВМ с Windows, создал на ее диске файл wordpad
  • удалил сначала ВМ – delete from disk
  • затем удалил весь VMFS

 

После этого я подмонтировал этот же iSCSI LUN к своему ноутбуку, и натравил на диск R-Studio.

Час с небольшим анализировался 15-гигабайтный LUN, после чего программа смогла восстановить тот мой текстовый файл.

 

VMFS используется как файловая система для адресации и управления блокировками. Данные гостевых файловых систем лежат как таковые – утилиты восстановления данных способны их обнаружить не зная что такое VMFS.