幫助中心
其他
如何使用阿里云國(guó)際對(duì)象存儲(chǔ)服務(wù)自動(dòng)備份
2022-12-20 16:48:02

異地備份是一項(xiàng)重要的安全措施。它們?cè)试S在發(fā)生硬件故障、意外刪除或任何其他災(zāi)難性事件時(shí)還原數(shù)據(jù)。自動(dòng)備份可提高備份過程的可靠性,并確保定期備份最近的數(shù)據(jù)。

有關(guān)阿里云國(guó)際對(duì)象存儲(chǔ)服務(wù)自動(dòng)備份的操作,今天USA-IDC詳細(xì)說明下操作過程

我們將使用阿里云對(duì)象存儲(chǔ)服務(wù) (OSS) 作為異地備份存儲(chǔ)解決方案。數(shù)據(jù)將由一個(gè)簡(jiǎn)單的bash腳本備份,該腳本由cronjob定期執(zhí)行。Minio 客戶端將用于將備份傳輸?shù)?OSS。

阿里云 OSS 是一個(gè)合適的備份存儲(chǔ)解決方案。很少訪問的對(duì)象(如備份)可以可靠、廉價(jià)且安全地存儲(chǔ)。前 5 GB 的存儲(chǔ)空間可以完全免費(fèi)使用。

先決條件

在開始之前,請(qǐng)確保您有阿里云國(guó)際站賬號(hào)。立即注冊(cè)即可獲得300美元的免費(fèi)積分。創(chuàng)建彈性云服務(wù)器或使用SSH連接現(xiàn)有服務(wù)器進(jìn)行操作。您所需要的只是一個(gè)基于Linux的系統(tǒng)。

步驟 0 – 添加新用戶(可選)

最好使用具有有限系統(tǒng)訪問權(quán)限的帳戶來執(zhí)行備份腳本。這樣做可以提高安全性,因?yàn)槿绻麍?zhí)行備份腳本的用戶受到威脅,攻擊者的可能性有限。運(yùn)行以下命令以添加具有名稱備份的新用戶。

sudo adduser backup

盡可能限制新用戶的系統(tǒng)權(quán)限,而不限制其上傳備份到OSS的能力。

步驟 1 – 創(chuàng)建 OSS 存儲(chǔ)桶

接下來,我們將為備份創(chuàng)建一個(gè)OSS存儲(chǔ)桶。存儲(chǔ)桶是對(duì)象集合的命名空間。每個(gè)對(duì)象都由存儲(chǔ)桶名稱和對(duì)象鍵唯一標(biāo)識(shí)。

首先,導(dǎo)航到阿里云控制臺(tái)。從主導(dǎo)航欄中打開“產(chǎn)品”下拉列表,然后單擊“存儲(chǔ)和 CDN”部分中的對(duì)象存儲(chǔ)服務(wù)鏈接。如果您之前未使用過OSS,您將被要求接受OSS服務(wù)條款。單擊創(chuàng)建存儲(chǔ)桶,為備份對(duì)象創(chuàng)建存儲(chǔ)桶。

輸入存儲(chǔ)桶的名稱,選擇地域,選擇存儲(chǔ)類并設(shè)置訪問控制限制。我們將使用存儲(chǔ)桶名稱backup-demo和EU Central 1區(qū)域。

三種可用的存儲(chǔ)類提供相同的數(shù)據(jù)可靠性和服務(wù)可用性保證。

它們主要在數(shù)據(jù)訪問功能和定價(jià)方面有所不同。與標(biāo)準(zhǔn)存儲(chǔ)相比,不頻繁訪問存儲(chǔ)提供實(shí)時(shí)訪問和更低的存儲(chǔ)費(fèi)用。任何對(duì)象至少需要支付 30 天的存儲(chǔ)費(fèi)用,即使對(duì)象在創(chuàng)建后不久就被刪除了。對(duì)象的最小計(jì)費(fèi)大小為 128 KB。歸檔存儲(chǔ)提供的存儲(chǔ)費(fèi)用甚至更低,但數(shù)據(jù)必須解凍才能變得可讀,這需要一分鐘。最小計(jì)費(fèi)存儲(chǔ)持續(xù)時(shí)間為 60 天,對(duì)象的最小計(jì)費(fèi)大小為 128 KB。

考慮到不同存儲(chǔ)類的屬性,不頻繁訪問存儲(chǔ)將是大多數(shù)備份用例的最佳類。與標(biāo)準(zhǔn)存儲(chǔ)相比,它結(jié)合了實(shí)時(shí)訪問和更低的存儲(chǔ)費(fèi)用。可以在此處找到有關(guān)存儲(chǔ)類的詳細(xì)信息。

