這一節看看如何通過boto3來管理EC2的快照。在實際生産環境中,豆子使用的是AWS提供的解決方案 EBS Snapshot Scheduler, 直接導入Cloudformation的stack,會自動配置Lambda函數和DynamoDB資料庫,然後我們可以通過标簽來進行設定。從學習的角度,我們直接來弄一個超簡易的版本。我們可以直接寫兩個Lambda函數,一個進行建立,一個進行删除。
首先,設定一個tag标簽
接下來建立Lambda函數
IAM Role的配置如下
具體函數如下所示:
然後在Cloudwatch裡面設定一個計劃任務,定期執行這個函數
這個是綁定了Role和觸發器的示意圖
執行之後,可以檢視快照
在Cloudwatch裡面檢視print的輸出日志,可以看見成功執行了
同樣的方式,我們可以建立一個Lambda函數來删除快照
具體的函數如下:
同樣可以建立計劃任務執行函數
執行之後CloudWatch裡面的print日志