ルール
Priorities are: 1) Security and Reliability, 2) Operational Excellence and Performance Efficiency, 3) Cost Optimization, considering balance among the three
(優先順位は 1) セキュリティと信頼性、2) 運用上の優秀性とパフォーマンス効率、3) コスト最適化とし、3つのバランスを考慮する)
解説
システムは何をおいても動き続けなければなりません。そのためセキュリティと信頼性を最重視しています。
次に、システムは運営費が続かなくなって止まることも防がねばなりません。運用上の優秀性とパフォーマンス効率も無視するわけにいきません。
最後にコスト最適化ですが、これはセキュリティや信頼性と比較すれば優先順位は下がります。
ただしこれらはバランスを考慮しなければなりません。いくらセキュリティが大事だからと言っても、金額換算すれば10ドル程度のメリットのために、1000ドルもかかるような対策を打つべきではありません。
サンプルコード
ルール
Always log important resources and operations
(重要なリソースと操作は常にログを取る)
解説
トレーサビリティの確保にも、トラブルシューティングにも、ログは必要不可欠です。
なくても動くからとおろそかにせず、重要なリソースのログは必ず残します。代表例はCloudTrailです。
ただしプロジェクトの性格上重要ではないものはオミットして差し支えありません。
サンプルコード
ルール
Always backup important resources and data. DR strategy is at backup & restore level
(重要なリソースとデータは常にバックアップする。DR戦略はバックアップ&リストアレベルとする)
解説
重要なリソースとは自社保有の暗号鍵など、データとはデータベース上のレコードなどです。
これらの消失はサービス存続にも関わる大損害をもたらすため、必ずバックアップします。
ここではコスト面を重視しDR(災害対策)はバックアップ&リストア方式を採用していますが、プロジェクトの性格次第でそれ以外の戦略を取ってももちろんかまいません。
サンプルコード
なし
参考リンク
ルール
Prepare service monitoring and alerting mechanisms
(サービスの監視とアラート機構を準備する)
解説
サービスの安定運用には、問題の早期発見と迅速な対応が不可欠です。
CloudWatchやDatadog等を使用して監視・発報の仕組みを用意しておきます。
サンプルコード
参考リンク
ルール
Implementation follows AWS Well-Architected Framework
(AWS Well-Architected Framework に従って実装する)
解説
AWS Well-Architected Framework は、AWSでインフラを構築する際の基本となる設計原則です。
考慮すべき事項の抜け漏れ防止、あるいは関心事の深堀りなどその効用は多岐にわたります。生成AIに活用させるには若干漠然としすぎていますが、それでも指摘せぬわけにいかない重要事項です。
サンプルコード
参考リンク