Автор Тема: Бэкап VMWare с помощью MKSBackup  (Прочитано 60183 раз)

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Бэкап VMWare с помощью MKSBackup
« : 19 Декабрь 2013, 00:11:31 »
Я понимаю, что форум для администраторов Windows, но раз на сайте есть раздел о vmware, может быть и форум для него открыть?

Меня в настоящее время интересует 3 момента в ESXi:
1. Бэкап хостовой системы ESXi, у меня она флешке. Например раз в сутки отправлять на почту или на фтп.
2. Бэкап работающих VM, средствами самой ESXi не совсем удобно.
3. Перенос VM из Workstation в ESXi. Перенести просто, но файлы VM и файлы конфиграции для ESXi, лежат в разных папках. Где вообще ESXi хранит информацию о том какие VM в нее добавлены?  Можно ли добавлять VM через CLI?
« Последнее редактирование: 23 Январь 2014, 13:34:29 от itpro »

itpro

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 444
  • Репутация: 204
    • Просмотр профиля
Re: VMWare
« Ответ #1 : 19 Декабрь 2013, 08:16:32 »
Ок, вы правы, заведем для вопросов по vmware отдельный подраздел.  :)
Касательно ваших вопросов, проясните сначала в какой конфигурации вы сейчас работаете.
Это отдельно стоящий ESXi или все таки ферма с VMware vCenter?
Файлы виртуальных машин хранятся на локальных дисках или на внешнем хранилище или СХД?

1. По поводу бэкапа конфигурации хостового сервера ESXi особо не парюсь - т.к. его установка занимает несколько минут, и в ферме с типовыми серверами его настройка к стандартному виду проводится простым применением  нужного профиля из Host Profiles
2. Чем конкретно вас не устраивает бэкап средствами самого ESXi ?
3. Вообще-то файлы конфигураций виртуальной машины и ее диски лежат обычно в одном каталоге.. Или я не понял ваш вопрос
4. Насчет команды добавления VM через CLI - не знаю, просто не сталкивался. Обычно добавляю виртуальные машины с помощью функции Add to inventory (контекстное меню у vm[ файла конфигурации) при просмотре содержимого Datastor-а

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #2 : 19 Декабрь 2013, 12:04:42 »
Буквально пару слов о том что есть и то что хочется..
Сейчас стоит всего один сервер Windows 2008R2 Standart, на нем крутится VMWare Workstation 8.0.
один винт под систему + samba хранилище на втором разделе
один винт под VM: CRM, Asterisk, Web-сервера, Sberbank agent, MikroTik x86, Dude, .. и прочие глупости
два винта в программном зеркале (сделанном виндой) - бэкап всего выше написанного хозяйства.
все вроде стабильно работает..
проблема только в том, что Wi-Fi роутер Dlink DES-300 постоянно виснет.. Хочу в MikroTik прокинуть PCI, но мать не поддерживает VT-d.

Мне в наследство от наших админов достался сервак с VT-d, есть желание поставить гипервизор и сделать все как у людей.

Обо мне: Я не админ, работаю Исполнительным директором, в компании Интернет провайдера. В составе сотрудников есть администраторы, фермы серверов (в дата-центрах разных) и т.д. Но я устал с ними боротся, то бэкап не делался и документы похерелись, то что-то упало, то не понятно как работает, поэтому офисные сервисы я просто забрал себе комп и собрал все необходимое. Billing, БД-сервер, маршрутизаторы, BGP всякие и так далее - это у них, пусть занимаются  сами, а тут уж как-то мне проще самому выделить неделю и поднять почти неубиваемый сервер на VM, тем более что нагрузка очень не большая.
Серверы у компании на CentOS+KVM, я в те дебри лезть не хочу, а админам не особо интересна ESXi, поэтому учусь на примерах и книгах, но белые места не понятные для меня все же есть.

Теперь что хочу:
Перенести все серваки на гипервизор, без дополнительных премудростей.
Сейчас есть только несколько моментов, например для samba нужно организовать новую VM, думаю как лучше. На винде мне как-то проще права раздавать, в отличии от проверенного мной тестового FreeNAS. Также ESXi не может создавать программый рейд. Буду смотреть как на прямую в винду дополнительно кроме системы пробросить 2 винта, чтобы создать программый рейд. Пробовал проброс ввиде RDM-дисков, но когда один диск отключил (физически), то второй отказался работать. Сейчас на винде, при отключении одного винта, второй работает без вопросов.

Теперь уточняю свои вопросы:
1. Буду использовать отдельно стоящий ESXi сервер.
2. Файлы хранятся на локальных дисках, у нас в компании есть СХД, но не вижу пока в нем необходимости, тем более при одном серваке.
3. Согласен, что установка занимает несколько минут и на флешку можно запить гипервизор с любого компа с установленной VMWare, но:
           1) Что касается проброса PCI, это настройка.
           2) Подключение хранилищ, в том числе не исключаю и iSCSI из СХД для резервного бэкапа.
           3) Прописание VM в гипервизоре.
 и возможно многое другое, вообщим если бы был резерв, мне было бы проще, просто взять и импортировать все на свеже установленный гипервизор. Тем более это не особо моя работа, а посему за долгое время я могу просто забыть что и как делается. Про Host Profile - исключено, у меня всего один физический сервер, могу только с СХД к себе на компьютер сбросить бэкап.
