Till dem som vill mounta en S3 bcuket till en EC2. Jag kör ubuntu men det borde fungera andra system också s3cmd är ett verktyg som är väldigt bra när man arbetar med S3 Bucket. Installera och konfigurera:
sudo apt-get install s3cmd
s3cmd --configure
Skriv in access key id och secret access key från AWS. Följ instruktionerna i installationen.
Om allt fungerar kan du lista och skapa buckets. Se instruktioner på http://s3tools.org/s3cmd
#Skript för att göra backup av mysql är ganska enkelt:
/usr/bin/mysqldump -u root -LÖSENORD' DATABAS> /home/ubuntu/backup/DATABAS.sql
#zippa med:
zip /home/ubuntu/backup/DATABAS_`date +%F`.zip /home/ubuntu/backup/*
#Ladda upp till s3:
/usr/bin/s3cmd put /home/ubuntu/backup/DATABAS_`date +%F`.zip s3://BUCKET/DATABAS_`date +%F`.zip
#Rensa bort filerna.
rm -rf /home/ubuntu/backup/*
Lägg i skriptfil och kör med cron. Lätt som en plätt. Nedan är min skriptfil som jag brukar använda som mall:
#!/bin/bash
DATABASE_USER=''
DATABASE_PASS=''
DATABASE_1=''
DATABASE_2=''
DATESTR=`date +%Y-%m-%d_%H%M%S`
BUCKET_NAME=''
/usr/bin/mysqldump -u $DATABASE_USER -p$DATABASE_PASS $DATABASE_1 > /home/ubuntu/backup/$DATABASE_1.sql
/usr/bin/mysqldump -u $DATABASE_USER -p$DATABASE_PASS $DATABASE_2 > /home/ubuntu/backup/$DATABASE_2.sql
zip /home/ubuntu/backup/$DATABASE_1-and-$DATABASE_2-$DATESTR.zip /home/ubuntu/backup/*
/usr/bin/s3cmd put /home/ubuntu/backup/$DATABASE_1-and-$DATABASE_2-$DATESTR.zip s3://$BUCKET_NAME/$DATABASE_1-and-$DATABASE_2-$DATESTR.zip
rm -rf /home/ubuntu/backup/*
För att lägga denna i cron varje natt:
#crontab -e (sudo innan för att köra alla crons som root)
0 0 * * * bash /usr/local/bin/SKRIPTET.sh > /var/log/SCRIPTET_cron.log 2>&1
"> /var/log/SCRIPTET_cron.log 2>&1" är för att logga allt till en egen fil. Mycket användbart!
Broken pipe error:
Fick detta och förstod inte vad det var. Testade att använda US istället för Ireland på serverplacering och då fungerade det.
Leave a Reply