ESXi 備份

  • Category: 電腦相關
  • Last Updated: Tuesday, 19 May 2015 11:56
  • Published: Monday, 18 May 2015 10:55
  • Written by sam

公司使用了一臺ESXi

原本礙於空間不足,並無設定備份方式

最近採買了新的NAS,變的無法推延此事…

NAS的部份就簡單的點一點就行了

再來是ESXi這邊的設定

 photo 2015-05-18_101531_zpslz9sg9u8.jpg

 photo 2015-05-18_101539_zps08dumvfv.jpg

 photo 2015-05-18_101558_zpsbtpxbkkw.jpg

 photo 2015-05-18_101609_zpscnzakuox.jpg

abc 就是這次新增的

 photo 2015-05-18_101629_zpsyjufmrw7.jpg

先開啟能使用SSH存取機器

http://boredom.gotdns.com/index.php/398-vmware

本次使用的是"快照"備份的方式

使用ghettoVCB

到此下載

https://github.com/lamw/ghettoVCB

再來挑熟悉工具或是使用vSphere將之上載及解壓或機器能連外的話,也能登入後下載

通當會將程式放在路徑

/vmfs/volumes/datastore1

比較不會有重開機清除的風險

我採直接修改了.conf設定檔

這樣的好處就是不需要進主要檔案(ghettoVCB.sh一行行修改,而用執行時指定的方式載入

如果有特別需要修改的值,也可以直接複製出來貼上

/vmfs/volumes/542d8845-a3347312-44a4-b82a72de1d03/ghettoVCB-master # cat ghettoVCB.conf
VM_BACKUP_VOLUME=/vmfs/volumes/abc/vmware
DISK_BACKUP_FORMAT=thin
VM_BACKUP_ROTATION_COUNT=3
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=
NFS_VERSION=nfs
NFS_MOUNT=/nfsshare
NFS_LOCAL_NAME=nfs_storage_backup
NFS_VM_BACKUP_DIR=mybackups
SNAPSHOT_TIMEOUT=15
EMAIL_LOG=1
EMAIL_SERVER=192.168.1.13
EMAIL_SERVER_PORT=25
EMAIL_DELAY_INTERVAL=1
EMAIL_TO=sam.lin at fuhu.com
EMAIL_FROM=sam.lin at fuhu.com
WORKDIR_DEBUG=0
VM_SHUTDOWN_ORDER=

再來是我新建了一個新的檔案

目的是因為我不需備份機上所有的虛擬器

採用指定名稱的方式備份,一樣在執行時另外載入

/vmfs/volumes/542d8845-a3347312-44a4-b82a72de1d03/ghettoVCB-master # cat listvm
debian181
debian182
debian183
debian184
debian185
cacti
opennms
fordemo

所以我的執行指令如下

我的指令中並沒有 -l 將LOG檔案指到特定位置

因為是設定將檔案寄出

./ghettoVCB.sh -f listvm -g ghettoVCB.conf

再來一點,因為ESXi無法作SMTP授權方式(SASL)

所以必需將這臺發信的IP加到RELAY的名單中

[root@cacti ~]# cat /etc/postfix/main.cf |grep mynetworks
mynetworks = 127.0.0.0/8 192.168.1.70/32

加一下這臺的IP,並且重啟一下

[root@cacti ~]# service postfix restart

再來就是開啟ESXi的SMTP功能,以能順利SMTP出去(預設沒有)

先建一個檔案

/vmfs/volumes/542d8845-a3347312-44a4-b82a72de1d03/ghettoVCB-master # cat smtp.xml
<ConfigRoot>
         <service id='0033'>
                 <id>SMTP client</id>
                 <rule id='0000'>
                         <direction>outbound</direction>
                         <protocol>tcp</protocol>
                         <porttype>dst</porttype>
                         <port>25</port>
                 </rule>
                 <enabled>true</enabled>
                 <required>true</required>
         </service>

將之複製到

/etc/vmware/firewall/

再來執行指令套用

esxcli network firewall refresh

這樣就能正常發信出來

附上其中一臺正常備份的LOG

2015-05-15 11:51:07 -- info:
2015-05-15 11:51:13 -- info: Initiate backup for debian181
2015-05-15 11:51:13 -- info: Creating Snapshot "ghettoVCB-snapshot-2015-05-15" for debian181
2015-05-15 12:08:34 -- info: Removing snapshot from debian181 ...
2015-05-15 12:08:35 -- info: Backup Duration: 17.37 Minutes
2015-05-15 12:08:35 -- info: Successfully completed backup for debian181!

先加入到crontab

~ # vi /var/spool/cron/crontabs/root

因開機後會消失,記得再寫個sh到rc.local