給自己 2022 年的新目標 – AWS Certified Developer Associate 的學習筆記。這篇筆記簡介下AWS Elastic Beanstalk 的佈署模式。
課程相關資訊
[連結]:https://www.udemy.com/course/aws-certified-developer-associate-dva-c01/learn/lecture/11851300
本篇範圍:Chapter 16
請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。
內容
1. Single Instance – For Dev
2. 高可用性 + Load Balancer 是對 Prod 比較好的配置 – DB 會至少有一個備援;APP 層可以視人數擴張
3. 若你要更新 Beanstalk 的套件或是佈署程式碼,那有以下四種模式
A. All at Once -> 立即更新;APP 會有少許時間離線;建議用於 Dev;無額外成本
B. Rolling -> 批次更新,你可以指定每次更新的大小 size;無額外成本;可能花費時間較長
C. Rolling with additional batches -> 跟 B 方案相比,會先開出額外更新大小 size 的新版本機器,之後再下線。對 Prod 的效能比較好,不過需要額外成本。
D. Immutable -> Zero Downtime,先開啟一份 ASG 將新環境加上,再將其一個個合併回原有的 ASG
4. 藉由在 Route53 設定權重指向,可以做到導流和測試效果
5. Canary Testing 可以做到 Migration 的陸續轉移效果