4. Под бэкапом средствами самого ESXi я подразумеваю: Data Protection
           1) У меня нет второго физ.сервера
           2) Придется AD поднимать, я хоть и не делал это некогда, думаю там не сложно, просто он мне кроме Data Protection вообще без надобности.
5. Насчет конфигурации и vmdk-диска, то логически вы правы, они должны лежать в одной папке, но на практике получается следующее: Я копирую папку с VM из WorkStaion в хранилище и допустим называю Win2k3, далее Add to inventory и настраиваю VM, а диск подключаю из папки Win2k3 (куда скопировал vmdk), но даже если я назову создаваемую машину Win2k3, то ESXi все равно создаст для нее папку и назовет Win2k3(1), т.е. папок будет две. Вроде есть неопробованное еще мной решение, это руками залесть в vmx-файл и поправить путь к vmdk-файлу, предварительно его перенеся в нужную папку. Но это еще не пробовал.

itpro

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 444
  • Репутация: 204
    • Просмотр профиля
Re: VMWare
« Ответ #3 : 20 Декабрь 2013, 15:01:46 »
Мдяя, в такой конфигурации без бэкапа никак...
По вопросам
1. По поводу бэкапа хостового ESXi решил написать целую статью, надеюсь она будет полезна.
2. По поводу бэкапа виртуальных машин - советую покопать в сторону утилиты MKSBackup
3. Насколько я понял вы вручную переносите файлы из WorkStaion? Может быть все-таки конвертером их перегнать? хотя по идее можно перенести файл vmdk в нужную папку и вручную в свойствах ВМ указать путь к новому vmdk файлу.

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #4 : 27 Декабрь 2013, 15:50:27 »
1. Спасибо за статью, но есть один не маловажный недостаток у этого метода, его нельзя автоматизировать. Если ли метод автоматизировать процесс бэкапа?

2. Почитал про MSKBackup, начал пробовать и не смог пройти вот этот шаг:

При вводе команды: plink.exe root@10.10.1.221 ls /tmp
Получаю ошибку: FATAL ERROR: Network error: Connection timed out

Хотя при подключении просто через Putty все входит через SSH замечательно. Куда копать?


Ошибка найдена -ssh не указал  :D



3. Конвертером перегоняются замечательно. Просто как пользователю WorkStation не много не удобно. Впринципе этот вопрос закрыт.
« Последнее редактирование: 27 Декабрь 2013, 16:13:12 от Black Monk »

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #5 : 30 Декабрь 2013, 09:51:08 »
Что-то не могу понять как работает этот MSKBackup.

---------------------------- mksbackup.ini -------------------------------------
[DEFAULT]
mail=no

#########################################################################
# Somes job samples
#########################################################################

[VMWARE]
program=ghettovcb
host=10.10.1.221
port=22
login=root
password=my_password
local=C:\magik\vmware
global_conf=ghettoVCB.conf
vm_list=MikroTik
destination=<move=mon-sun>D:\BackupESXi_VM\${vm}
scp_bin="D:\Arhiv\Portables\SYS\pscp.exe" -scp -r


------------------------ ghettoVCB.conf -------------------------------------------
VM_BACKUP_VOLUME=/vmfs/volumes/System/Backup
DISK_BACKUP_FORMAT=thin
VM_BACKUP_ROTATION_COUNT=2
POWER_VM_DOWN_BEFORE_BACKUP=0
ENABLE_HARD_POWER_OFF=0
ITER_TO_WAIT_SHUTDOWN=3
POWER_DOWN_TIMEOUT=5
ENABLE_COMPRESSION=0
VM_SNAPSHOT_MEMORY=0
VM_SNAPSHOT_QUIESCE=0
ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP=0
ENABLE_NON_PERSISTENT_NFS=0
UNMOUNT_NFS=0
#NFS_SERVER=172.30.0.195
#NFS_MOUNT=/nfsshare
#NFS_LOCAL_NAME=nfs_storage_backup
#NFS_VM_BACKUP_DIR=mybackups
SNAPSHOT_TIMEOUT=15
#EMAIL_LOG=0
#EMAIL_SERVER=auroa.primp-industries.com
#EMAIL_SERVER_PORT=25
#EMAIL_DELAY_INTERVAL=1
#EMAIL_TO=auroa@primp-industries.com
#EMAIL_FROM=root@ghettoVCB
WORKDIR_DEBUG=0
VM_SHUTDOWN_ORDER=
VM_STARTUP_ORDER=