對(duì)于備份,ACL 應(yīng)為專用,因?yàn)閭浞輵?yīng)僅由經(jīng)過身份驗(yàn)證的系統(tǒng)寫入和讀取。請(qǐng)注意,創(chuàng)建存儲(chǔ)桶后,無法更改所選的存儲(chǔ)類和區(qū)域。單擊“確定”以創(chuàng)建存儲(chǔ)桶。

步驟 2 – 創(chuàng)建訪問密鑰

接下來,我們將創(chuàng)建訪問密鑰,備份腳本將使用該密鑰通過OSS進(jìn)行身份驗(yàn)證。單擊OSS儀表盤頁(yè)面的訪問密鑰按鈕。

系統(tǒng)將詢問您是否要使用子用戶的訪問密鑰。子用戶的訪問密鑰更安全,因?yàn)樗鼈兊臋?quán)限可以被鎖定。單擊“子用戶訪問密鑰入門”,將其重定向到“資源訪問管理(RAM)”儀表板。如果您以前沒有使用過RAM,您將被要求接受RAM服務(wù)條款。

接下來,單擊邊欄中的“用戶”。以下屏幕列出了每個(gè)子用戶。通過單擊“創(chuàng)建用戶”按鈕創(chuàng)建新的子用戶。

接下來,輸入新用戶的數(shù)據(jù)。我們將選擇用戶名?backup-demo-user。所有其他字段都是可選的“標(biāo)記自動(dòng)為此用戶生成訪問密鑰”復(fù)選框。按“確定”創(chuàng)建用戶。

系統(tǒng)將提示您將用戶的訪問密鑰保存到您的計(jì)算機(jī)。之后無法檢索訪問密鑰!確保其安全。

接下來,我們將配置與訪問密鑰關(guān)聯(lián)的權(quán)限。我們將選擇阿里云OSSFullAccess授權(quán)策略。因此,使用此訪問密鑰進(jìn)行身份驗(yàn)證的任何人都可以管理?OSS。請(qǐng)記住,可以編輯策略以進(jìn)一步降低對(duì)單個(gè)存儲(chǔ)桶或存儲(chǔ)桶組的訪問權(quán)限。

步驟 3 – 設(shè)置 Minio 客戶端

Minio Client為UNIX命令(如ls,cat和cp)提供了一種現(xiàn)代替代方案。我們將使用它,因?yàn)樗粌H支持文件系統(tǒng),還支持與S3兼容的云存儲(chǔ),如阿里云OSS。

如果您愿意,可以使用 Minio 客戶端 Docker 映像。有關(guān)說明,請(qǐng)參閱?DockerHub 上的 minio/mc。

使用 wget 下載 Minio Client 可執(zhí)行文件。如果您不使用 linux-amd64,請(qǐng)確保從?https://dl.minio.io/client/mc/release/?中選擇正確的下載鏈接。

cd ~ wget https://dl.minio.io/client/mc/release/linux-amd64/mc

接下來,使用 chmod 命令設(shè)置可執(zhí)行位以允許執(zhí)行該文件。

chmod +x mc

將可執(zhí)行文件移動(dòng)到 PATH 環(huán)境變量中列出的目錄。這樣做將允許從任何目錄運(yùn)行可執(zhí)行文件,而無需提供其完整路徑。/usr/bin 目錄可用于許多常見的 Linux 發(fā)行版(如 Ubuntu)的用途??蓤?zhí)行文件將可供系統(tǒng)上的所有用戶使用。

sudo mv ./mc /usr/bin/mc

運(yùn)行mc版本以檢查是否可以運(yùn)行Minio客戶端。

步驟 4 – 配置 Minio 客戶端以用于阿里云 OSS

接下來,我們將配置 Minio 客戶端以用于阿里云?OSS。在替換占位符后,使用步驟 1 和 2 中的相應(yīng)值運(yùn)行以下命令。可以在 OSS 存儲(chǔ)桶控制面板上找到。如果不確定要選擇哪個(gè)終結(jié)點(diǎn),請(qǐng)使用?Internet 訪問終結(jié)點(diǎn)。如果缺少所有必需的 Minio 客戶端配置文件,則會(huì)自動(dòng)創(chuàng)建這些文件。

mc config host add oss

列出在步驟 1 中創(chuàng)建的存儲(chǔ)桶中的所有對(duì)象,以檢查配置是否正常工作。

mc ls oss/backup-demo

您不應(yīng)看到任何輸出,因?yàn)榇鎯?chǔ)桶不包含任何對(duì)象。如果顯示錯(cuò)誤消息,請(qǐng)檢查 ~/.mc/config.json 上的配置文件。

步驟 5 – 創(chuàng)建備份腳本

