vCenter Appliance – DB Backup Script
vCenter Server Appliance 6.5 sanal sunucunun full VM olarak yedeğini aldınız ama bu restore aşamasında size yetmeyebilir. Çünkü appliance içerisinde çalışan bir veritabanı var ve onunda uygulama tutarlı bir yedeği alınmalı. Bu aşamada sizin yardımınıza Vmware in KB si yetişiyor . KB yi okuduğunuzda bir seferlik yapılan manuel bir işlem var, ancak siz bunu otomatize etmek istiyorsanız ne yapacaksınız? İşte bu durumda internette aşağıda kaynak olarak gösterdiğim scripti buldum ve birkaç değişiklikten kendi test ortamımda kullandım, gayet güzel bir iş görüyor. Denemenizi tavsiye ederim.
- Öncelikle Vmware KB sindeki adımları takip edin. Oradaki hazır backup script ine ihtiyacımız var. (VMware KB)
- vCenter sunucusuna bağlanıp, /home klasörü altında “vCenter_backup” adında bir klasör oluşturun ve tüm dosyaları buraya toplayın (VMware backup scriptini de buraya upload edip, unzip ve sonrasında chmod komutları yetkilendirin.)
- Aşağıdaki içeriği bir bash script file yani “*xxxx.sh” olarak oluşturun.
- Script dosyasını yetkilendirin.
- Manuel bir kere çalıştırın.
- Cat ile result dosyasını kontrol edin.
- Eğer sorun varsa, /var/log/messages dosyasının içeriğini kontrol edin.
Ben sadece yetkilendirme ile ilgili bir sorun yaşadım. Onu da Linux üzerinde tanımlı olan “/etc/pam.d” dosyasının içeriğinde 3 yerde password-auth tanımını sytem-auth olarak güncelledim ve sorunsuz çalıştı.
- Son olarak çalıştığından emin olduğunuz script dosyasını crontab ile hergün çalıştırılmak üzere (yada tercih sizin) schedule edin.
Not : Orijinal script dosyasının linkini ve esas sahibinin adını aşağıda bulabilirsiniz.
****************Script dosyası içeriği*************************
#Purpose = Backup VMware VCSA Database
#Created on 04-04-2018
#Author = David Rodriguez ( edited : Tolga ASIK)
#Version 1.1
#Link : http://www.sysadmintutorials.com/backup-vmware-vcsa-vpostgress-database-to-cifs-share/
#Go
shell
cd /home/vCenter_backup
#Create Results File
date &> /home/vCenter_backup/backup_results.txt
#Create Backup File
python /home/vCenter_backup/backup_lin.py -f /home/vCenter_backup/vcsa_backup_VCDB.bak >> backup_results.txt
#Rename Files
mv /home/vCenter_backup/backup_results.txt /home/vCenter_backup/backup_results_$(date +”%d-%m-%y”).txt
mv /home/vCenter_backup/vcsa_backup_VCDB.bak /home/vCenter_backup/vcsa_backup_VCDB_$(date +”%d-%m-%y”).bak >> backup_results_$(date +”%d-%m-%y”).txt 2>&1
#Remove Backup File older than 3 days
find /home/vCenter_backup/ -name ‘*.txt’ -mtime +2 -exec rm {} \;
find /home/vCenter_backup/ -name ‘*.bak’ -mtime +2 -exec rm {} \;
*****************************************************************
Script dosyasını vi ile oluşturun ve aynı dosyayı yetkilendirin.
#chmod 700 xxxx.sh
Crontab ile işi otomatize edin.
#crontab -e
0 12 * * * /home/vCenter_backup/vcenter_db_backup.sh #run db backups at 12:00 in /home/vCenter_backup
Crontab kontrolü yapın.
#crontab -l
******************************************************************
Troubleshooting :
Eğer crontab a eklenen adım vakti geldiğinde çalışmıyor ve /var/log/messages içerisinde aşağıdaki loglar görünüyorsa, lütfen /etc/pam.d içeriğini aşağıdaki gibi güncelleyin.
2017-04-19T09:56:01.996673-04:00 VCSA crond[104661]: PAM _pam_load_conf_file: unable to open config for password-auth
2017-04-19T09:56:01.996797-04:00 VCSA crond[104661]: PAM _pam_load_conf_file: unable to open config for password-auth
2017-04-19T09:56:01.996907-04:00 VCSA crond[104661]: PAM _pam_load_conf_file: unable to open config for password-auth
2017-04-19T09:56:01.997010-04:00 VCSA crond[104661]: (root) PAM ERROR (Permission denied)
2017-04-19T09:56:01.997116-04:00 VCSA crond[104661]: (root) FAILED to authorize user with PAM (Permission denied)
/etc/pam.d dosyasının vi editör ile açıp aşağıdaki gibi içeriğini güncelleyin.
account required pam_access.so
account include system-auth
session required pam_loginuid.so
session include system-auth
auth include system-auth