

# リソースを削除する
<a name="decommission-resources"></a>

 プロジェクト、従業員、テクノロジーリソースのリストを長期にわたって管理すると、使用されなくなったリソースや所有者のいなくなったプロジェクトを特定できます。

**Topics**
+ [COST04-BP01 ライフタイム全体にわたってリソースを追跡する](cost_decomissioning_resources_track.md)
+ [COST04-BP02 廃止プロセスを実装する](cost_decomissioning_resources_implement_process.md)
+ [COST04-BP03 リソースを廃止する](cost_decomissioning_resources_decommission.md)
+ [COST04-BP04 自動的にリソースを廃止する](cost_decomissioning_resources_decomm_automated.md)
+ [COST04-BP05 データ保持ポリシーを適用する](cost_decomissioning_resources_data_retention.md)

# COST04-BP01 ライフタイム全体にわたってリソースを追跡する
<a name="cost_decomissioning_resources_track"></a>

 ライフタイム全体にわたって、リソースや、リソースとシステムとの関係を追跡するメソッドを定義し、実装します。タグ付けにより、リソースのワークロードまたは機能を特定できます。

 **このベストプラクティスを活用しない場合のリスクレベル:** 高 

## 実装のガイダンス
<a name="implementation-guidance"></a>

不要になったワークロードリソースを廃止します。一般的な例としては、テスト用途のリソースがあります。テストが完了したら、リソースは削除できます。タグを使用してリソースを追跡する (およびそれらのタグに関するレポートを実行する) ことで、使用されなくなったり、ライセンスの有効期限が切れたりした場合に、廃止する資産を特定するのに役立ちます。リソース追跡には、タグの使用が効果的な方法です。リソースにその機能か、または廃止可能になる既知の日付をラベリングできます。そうすると、これらのタグでレポートを作成できます。機能タグを付ける場合の例として、`feature-X testing` という値であれば、ワークロードのライフサイクルの観点からリソースの目的を識別できます。もう 1 つの例は、削除されるタグキーの名前や値などのリソースに `LifeSpan` または `TTL` を使用して、廃止の期間や特定の時間を定義するものです。

