我們2015年開始試用阿裡雲服務器、雲數據庫、雲監控、開放緩存等服務,2016年寫過一篇《阿裡雲Web服務器ECS和數據庫服務器RDS的異地備份》,後來也基本上是按照這樣來做的,隻是随着ECS、RDS數量的增加,要進行備份、下載、儲存也變得越來越難了,特别是RDS數據量增加後下載非常困難,害怕長期占用ECS帶寬進而影響用戶訪問,就基本沒有進行異地保存。
最近還因為某個特别的原因,網站上出現特别内容,被請去喝茶,我們也按照要求查找和提供Web訪問日志,我們一般是儲存15天左右的訪問日志,對于我們自己或者相關部門需要查找問題基本夠了,但考慮到國家有規定訪問記錄應該保存180天,如果萬一需要查找更早的日志而我們沒有的話,怕因為更大問題,還是要做到合規才行,因此異地備份的事情有提到議事日程。
我們同事咨詢了阿裡雲客服,他們推薦OSS歸檔存儲,然後我又和同事咨詢查看阿裡雲相關文檔,比較了專門的備份服務、各種OSS存儲規格的特點和價格,最好覺得OSS冷歸檔是最适合我們的産品,原因如下:
- 價格最低,1.5元/100G/月,也就是18元/100G/年或者180元/1T/年,與購買硬盤的價格差不太多了
- 最低儲存180天、最小64kB,也對我們沒有影響,我們的備份需求符合
- 都是通過内網進行備份、轉移,不占用外網帶寬,不影響用戶訪問
- 不擔心自己的硬盤損壞,冷歸檔除了解凍麻煩一點以外,數據可靠性是有保障的
于是我們就在阿裡雲賬号中開通了OSS功能,選擇地域和類型添加了Bucket,手工測試了文件的上傳、解凍、下載,再添加了需要的目錄,在ECS下載工具軟件OssUtil的Linux x86 64bit,就可以在ECS上用命令行( 例如:ossutil64 cp rds-0-tables.sql.tar.gz oss://my-oss-backup-qingdao-1/rds-0/ )來上傳備份文件了。下面是三類需要保存的文件及處理辦法:
- Web訪問日志:我們修改了以前的每日Web訪問日志壓縮批處理程序,在壓縮後就上傳到OSS的Bucket目錄中
- ECS中Web及系統數據備份:修改了以前每月備份批處理程序,在壓縮後上傳到OSS的對應Bucket目錄中
- RDS中的數據備份:MySQL 5.x老RDS備份數據可以在ECS上通過内網下載,再上傳到OSS對應Bucket目錄中,新的MySQL 8的備份下載還在等待阿裡雲技術人員完善,以後可能可以直接傳到OSS而不需要ECS中轉
上傳好了以後,可以在阿裡雲OSS管理Bucket設置生命周期,我們目前的存儲規則是:
- Web訪問日志:每日自動批量進行備份上傳,保存180天後删除
- Web及系統備份:每月自動批量進行備份上傳,保存365天後删除
- RDS數據備份:每半年人工進行備份上傳,保存730天後删除
這樣算下來,一台ECS上的Web訪問日志冷歸檔一年幾十元,Web及系統備份也是一年幾十元,我們多台ECS及RDS的冷歸檔費用大約在數百元一年,還是可以承受得了的,也解決了我們一個長期的麻煩和隐患。✌️
還有幾個注意點:
- 解凍分為緊急、标準、批量三種,需要等待的時間不一樣,價格也有差異;
- 生命周期設置為小于180天的時候是不會删除的,需要等到180天才會删除,這個是我詢問阿裡雲客服的結果,需要觀察;
- 我們的需求中Bucket的曆史記錄不需要開啟,通過目錄名、文件名來區分文件,以免删除的時候需要删除兩次;
- 冷歸檔解凍後的文件可以下載、轉為歸檔,但如何再轉為冷歸檔還不知道,也沒有嘗試;
- OSS中目錄名、文件名不能移動、不能改名,上傳的時候需要對準目錄,不存在的目錄會自動新增;
- 不同阿裡雲賬号可以用内網訪問同一地域下的同一個Bucket,因此不需要每個阿裡雲賬号下都開啟OSS、創建Bucket。
评论