---------------- Запуск скрипта --------------------
C:\Magik\MKSBackup\mksbackup.exe -v -c C:\Magik\mksbackup.ini check VMWARE


--------------- Получаю после запуска -------------
C:\Magik>C:\Magik\MKSBackup\mksbackup.exe -v -c C:\Magik\mksbackup.ini check VMWARE
11:49:21,950 INF start version=1.0.4 cmd=['C:\\Magik\\MKSBackup\\mksbackup.exe', '-v', '-c', 'C:\\Magik\\mksbackup.ini', 'check', 'VMWARE']
11:49:23,552 INF     cmd_line=cd "/tmp/vmware" ; ./"ghettoVCB.sh" -d debug -c "/tmp/vmware" -f "/tmp/vmware/include_vm" -g "/tmp/vmware/ghettoVCB.conf" ; echo exit_code=$?
11:49:23,555 INF     scp_cmd=pscp.exe -scp -r -P 22 -q -batch -pw ******** root@10.10.1.221:%source% %destination%
11:49:23,555 INF No errors in section: VMWARE
11:49:23,556 INF Destinations day by day:
11:49:23,558 INF     Mon 30 Dec 2013 move         D:\BackupESXi_VM\vm_name
11:49:23,559 INF     Tue 31 Dec 2013 move         D:\BackupESXi_VM\vm_name
11:49:23,561 INF     Wed 01 Jan 2014 move         D:\BackupESXi_VM\vm_name
11:49:23,562 INF     Thu 02 Jan 2014 move         D:\BackupESXi_VM\vm_name
11:49:23,562 INF     Fri 03 Jan 2014 move         D:\BackupESXi_VM\vm_name
11:49:23,563 INF     Sat 04 Jan 2014 move         D:\BackupESXi_VM\vm_name
11:49:23,565 INF     Sun 05 Jan 2014 move         D:\BackupESXi_VM\vm_name
11:49:23,565 INF final exit code=0


И что дальше?
При тестах руководствовался статьей: http://citrix.pp.ru/articles-2/2024-rezervnoe-kopirovanie-v-esxi-besplatnoj-redaktsii.html

PS. Папка D:\BackupESXi_VM была создана предварительно.
« Последнее редактирование: 30 Декабрь 2013, 09:54:48 от Black Monk »

dimokkk

  • Full Member
  • ***
  • Сообщений: 185
  • Репутация: 14
    • Просмотр профиля
Re: VMWare
« Ответ #6 : 30 Декабрь 2013, 12:07:48 »
1. Спасибо за статью, но есть один не маловажный недостаток у этого метода, его нельзя автоматизировать. Если ли метод автоматизировать процесс бэкапа?
Скопируйте все команды в один скрипт PowerShell и запускайте по расписанию планировщиком - вот и вся автоматизация

dimokkk

  • Full Member
  • ***
  • Сообщений: 185
  • Репутация: 14
    • Просмотр профиля
Re: VMWare
« Ответ #7 : 30 Декабрь 2013, 12:17:54 »
Что-то не могу понять как работает этот MSKBackup.

1) SSH ключ в локальном кэше был сохранен?
2) На хосте ESXi в каталге /vmfs/volumes/System/Backup чего-нибудь появляется?
3) Места на VMFS хватает?

Возможно утилита еще какие-то логи локально на Esxi пишет. В них есть что-то интересное?

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #8 : 30 Декабрь 2013, 14:11:25 »
----- вырезка из статьи -----
1. Откройте консоль PowerCLI, или запустите ее из PowerShell, выполнив команду:
Add-PSSnapin VMware.VimAutomation.Core
2. Подключитесь к нашему серверу ESXi (или vCenter):
Connect-VIServer -Server esxi1.winitpro.ru
----- конец вырезки ---------------

Цитировать
Скопируйте все команды в один скрипт PowerShell и запускайте по расписанию планировщиком - вот и вся автоматизация

на втором шаге появляется запрос введите логин и пароль, как его автоматизировать?

itpro

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 444
  • Репутация: 204
    • Просмотр профиля
Re: VMWare
« Ответ #9 : 30 Декабрь 2013, 14:24:28 »
У командлета Connect-VIServer есть параметры:  [-User <String>] [-Password <String>]
Задайте с их помощью имя и пароль для подключения

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #10 : 30 Декабрь 2013, 14:33:17 »
Цитировать
1) SSH ключ в локальном кэше был сохранен?
2) На хосте ESXi в каталге /vmfs/volumes/System/Backup чего-нибудь появляется?
3) Места на VMFS хватает?

