Які варіанти у мене є для резервного копіювання вмісту з хмарних сайтів Rackspace, включаючи файли та бази даних? Я знаю, що у них є робота з крон, але я не впевнений, які у мене варіанти, коли мова йде про це.
Які варіанти у мене є для резервного копіювання вмісту з хмарних сайтів Rackspace, включаючи файли та бази даних? Я знаю, що у них є робота з крон, але я не впевнений, які у мене варіанти, коли мова йде про це.
Відповіді:
Я використовую два сценарії, щоб створити резервну копію свого VPS (розміщеного на Linode, але те саме повинно працювати на Rackspace).
По-перше, для резервного копіювання mysql я використовую скрипт automysqlbackup . Він дбає про скидання ваших баз даних, їх стискання та підтримку декількох щоденних / тижневих / щомісячних копій файлів резервної копії. Він також може вам надіслати електронною поштою стиснуті .sql відвали.
Для загального резервного копіювання файлової системи я використовую подвійність - це може використовувати декілька різних резервних файлів пам’яті (ftp, scp, nfs тощо), але я обираю використовувати бекенд Amazon S3. Дублікація буде робити або повне, або додаткове резервне копіювання, залежно від ваших потреб. Він також буде обробляти стиснення ваших резервних файлів, а також шифрування, якщо цього захочете.
Rackspace не дозволяє SSH до своїх хмарних сайтів, тому я не думаю, що Duplicity працюватиме, якщо ви не зможете переконати їх встановити його.
Ми також шукали рішення, але в кінцевому підсумку створили систему резервного копіювання, яка архівує файли та скиди SQL та передає їх у файли хмарних файлів Rackspace, названі та датовані. Система обробляє очищення старих резервних копій (ми зберігаємо різноманітні резервні копії щодня / тиждень / місяць) і працює як модуль на спеціальній установці Drupal. Адміністратор надає відгуки про стан кожної резервної копії та заповнює електронну таблицю Google, щоб дати огляд. Він також може працювати з будь-яким сайтом за межами Rackspace, оскільки він використовує PHP-клієнт, щоб виконати всю роботу (завантажте один PHP-скрипт на сайти, на які потрібно створити резервну копію, встановіть його в інтерфейсі адміністратора, і головний сайт займе піклуватися про все планування / автентифікацію / тощо ...) Ми використовуємо його внутрішньо, але може випустити його як модуль, якщо для цього є якийсь інтерес, тому повідомте мене.
Єдиний спосіб, про який я знаю, - це створити завдання cron для резервного копіювання даних і баз даних, щоб вони були ftp або будь-яким методом, який ви хочете використовувати для передачі даних. Ось зразок сценарію.
#!/bin/sh
# System + MySQL backup script
# Full backup day - Sun (rest of the day do incremental backup)
# Copyright (c) 2005-2006 nixCraft
# This script is licensed under GNU GPL version 2.0 or above
# Automatically generated by http://bash.cyberciti.biz/backup/wizard-ftp-script.php
# ---------------------------------------------------------------------
### System Setup ###
DIRS="/home /etc /var/www"
BACKUP=/tmp/backup.$$
NOW=$(date +"%d-%m-%Y")
INCFILE="/root/tar-inc-backup.dat"
DAY=$(date +"%a")
FULLBACKUP="Sun"
### MySQL Setup ###
MUSER="admin"
MPASS="mysqladminpassword"
MHOST="localhost"
MYSQL="$(which mysql)"
MYSQLDUMP="$(which mysqldump)"
GZIP="$(which gzip)"
### FTP server Setup ###
FTPD="/home/vivek/incremental"
FTPU="vivek"
FTPP="ftppassword"
FTPS="208.111.11.2"
NCFTP="$(which ncftpput)"
### Other stuff ###
EMAILID="admin@theos.in"
### Start Backup for file system ###
[ ! -d $BACKUP ] && mkdir -p $BACKUP || :
### See if we want to make a full backup ###
if [ "$DAY" == "$FULLBACKUP" ]; then
FTPD="/home/vivek/full"
FILE="fs-full-$NOW.tar.gz"
tar -zcvf $BACKUP/$FILE $DIRS
else
i=$(date +"%Hh%Mm%Ss")
FILE="fs-i-$NOW-$i.tar.gz"
tar -g $INCFILE -zcvf $BACKUP/$FILE $DIRS
fi
### Start MySQL Backup ###
# Get all databases name
DBS="$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse 'show databases')"
for db in $DBS
do
FILE=$BACKUP/mysql-$db.$NOW-$(date +"%T").gz
$MYSQLDUMP -u $MUSER -h $MHOST -p$MPASS $db | $GZIP -9 > $FILE
done
### Dump backup using FTP ###
#Start FTP backup using ncftp
ncftp -u"$FTPU" -p"$FTPP" $FTPS<
mkdir $FTPD
mkdir $FTPD/$NOW
cd $FTPD/$NOW
lcd $BACKUP
mput *
quit
EOF
### Find out if ftp backup failed or not ###
if [ "$?" == "0" ]; then
rm -f $BACKUP/*
else
T=/tmp/backup.fail
echo "Date: $(date)">$T
echo "Hostname: $(hostname)" >>$T
echo "Backup failed" >>$T
mail -s "BACKUP FAILED" "$EMAILID" <$T
rm -f $T
fi
Завдання Cron із сценарієм здається мені більш «міцним» рішенням. Я все ще перебуваю в стані відходу від своєї залежності від графічного інтерфейсу. D:
При цьому я використовую Cobian Backup для автоматичного резервного копіювання всіх файлів сайту @ cloudites через FTP щоночі. Це досить гарне рішення щодо пожежі та забуття, яке не вимагає знань сценаріїв чи завдань Cron, просто переконайтеся, що ви періодично перевіряєте відновлення.
Детальніше тут: http://www.iainlbc.com/2010/04/how-to-backup-rackspace-cloudsites-automatically-incrementally-using-free-software/
MySQL Administrator (EOL) обробляє автоматизовані резервні копії нашої RDS Amazon
дуже простий скрипт для резервного копіювання в хмарних файлах rackscpace з подвійністю
Я спробував http://www.zipitbackup.com/ . Її утиліта резервного копіювання з Rackspace. Це добре працює.
Документація говорить, як це працює:
-> Працює на основі сайту. Утиліта резервного копіювання Zipit повинна бути встановлена для кожного сайту, на який потрібно створити резервну копію.
-> Утиліта резервного копіювання Zipit створює резервні копії всіх файлів та баз даних Cloud Sites у вашому обліковому записі Cloud Files.
-> Список усіх доступних резервних копій. Наявними резервними копіями можна керувати через Cloud Cloud Panel.