参考文献
AWS Innovate Online Conference
AWS 認定 - 試験対策 「ソリューションアーキテクト - アソシエイト」
セッション5:運用上の優秀性(オペレーショナル・エクセレンス)を備えたアーキテクチャを定義する
を視聴して、まとめた内容を記載しています。
運用上の優秀性を実現するそソリューションの設計特性を選択する
クラウド上の運用上の優秀性を実現するためのベスト・プラクティス
- 準備
- 運用上の優秀性を実現するためには効果的な準備が必要
- 運用
- 技術的なメトリクスに終始せずに、ビジネスの成果とお客様の成果の達成度によって運用を評価するという考え方
- 進化
- 運用上の優秀性を維持するために運用を進化し続けようとする考え方
ビジネスの人数と、お客様のニーズを理解し、ビジネスの成果を得られるように効果的かつ効率的にサポートする必要がある
目的となるビジネスの成果の達成度を評価するために使用するメトリクスを収集する
ビジネスの状況、優先事項、ニーズの変化に対応して、長期的にサポートする運用を設計し、運用から学んだ教訓を取り入れることが重要
運用上の優秀性を向上させるための原則
- コードを使用して運用する
- 運用コードとして実行することで、ヒューマンエラーを抑制し、様々なイベントに対する一貫性のある応答を実現できる
- ドキュメントに注釈を付ける
- AWSを運用していくと、ドキュメントが自動化のために用意したスクリプトなどで構成されるようになる
- 定期的に、小規模な、元に戻すことができる変更を適用する
- コンポーネントを定期的に更新するように、設計し、失敗した場合に元に戻すことができるように少しずつ変更する
- 運用手順を定期的に改良する
- 運用手順を実行するとき、改善の機会を探す
- システムのワークロード進化させるときに手順も進化させる
- 障害を予想する
- 障害シナリオをテストし、その影響を検証する
- 定期的なゲームデーを計画し、ワークロードとシュミレートされたイベントに対するチームの応答をテストする
- 運用上のすべての障害から学ぶ
- 運用上の全てのイベントと障害から教訓を学び、改善する
運用上の優秀性をサポートするAWSサービス
- AWS Config
- EBSやEC2などのリソースを追跡して、リソースの追加/更新があらかじめ設定したconfigルールにしたがって自動検証
- AWS CloudFormation
- JSON YAMLなどのテンプレートからインフラストラクチャーおよびリソースを自動構築
- AWS Trusted Advisor
- セキュリティ、信頼性、パフォーマンス、コストサービスの制限におけるベスト・プラクティスに基づいてアカウント内のリソースをチェックし、ベストプラクティスに沿っているかアドバイスしてくれる
- AWS Inspector
- EC2のセキュリティ脆弱性をチェック
- 脆弱性が見つかった場合は、詳細な改善手順を載せたレポートを出力する
- VPCフローログ
- VPC内のネットワークトラフィックをログに出力
- ネットワークに問題があった場合のトラブルシューティングやインシデントが起きた場合の情報収集に利用できる
- AWS CloudTrail
- APIコールをログに記録
- CloudWatch
- メトリクスを収集/追跡して、メトリクスが閾値を超過している場合は、アラームをトリガーにすることができる
- CloudWatchログはログを収集して保存する
- EC2インスタンス内で生成されたログやCloudTrailのログ、lambda関数内の出力されたログなどを収集できる
- メトリクスフィルター機能を利用すれば、パターンマッチしたログから新しいメトリクスを生成することも可能