備份的目的是為了防止自然災害、病毒侵入、人為破壞等,隨著資料量的增長,基於安全、效能以及儲存空間的考慮,實時且增量地對資料進行備份成為企業的普遍需求。 今天,我們將和大家分享如何在 Linux 下將本地業務資料實時備份至 QingStor 物件儲存的儲存空間中。 本方案採用 lsyncd 實時地監控指定目錄在檔案系統層次的變化,當該目錄下發生檔案建立、重新命名 、刪除等操作時,qsctl 便會被自動呼叫以將資料同步至指定的 QingSor 物件儲存的儲存空間中。 因為 qsctl 支援增量同步,所以整個方案可以做到實時且增量的資料備份。 下面給大家介紹完整的配置步驟。 環境要求本方案僅支援 Linux Kernel 2.6.13 及其以後的版本,且要求 Kernel 編譯選項 CONFIG_INOTIFY_USER 為開啟狀態 (預設為開啟狀態)。使用者可以使用如下命令來確認自己的系統是否支援該方案:
備份的目的是為了防止自然災害、病毒侵入、人為破壞等,隨著資料量的增長,基於安全、效能以及儲存空間的考慮,實時且增量地對資料進行備份成為企業的普遍需求。 今天,我們將和大家分享如何在 Linux 下將本地業務資料實時備份至 QingStor 物件儲存的儲存空間中。 本方案採用 lsyncd 實時地監控指定目錄在檔案系統層次的變化,當該目錄下發生檔案建立、重新命名 、刪除等操作時,qsctl 便會被自動呼叫以將資料同步至指定的 QingSor 物件儲存的儲存空間中。 因為 qsctl 支援增量同步,所以整個方案可以做到實時且增量的資料備份。 下面給大家介紹完整的配置步驟。 環境要求本方案僅支援 Linux Kernel 2.6.13 及其以後的版本,且要求 Kernel 編譯選項 CONFIG_INOTIFY_USER 為開啟狀態 (預設為開啟狀態)。使用者可以使用如下命令來確認自己的系統是否支援該方案:
如果返回 則說明可以採用該方案。 軟體配置第一步:安裝 lsyncd 。 使用系統對應的包管理器進行安裝即可。 Debian、Ubuntu 等系統: CentOS、Fedora 等系統: 第二步:使用 pip 安裝並配置 qsctl。 qsctl 的詳細配置可以參考 qsctl 的文件。 使用方法假設需要同步的目錄為 /tmp/example , 待同步的 Bucket 為 example-bucket , lsyncd 的配置檔案為 ~/qingstor-backup.conf(lsyncd 沒有預設的配置檔案,需要在命令列中透過引數的形式給出)。 第一步:編輯 lsyncd 的配置檔案 註解: 如果不知道 qsctl 的完整路徑,可以使用 which qsctl 以獲取。 上述各配置項的含義如下: logfile: 日誌檔案配置。 statusFile: 狀態檔案配置。 maxDelays: 當延時的事件到達此限制後將會直接執行,即使還沒有到達延時的事件,單位為秒。 delay: 延時設定,事件觸發後將會等待對應時間再執行,單位為秒。 maxProcesses: 最大程序數配置,最多允許同時執行的程序數。 第二步:測試配置 前臺執行 lsyncd。 建立一個檔案並等待五秒左右。 檢視 “hello.txt” 是否在 Bucket “example-bucket” 中存在,若存在,則表示配置成功,否則表示配置存在問題。 第三步:後臺執行 lsyncd 當測試配置沒有問題,且測試時執行結果符合預期時,可以將 lsyncd 放入後臺執行。 檢視配置檔案中指定的狀態檔案以瞭解 lsyncd 執行的狀態。 檢視配置檔案中指定的日誌檔案地址以瞭解 lsyncd 的執行日誌。