大家應該還記得上一篇我們講 S3 版本控管吧?對,就是那個「老闆說要能回溯誤刪檔案」的功能。結果一打開版本控管,你會發現 Bucket 瞬間變成垃圾桶附加回收桶,舊版本越堆越多,最後 AWS 帳單直接變成恐怖片現場。
這時候你就會聽到熟悉的聲音:「這個月又爆預算了。」
對不起啦老闆,真不是我亂花,這是 AWS 自動幫我花的。
既然要省錢,就得靠 S3 生命週期 (Lifecycle Rules) 這招。說白話就是幫你的檔案設定「自動收垃圾的 scheduler」,檔案放太久或版本太多就自動清掉。
有點像工程師桌面,檔案堆滿滿,結果老闆走過來問:「專案文件在哪?」你打開桌面才發現整個桌面就是專案文件。這時候如果有生命週期規則,早就自動把垃圾清光,不會變成「桌面驚魂記」。
生命週期的玩法大概就兩種:
我們用一個範例來說明如何設定超過30天的物件檔案自動刪除。
以下將步驟奉上,簡單到像複製貼上別人 Stack Overflow 答案:
規則一多難免打架,簡單記:
總之開版本控管就像請健身教練:你以為是在保命,結果一不小心荷包先掛掉。
生命週期規則就是幫你控制健身課的課表,不然最後不是你練爆,而是帳單練爆。
所以各位工作室、SOHO、或是「老闆說錢要花在刀口上」的團隊,趕快去幫你的 S3 開個生命週期。不然月底對帳單的時候,揹到帳單爆表鍋的人,可然會是你!!!
參考資料:Amazon S3 使用者指南官方文件 - https://docs.aws.amazon.com/zh_tw/AmazonS3/latest/userguide/Welcome.html