有關安裝文檔請查看 https://docs.aws.amazon.com/zh_cn/cli/latest/userguide/cli-chap-install.html 。
我這里直接使用自帶的源安裝。
apt install awscli
1.4、配置授權
登陸到我們的 Ubuntu 系統(tǒng),輸入 aws configure,然后按 Enter 鍵。在系統(tǒng)提示時輸入以下信息:
root@ip-172-31-47-132:~# aws configure
AWS Access Key ID [None]: AKIA5NAGHF6NVEPKATFQ
AWS Secret Access Key [None]: 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
Default region name [None]: ap-northeast-1
Default output format [None]: json
root@ip-172-31-47-132:~#
二、IAM 角色授權方式(安全)
上面一種方式相對來說已經(jīng)夠安全了,但是秘鑰信息都以明文的方式存儲在了服務器上面,也變成了一種不安全,那我們就配置一下更加安全的角色方式,角色是賦予信任的實體授予權限的安全方法。
2.1、創(chuàng)建一個 EC2 訪問 S3 的角色
選擇受信任的實體,我們這里選擇 EC2。
賦予訪問 S3 權限。
創(chuàng)建角色。
2.2、為 EC2 添加 訪問 S3 的角色
找到 EC2 實例界面。
選擇我們剛剛創(chuàng)建的角色。
2.3、測試
這里的前提條件是沒有配置秘鑰授權的方式。
aws s3 ls s3://myweb-backup-eu-west-1/
三、使用 AWS CLI 和 S3 備份數(shù)據(jù)
3.1、創(chuàng)建存儲桶
要新建一個名為myweb-backup的存儲桶,請輸入:
root@ip-172-31-47-132:~# aws s3 mb s3://myweb-backup
make_bucket: myweb-backup
3.2、上傳文件
要將/etc/passwd文件上傳到 S3 存儲桶 myweb-backup,您需要使用以下命令:
root@ip-172-31-47-132:~# aws s3 cp /etc/passwd s3://myweb-backup/
upload: ../../etc/passwd to s3://myweb-backup/passwd
3.3、下載文件
要從 S3 中將 passwd 下載至本地目錄,我們需要顛倒命令的次序,如下所示:
root@ip-172-31-47-132:~# aws s3 cp s3://myweb-backup/passwd .
download: s3://myweb-backup/passwd to ./passwd
3.4、刪除文件
要將 passwd 從您的 myweb-backup 存儲桶中刪除,請使用以下命令:
root@ip-172-31-47-132:~# aws s3 rm s3://myweb-backup/passwd
delete: s3://myweb-backup/passwd
四、實際案例(使用秘鑰這種方法)
比如我每天把 /etc 目前下面的所有內(nèi)容打包上傳備份。
#!/bin/bash
export HOME=/home/ubuntu
cd /tmp/;
tar -zcPf etc$(date %Y%m%d).tar.gz /etc;
aws s3 cp etc$(date %Y%m%d).tar.gz s3://myweb-backup/;
rm -f etc$(date %Y%m%d).tar.gz;
然后添加一個定時任務即可。
我這里遇到一個問題,就是放在定時任務之后一直無法上傳成功,不清楚使用角色授權的方式會不會出現(xiàn)這種情況,我覺得應該不會,大家可以自己去試試,通過打印日志查看,發(fā)現(xiàn)unable to locate credentials這個問題,找了半天,加了一個環(huán)境變量export HOME=/home/ubuntu解決了,真是費盡周折,如果再遇到手動執(zhí)行腳本正常,而定時任務不正常,我們可以用下面的辦法對比一下兩種方式的環(huán)境變量的區(qū)別。
# 定時任務環(huán)境變量輸出
set | sort > /tmp/env.cron
# 手動執(zhí)行腳本輸出
set | sort > /tmp/env.interactive
# 然后進行比較
diff /tmp/env.cron /tmp/env.interactive
為了節(jié)省空間,我們可以添加生命周期規(guī)則。
參考文檔: https://aws.amazon.com/cn/getting-started/tutorials/backup-to-s3-cli/
歡迎大家掃碼關注,獲取更多信息
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問三五互聯(lián)官網(wǎng):m.shinetop.cn