Cara Mencadangkan Situs Web ke Amazon S3 menggunakan Shell Script

Amazon Simple Storage Service (Amazon S3) adalah perangkat penyimpanan objek berbasis cloud. Ini adalah penyimpanan berbiaya rendah yang banyak digunakan untuk cadangan atau konten situs web statis.

Anda dapat menggunakan utilitas baris perintah AWSCLI untuk mengelola bucket s3 dan kontennya. Dalam tutorial ini, Anda akan belajar tentang mencadangkan situs web ke ember Amazon s3 menggunakan skrip shell.

Menginstal AWS CLI

Paket AWS CLI tersedia di bawah repositori default di sebagian besar sistem Linux. Anda dapat menginstalnya dengan menjalankan salah satu perintah berikut:

sudo dnf install awscli ## Fedora, Redhat dan CentOS
sudo apt install awscli 
## Ubuntu, Debian dan Linux Mint

Anda juga dapat artikel lain untuk menginstal terbaru AWS CLI di sistem Linux apa pun.

Setelah penginstalan selesai, periksa versi awscli dengan menjalankan:

aws --version

Buat Sebuah Shell Script

Sekarang, buat file skrip shell di sistem Anda dan tambahkan konten di bawah ini. Untuk tutorial ini, saya membuat file menggunakan:

nano /scripts/s3WebsiteBackup.sh

and menambahkan konten berikut:

#/usr/bin/env bash

################################################################
##
## Shell script to archive website code and upload to S3 bucket.
## Written by: Rahul Kumar
## Website: https://tecadmin.net
##
#################################################################


S3_BUCKET_NAME=""
DIR_TO_BACKUP="/var/www/html"
BACKUP_FILENAME='website'

TODAY=`date +%Y%m%d`
YY=`date +%Y`
MM=`date +%m`
AWSCMD="/usr/local/bin/aws"
TARCMD="/usr/bin/tar"

${TARCMD} czf /tmp/${BACKUP_FILENAME}-${TODAY}.tar.gz

${AWSCMD} cp /tmp/${BACKUP_FILENAME}-${TODAY}.tar.gz s3://${S3_BUCKET_NAME}/${YY}/${MM}/


if [ $? -eq 0 ]; then
	echo "Backup successfully uploaded to s3 bucket"
else
    echo "Error in s3 backup"
fi

Pastikan untuk memperbarui S3_BUCKET_NAME dan DIR_TO_BACKUP dalam skrip. Anda juga dapat mengubah nama file cadangan di BACKUP_FILENAME variabel.

Simpan file dan tutup. Sekarang, Anda memiliki skrip shell untuk mencadangkan konten situs web ke s3 buckets.
Menjalankan Skrip Shell

Jadikan skrip shell dapat dieksekusi dengan menjalankan perintah berikut.

chmod +x /scripts/s3WebsiteBackup.sh

Sekarang, Anda dapat menguji skrip dengan menjalankannya secara manual.

bash /scripts/s3WebsiteBackup.sh

Jika berhasil, backup akan diupload ke s3 bucket. Yang dapat Anda lihat menggunakan aws s3 ls command.
Schedule Script di Cron

Selanjutnya, jadwalkan skrip Anda ke crontab untuk mengotomatiskan pekerjaan ini. Untuk mengedit crontab pengguna saat ini, ketik:

crontab -e

Tambahkan entri berikut ke crontab:

0 2 * * * bash /scripts/s3WebsiteBackup.sh

Save file dan tutup editor.

Referensi tecadmin.com