Возможно утилита еще какие-то логи локально на Esxi пишет. В них есть что-то интересное?

1. Запускал, plink.exe -ssh root@10.10.1.221 ls /tmp
был запрошен пароль и выведен список файлов из папки /tmp

2. Папку попутал она не систем, а DataStore_Main.
Исправил. В ней пусто. И еще когда я написал: cd /vmfs/volumes/Data
Store_Main/Backup/
то перешел в папку: /vmfs/volumes/5299f96e-76b5b2b0-0b2f-14dae9978b63/Backup #

3. Места хватает

4. В папке /tmp есть пара пустых файлов: ghettoVCB-2013-12-27_18-21-16-255040.log
Дата 27 декабря, стало быть в настоящее время даже такие файлы не создаются.

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #11 : 10 Январь 2014, 14:59:16 »
Извините за наглость, а может быть Вы напишите статью про утилиту MKSBackup. Не могу с ней разобраться.  :(

itpro

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 444
  • Репутация: 204
    • Просмотр профиля
Re: VMWare
« Ответ #12 : 10 Январь 2014, 15:38:10 »
Ок, торжественно обещаю на след. неделе статью с подробными картинками накропать :)

itpro

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 444
  • Репутация: 204
    • Просмотр профиля
Re: VMWare
« Ответ #13 : 17 Январь 2014, 08:19:12 »
Как и обещал, написал небольшой мануал по настройке резервного копированию виртуальных машин на сервере ESXi с помощью MKSBackup.
Постарался писать все только по делу и быть лаконичным.
Комментарии и обсуждение статьи приветствуется :)

Black Monk

  • Новичок
  • *
  • Сообщений: 49
  • Репутация: 2
    • Просмотр профиля
Re: VMWare
« Ответ #14 : 23 Январь 2014, 07:00:07 »
Хорошая статья, все разжевано и без воды! Так держать :)

Уточнее:
plink нужно указывать по какому порту подключаться, для этого нужно писать не:
plink.exe root@1.1.1.1 ls /
а вот так:
plink.exe -ssh root@1.1.1.1 ls /
У меня plink версии 0.63, ОС Win 7 64bit. Без явного указания ssh - не работает.


Проблемный участок бекапа я так и несмог пройти :(
На выходе получаю ошибку 1, кстати а что она означает?

08:57:26,055 INF start version=1.0.4 cmd=['C:\\Magik\\MKSBackup\\mksbackup.exe', '-v', '-c', 'C:\\Magik\\mksbackup.ini', 'backup', 'VMWARE_FROM_WINDOWS']
08:57:48,230 INF     cmd_line=cd "/tmp/vmware" ; ./"ghettoVCB.sh" -d debug -c "/tmp/vmware" -a -g "/tmp/vmware/ghettoVCB.conf" ; echo exit_code=$?
08:57:48,232 INF     scp_cmd=pscp.exe -scp -r -P 22 -q -batch -pw ******** root@10.10.1.221:%source% %destination%
08:57:48,233 INF No errors in section: VMWARE_FROM_WINDOWS
08:57:48,233 INF start command=backup job=VMWARE_FROM_WINDOWS archiver=ghettovcb
08:57:48,234 INF ghettoVCB.sh version is: 2012_12_17_0mksbackup  nfs_wait=True
08:57:48,507 INF start: cd "/tmp/vmware" ; ./"ghettoVCB.sh" -d debug -c "/tmp/vmware" -a -g "/tmp/vmware/ghettoVCB.conf" ; echo exit_code=$?
08:57:49,786 INF end command=backup job=VMWARE_FROM_WINDOWS archiver=ghettovcb
08:57:49,786 INF final exit code=1

Строка запуска аналогично вашей, поэтому я ее тут не написал.
В строке vm_list= указывал конкретную машину, а также оставлял пустой. Результат не менялся! Ошибка 1.

Жду помощи в решение данного вопроса :)

 

Related Topics

  Тема / Автор Ответов Последний ответ
3 Ответов
173405 Просмотров
Последний ответ 17 Сентябрь 2012, 09:54:47
от itpro
3 Ответов
37017 Просмотров
Последний ответ 15 Октябрь 2012, 07:36:54
от itpro
1 Ответов
30799 Просмотров
Последний ответ 10 Август 2013, 13:38:19
от itpro
15 Ответов
58716 Просмотров
Последний ответ 21 Август 2013, 14:05:51
от itpro
3 Ответов
36789 Просмотров
Последний ответ 15 Январь 2015, 08:25:51
от itpro