OPS 5: どのように欠陥を減らし、修正を容易にして、本番環境へのフローを改善するのですか?
リファクタリング、品質についてのすばやいフィードバック、バグ修正を可能にし、本番環境への変更のフローを改善するアプローチを採用します。これらにより、本番環境に採用される有益な変更を加速させ、デプロイされた問題を制限できます。またデプロイアクティビティを通じて挿入された問題をすばやく特定し、修復できます。
リソース
CI/CD for Serverless Applications on AWS
Design with Ops in Mind
AWS Developer Tools
ベストプラクティス:
-
バージョン管理を使用する: 変更とリリースの追跡を有効にするにはバージョン管理を使用します。
-
変更をテストし、検証する: エラーの制限と検出に役立てるため、変更をテスト、検証します。手動プロセスによって発生するエラーと、テストにかかる労力を減らすためにテストを自動化します。
-
設定管理システムを使用する: 設定の変更を行い、追跡するには、設定管理システムを使用します。これらのシステムは、手動プロセスによって発生するエラーと、変更を導入する労力を減らします。
-
構築およびデプロイ管理システムを使用する: 構築およびデプロイ管理システムを使用します。これらのシステムは、手動プロセスによって発生するエラーと、変更を導入する労力を減らします。
-
パッチ管理を実行する: パッチ管理を実行し、問題を解決して、ガバナンスに準拠するようにします。パッチ管理の自動化により、手動プロセスによって発生するエラーと、パッチにかかる労力を減らすことができます。
-
設計標準を共有する: チーム全体でベストプラクティスを共有し、デプロイ作業における利点の認識を高め、それを最大限にします。
-
コード品質の向上のためにプラクティスを実装する: コード品質の向上のためにプラクティスを実装し、欠陥を最小限に抑えます。たとえば、テスト駆動型デプロイ、コードレビュー、標準の導入などがあります。
-
複数の環境を使用する: ワークロードの実験、開発、テストを行うには、複数の環境を使用します。環境が本稼働環境に近づくにつれて増加するコントロールレベルを使用して、デプロイ時にワークロードが意図したとおりに運用するように確信を強化します。
-
小規模かつ可逆的な変更を頻繁に行う: 頻繁に、小さく、可逆的な変更を行うことで、変更の範囲と影響を減らします。これにより、トラブルシューティングが容易になり、修復がすばやくできるようになります。また変更を元に戻すこともできます。
-
統合とデプロイを完全に自動化する: ワークロードの構築、デプロイ、テストを自動化します。これにより、手動プロセスによって発生するエラーと、変更をデプロイする労力を減らすことができます。
改善計画
バージョン管理を使用する
Introduction to AWS CodeCommit
What is AWS CodeCommit?
変更をテストし、検証する
What is AWS CodeBuild?
Local build support for AWS CodeBuild
設定管理システムを使用する
Infrastructure configuration management
AWS Config
What is AWS Config?
Introduction to AWS CloudFormation
What is AWS CloudFormation?
AWS OpsWorks
What is AWS OpsWorks?
Introduction to AWS Elastic Beanstalk
What is AWS Elastic Beanstalk?
構築およびデプロイ管理システムを使用する
What is AWS CodeBuild?
Continuous integration best practices for software development
Slalom: CI/CD for serverless applications on AWS
Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
What is AWS CodeDeploy?
パッチ管理を実行する
AWS Systems Manager Patch Manager
設計標準を共有する
Delegating access to your AWS environment
Share an AWS CodeCommit repository
Easy authorization of AWS Lambda functions
Sharing an AMI with specific AWS accounts
Speed template sharing with an AWS CloudFormation designer URL
Using AWS Lambda with Amazon SNS
コード品質の向上のためにプラクティスを実装する
複数の環境を使用する
What is AWS CloudFormation?
How do I stop and start Amazon EC2 instances at regular intervals using AWS Lambda?
小規模かつ可逆的な変更を頻繁に行う
統合とデプロイを完全に自動化する
What is AWS CodeBuild?
Continuous integration best practices for software development
Slalom: CI/CD for serverless applications on AWS
Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
What is AWS CodeDeploy?