**実装手順**
+ **タグ付けスキームを実装する:** リソースが属するワークロードを識別するタグ付けスキームを実装し、ワークロード内のすべてのリソースが適切にタグ付けされることを確認します。タグ付けにより、目的、チーム、環境など、ビジネスに関連した基準でリソースを分類することができます。タグ付けのユースケース、戦略、テクニックの詳細については、「[AWS のタグ付けのベストプラクティス](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html)」を参照してください。
+ ** ワークロードのスループットまたは出力モニタリングを実装する:** 入力リクエストまたは出力完了に対してワークロードスループットモニタリングまたはアラームを実装します。ワークロードのリクエストまたは出力がゼロになったときに、ワークロードのリソースが使用されなくなったことを示す通知を提供するように設定します。ワークロードが通常の条件下で定期的にゼロまで下がる場合は、時間要因を組み込みます。未使用または十分に活用されていないリソースの詳細については、「[AWS Trusted Advisor コスト最適化チェック](https://docs.aws.amazon.com/awssupport/latest/user/cost-optimization-checks.html)」を参照してください。
+  **AWS リソースをグループ化する:** AWS リソースのグループを作成します。[AWS Resource Groups](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html) を使用すると、同じ AWS リージョンにある AWS リソースを整理し管理することができます。ほとんどのリソースにタグを追加して、組織内のリソースを識別および並べ替えることができます。サポートされているリソースに一括でタグを追加するときは[タグエディタ](https://docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html)を使用します。承認済み製品のポートフォリオを作成、管理し、エンドユーザーに配布して、製品ライフサイクルを管理するときは、[AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/index.html) の使用を検討してください。

## リソース
<a name="resources"></a>

 **関連ドキュメント:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [AWS Trusted Advisor コスト最適化チェック](https://docs.aws.amazon.com/awssupport/latest/user/cost-optimization-checks.html) 
+  [AWS リソースのタグ付け](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [カスタムメトリクスをパブリッシュする](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 

 **関連動画:** 
+  [AWS Trusted Advisor を使用してコストを最適化する方法](https://youtu.be/zcQPufNFhgg) 

 **関連する例:** 
+  [AWS リソースを整理するにはどうすればよいですか?](https://aws.amazon.com/premiumsupport/knowledge-center/resource-groups/)
+  [AWS Trusted Advisor を使用してコストを最適化する方法を教えてください。](https://aws.amazon.com/premiumsupport/knowledge-center/trusted-advisor-cost-optimization/)

# COST04-BP02 廃止プロセスを実装する
<a name="cost_decomissioning_resources_implement_process"></a>

 未使用のリソースを特定して廃止するためのプロセスを実装します。

 **このベストプラクティスを活用しない場合のリスクレベル:** 高 

## 実装のガイダンス
<a name="implementation-guidance"></a>

組織全体で標準化されたプロセスを導入し、未使用のリソースを特定し、排除します。このプロセスでは、組織のすべての要件が満たされていることを検証するために、検索を実行する頻度と、リソースを削除するプロセスを定義する必要があります。

**実装手順**
+  **廃止プロセスを作成、実装する:** ワークロードの開発者や所有者と協力して、ワークロードとそのリソースの廃止プロセスを構築します。このプロセスでは、ワークロードが使用中であるかどうか、およびワークロードの各リソースが使用中であるかどうかを検証する方法を網羅する必要があります。リソースを廃止するために必要なステップを詳述し、サービスから削除すると同時に、規制要件の遵守を確保します。ライセンスやアタッチされたストレージなど、関連するリソースも含める必要があります。廃止プロセスが開始されたことをワークロードの所有者に通知します。

   プロセスの一部として何を確認する必要があるかについては、以下の廃止手順を使用してください。
  +  **廃止されるリソースを特定する:** AWS クラウドで廃止の対象となるリソースを特定します。必要な情報をすべて記録し、廃止スケジュールを設定します。タイムラインでは、プロセス中に予期せぬ問題が発生した場合 (およびそのタイミング) を考慮してください。
  +  **調整とコミュニケーションをする:** ワークロードの所有者と協力して、廃止されるリソースを確認します。
  +  **メタデータを記録してバックアップを作成する:** メタデータ (パブリック IP、リージョン、AZ、VPC、サブネット、セキュリティグループなど) を記録し、本番環境のリソースに必要な場合、または重要なリソースである場合はバックアップ (Amazon Elastic Block Store スナップショットの作成、AMI の取得、キーのエクスポート、証明書のエクスポートなど) を作成します。
  +  **Infrastructure as Code の検証をする:** リソースが CloudFormation、Terraform、AWS Cloud Development Kit (AWS CDK)、またはその他の Infrastructure as Code デプロイツールでデプロイされたかどうかを判断し、必要に応じて再デプロイできるようにします。
  +  **アクセスの防止をする:** リソースが必要かどうかを判断する間にリソースの使用を防ぐため、制限付きコントロールを一定期間適用します。必要に応じて、リソース環境を元の状態に戻せることを確認します。
  +  **内部廃止プロセスを遵守する:** 組織ドメインからのリソースの削除、DNS レコードの廃止、または設定管理ツール、モニタリングツール、自動化ツール、およびセキュリティツールからのリソース削除など、組織の管理タスクと廃止プロセスに従います。

   リソースが Amazon EC2 インスタンスである場合は、次のリストを参照してください。詳細については、「[Amazon EC2 リソースを削除するか、終了する方法を教えてください。](https://aws.amazon.com/premiumsupport/knowledge-center/delete-terminate-ec2/)」を参照してください。
  +  すべての Amazon EC2 インスタンスとロードバランサーを停止または終了します。Amazon EC2 インスタンスは、終了後しばらくの間コンソールに表示されます。実行状態にないインスタンスには課金されません。
  +  Auto Scaling インフラストラクチャを削除する 
  +  すべての専有ホストを解放します。
  +  Amazon EBS ボリュームと Amazon EBS スナップショットをすべて削除します。
  +  すべての Elastic IP アドレスを解放します。
  +  すべての Amazon マシンイメージ (AMI) の登録を解除します。
  +  すべての AWS Elastic Beanstalk 環境を終了します。

   リソースが Amazon Glacier ストレージ内のオブジェクトであり、最小保存期間を満たす前にアーカイブを削除した場合、日割り計算による早期削除料が課金されます。Amazon Glacier の最小保存期間は使用するストレージクラスによって異なります。各ストレージクラスの最小保存期間の概要については、[Amazon S3 ストレージクラスのパフォーマンス](https://aws.amazon.com/s3/storage-classes/?nc=sn&loc=3#Performance_across_the_S3_Storage_Classes)を参照してください。早期削除料金の計算方法の詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。

 次の簡単な廃止プロセスのフローチャートは、廃止手順を概説しています。リソースを廃止する前に、廃止対象として特定したリソースが組織で使用されていないことを確認します。

![\[リソースを廃止するステップを示すフローチャートです。\]](http://docs.aws.amazon.com/ja_jp/wellarchitected/latest/cost-optimization-pillar/images/decommissioning-process-flowchart.png)


## リソース
<a name="resources"></a>

 **関連ドキュメント:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 

 **関連動画:** 
+  [CloudFormation スタックを削除するがいくつかのリソースを保持する](https://www.youtube.com/watch?v=bVmsS8rjuwk) 
+  [Amazon EC2 インスタンスを起動したユーザーを確認するには](https://www.youtube.com/watch?v=SlyAHc5Mv2A) 

 **関連する例:** 
+  [Amazon EC2 リソースを削除するか、終了する方法を教えてください。](https://aws.amazon.com/premiumsupport/knowledge-center/delete-terminate-ec2/)
+  [自分のアカウントで EC2 インスタンスを起動したユーザーを確認するにはどうすればよいですか?](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-user-launched-instance/)

# COST04-BP03 リソースを廃止する
<a name="cost_decomissioning_resources_decommission"></a>

 定期監査や使用状況の変化などのイベントを契機としてリソースを廃止します。通常、廃止は定期的に行われ、手動または自動で実行できます。

 **このベストプラクティスを活用しない場合のリスクレベル:** 中 

## 実装のガイダンス
<a name="implementation-guidance"></a>

使用していないリソースを検索する場合は節減額の程度によって検索頻度と投入する労力を決定する必要があるため、コスト発生額の小さいアカウントの分析は、コスト発生額が高額のアカウントよりも頻度を下げるべきです。イベントの検索および廃止は、製品が寿命を迎えた場合や交換する場合など、ワークロードの状態の変化によって開始されます。イベントの検索および廃止は、市況の変化や製品終了などの外部イベントによって開始される場合もあります。

**実装手順**
+  **リソースを廃止する:** これは、不要になった AWS リソースの廃止段階またはライセンス契約の終了段階です。スナップショットやバックアップの取得などの不要な中断を防ぐために、廃止段階に移行してリソースを廃止する前に完了したすべての最終チェックを完了します。廃止プロセスを使用して、未使用と識別された各リソースを廃止します。

## リソース
<a name="resources"></a>

 **関連ドキュメント:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 

# COST04-BP04 自動的にリソースを廃止する
<a name="cost_decomissioning_resources_decomm_automated"></a>

 重要度が低いリソース、不要なリソース、使用率が低いリソースを特定して廃止する作業を適切に行えるようにワークロードを設計します。

 **このベストプラクティスを活用しない場合のリスクレベル:** 低 

## 実装のガイダンス
<a name="implementation-guidance"></a>

オートメーションを使用して、廃止プロセスの関連コストを削減または削除します。自動廃止するようにワークロードを設計すると、そのライフタイム全体にわたるワークロードコストを削減できます。[Amazon EC2 Auto Scaling](https://aws.amazon.com/ec2/autoscaling/) または [Application Auto Scaling](https://docs.aws.amazon.com/autoscaling/application/userguide) を使用して、廃止プロセスを実行できます。[API または SDK](https://aws.amazon.com/developer/tools/) でカスタムコードを実装し、ワークロードリソースを自動的に廃止することもできます。

 [モダンアプリケーション](https://aws.amazon.com/modern-apps/)はサーバーレスファースト、つまりサーバーレスサービスの採用を優先するように構築されています。AWS は、コンピューティング、インテグレーション、データストアというスタックの 3 つのレイヤーすべてに対応する[サーバーレスサービス](https://aws.amazon.com/serverless/)を開発しました。サーバーレスアーキテクチャを使用すると、トラフィックの少ない間、自動的にスケールアップおよびスケールダウンしてコストを節約できます。

**実装手順**
+ **Amazon EC2 Auto Scaling または Application Auto Scaling を実装する:** サポートされているリソースは Amazon EC2 Auto Scaling または Application Auto Scaling で設定します。これらのサービスは、AWS サービス利用時の使用率とコスト効率の最適化に役立ちます。これらのサービスは、需要が低下すると余分なリソースを自動的に削除するため、過剰な支出を避けることができます。
+ **インスタンスを終了するように CloudWatch を設定する:** [CloudWatch アラーム](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingAlarmActions.html#AddingTerminateActions) を使用してインスタンスを終了するように設定できます。廃止プロセスのメトリクスを使用して、Amazon Elastic Compute Cloud アクションでアラームを実装します。ロールアウトする前に、非本番環境でオペレーションを検証します。
+  **ワークロード内にコードを実装する:** AWS SDK または AWS CLI を使用してワークロードリソースを廃止できます。AWS と統合し、使用されなくなったリソースを終了または削除するコードをアプリケーション内に実装します。
+  **サーバーレスサービスを使用する:** アプリケーションを構築および実行する際は[サーバーレスアーキテクチャ](https://aws.amazon.com/serverless/)と[イベント駆動型アーキテクチャ](https://aws.amazon.com/event-driven-architecture/)を AWS で構築することを優先します。AWS は、自動的に最適化されたリソース使用率と自動廃止 (スケールインとスケールアウト) を提供するサーバーレステクノロジーサービスを提供します。サーバーレスアプリケーションでは、リソース使用率が自動的に最適化され、過剰プロビジョニングの費用が発生しません。

## リソース
<a name="resources"></a>

 **関連ドキュメント:** 
+  [Amazon EC2 Auto Scaling](https://aws.amazon.com/ec2/autoscaling/) 
+  [Amazon EC2 Auto Scaling の使用を開始する](https://docs.aws.amazon.com/autoscaling/ec2/userguide/GettingStartedTutorial.html) 
+  [Application Auto Scaling](https://docs.aws.amazon.com/autoscaling/application/userguide) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [AWS でのサーバーレス](https://aws.amazon.com/serverless/) 
+  [EC2 インスタンスを停止、終了、再起動、または復旧するアラームを作成する](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingAlarmActions.html) 
+  [Amazon CloudWatch アラームへの終了アクションの追加](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingAlarmActions.html#AddingTerminateActions) 

 **関連する例:** 
+  [AWS CloudFormation スタックの自動削除のスケジュール](https://aws.amazon.com/blogs/infrastructure-and-automation/scheduling-automatic-deletion-of-aws-cloudformation-stacks/) 

# COST04-BP05 データ保持ポリシーを適用する
<a name="cost_decomissioning_resources_data_retention"></a>

 サポートされるリソースでデータ保持ポリシーを定義し、組織の要件に従ってオブジェクトの削除を処理します。不要または孤立したリソースや不要になったオブジェクトを、特定して削除します。

 **このベストプラクティスを活用しない場合のリスクレベル:** 中 

 データ保持ポリシーとライフサイクルポリシーを使用して、特定されたリソースの廃止プロセスに関連するコストとストレージコストを削減します。データ保持ポリシーとライフサイクルポリシーを定義してストレージクラスの移行や削除を自動で実行すると、ライフタイム期間の全体的なストレージコストが削減されます。Amazon Data Lifecycle Manager を使用して、Amazon Elastic Block Store スナップショットおよび Amazon EBS-backed Amazon マシンイメージ (AMI) の作成と削除を自動化できます。また、Amazon S3 Intelligent-Tiering または Amazon S3 ライフサイクル設定を使用して、Amazon S3 オブジェクトのライフサイクルを管理できます。また、[API または SDK](https://aws.amazon.com/tools/) を使用してカスタムコードを実装することで、オブジェクトを自動的に削除するライフサイクルポリシーとポリシールールを作成することもできます。

 **実装手順** 
+  **Amazon Data Lifecycle Manager を使用する:** Amazon Data Lifecycle Manager のライフサイクルポリシーを使用して、Amazon EBS スナップショットと Amazon EBS-backed AMI の削除を自動化します。
+  **バケットにライフサイクル設定をセットアップする:** バケットで Amazon S3 ライフサイクル設定を使用して、ビジネス要件に基づいて Amazon S3 がオブジェクトのライフサイクル中に実行するアクションおよびオブジェクトライフサイクルの終了時の削除アクションを定義します。

## リソース
<a name="resources"></a>

 **関連ドキュメント:** 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [Amazon Data Lifecycle Manager](https://docs.aws.amazon.com/dlm/?icmpid=docs_homepage_mgmtgov) 
+  [Amazon S3 のバケットのライフサイクル設定を行う方法](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html) 

 **関連動画:** 
+  [Amazon Data Lifecycle Manager を使用した Amazon EBS スナップショット管理の自動化](https://www.youtube.com/watch?v=RJpEjnVSdi4) 
+  [ライフサイクル設定ルールを使用して Amazon S3 バケットを空にするにはどうすればよいですか?](https://www.youtube.com/watch?v=JfK9vamen9I)

 **関連する例:** 
+  [ライフサイクル設定ルールを使用して Amazon S3 バケットを空にするにはどうすればよいですか?](https://aws.amazon.com/premiumsupport/knowledge-center/s3-empty-bucket-lifecycle-rule/)