接下來,我們將創(chuàng)建一個(gè)腳本,將目錄中的所有文件備份到OSS。備份數(shù)據(jù)可以是數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)或任何其他數(shù)據(jù)。實(shí)際上,備份數(shù)據(jù)將由另一個(gè)腳本定期生成。我們將為此演示手動(dòng)放置一些文本文件。如果要將包含多個(gè)文件的目錄備份為一個(gè)對(duì)象,請(qǐng)考慮使用 tar 將目錄打包為單個(gè)文件。

使用您選擇的文本編輯器在主目錄中創(chuàng)建名為?backup.sh?的文件。將以下腳本復(fù)制到文件中。

#!/usr/bin/env bash SOURCE=$1 DESTINATION=$2 mc cp --json --recursive $SOURCE $DESTINATION

第一行稱為shebang,并確保腳本將使用bash執(zhí)行。之后,我們將第一個(gè)參數(shù)分配給名為 SOURCE 的變量,將第二個(gè)參數(shù)分配給名為 DESTINATION 的變量。第二行使用 Minio Client 以遞歸方式將所有文件和目錄從源復(fù)制到目標(biāo)。SOURCE 和 DESTINATION 都可以引用文件系統(tǒng)或云存儲(chǔ)。文件名將用作對(duì)象鍵。–-json 選項(xiàng)允許將結(jié)構(gòu)化輸出為 JSON。

OSS存儲(chǔ)空間中已有的任何文件都將被跳過。因此,應(yīng)確保不要重復(fù)使用文件名。確保所有文件名都唯一的最簡(jiǎn)單方法是在文件名中包含時(shí)間戳。

步驟 4 – 使用 Crontab 安排常規(guī)腳本執(zhí)行

接下來,我們將使用 cronjob 定期執(zhí)行備份腳本。首先,使用 chmod 在 backup.sh 腳本上設(shè)置可執(zhí)行位。這將允許文件執(zhí)行。

chmod +x ~/backup.sh

接下來運(yùn)行 crontab -e 以配置 cronjob。如果這是您第一次使用 crontab,系統(tǒng)將要求您選擇一個(gè)編輯器:

no crontab for nick - using an empty one Select an editor. To change later, run 'select-editor'. 1. /bin/ed 2. /bin/nano <---- easiest 3. /usr/bin/vim.basic 4. /usr/bin/vim.tiny Choose 1-4 [2]:

按回車鍵選擇 nano(默認(rèn))。將以下行添加到文件末尾。

* * * * * ~/backup.sh ~/backup-demo/* oss/backup-demo

SOURCE?參數(shù)指向 ~/backup-demo 目錄中的文件,而?DESTINATION?參數(shù)指向我們之前創(chuàng)建的?OSS?存儲(chǔ)桶。備份腳本將每分鐘執(zhí)行一次。保存文件。

讓我們檢查一切是否按預(yù)期工作。在備份目錄中創(chuàng)建備份目錄和文件:

mkdir ~/backup-demo echo test1 > ~/backup-demo/test1.txt

該文件應(yīng)在一分鐘后顯示在您的?OSS?存儲(chǔ)桶中。使用 mc ls oss/backup-demo 檢查存儲(chǔ)桶,或在阿里云控制臺(tái)中打開存儲(chǔ)桶控制面板。

如果文件未出現(xiàn)在?OSS?存儲(chǔ)桶中,請(qǐng)檢查 crontab 輸出。默認(rèn)情況下,cronjobs 會(huì)記錄到?/var/log/syslog。

其他注意事項(xiàng)

如果您需要備份大量數(shù)據(jù),壓縮備份是有意義的。

您應(yīng)確保監(jiān)視任何自動(dòng)備份。這將使您能夠在出現(xiàn)任何問題時(shí)修復(fù)它們,并確保定期備份您的數(shù)據(jù)。

無法還原的備份是無用的。您應(yīng)通過定期測(cè)試來確保備份和備份過程按預(yù)期工作。

沒有阿里云國(guó)際版賬戶怎么辦?無法完成PayPal支付購(gòu)買阿里云國(guó)際ecs實(shí)例?ecs實(shí)例續(xù)費(fèi)出現(xiàn)問題?阿里云國(guó)際版賬戶被風(fēng)控?USA-IDC是阿里云、AWS、騰訊云國(guó)際版金牌分銷商,可代充值,通過分銷商注冊(cè)的賬戶不易被風(fēng)控,且還有額外折扣可享。

什么是零日攻擊,阿里云國(guó)際站有相應(yīng)的解決方案嗎

熱門文章換一批
新客優(yōu)惠
特價(jià) 酷睿i3系列
性價(jià)比熱銷推薦,年銷量第一
1180/月起
USA-IDC為您提供免備案服務(wù)器 0元試用
立即聯(lián)系在線客服,即可申請(qǐng)免費(fèi)產(chǎn)品試用服務(wù)
立即申請(qǐng)