各種 AWS サービスのデータ転送コストを監視、分析、最適化する方法を理解する必要があります。
解決策
データ転送コストを監視する
以下のベストプラクティスを通じてデータ転送コストを監視します。
Cost Explorer を有効にする
ガイダンスについては、「Using AWS Cost Explorer to analyze data transfer costs」(AWS Cost Explorer を使用してデータ転送コストを分析する) を参照してください。
AWS Budgets を設定する
予算を作成して、データ転送に関する支出を追跡および管理します。コストが定義したしきい値に近づいたり超えたりしたときのアラートを設定します。
CloudWatch を使用して使用状況を監視する
仮想プライベートクラウド (VPC) のインターネットゲートウェイまたは NAT デバイス用に Amazon CloudWatch ゲートウェイ帯域幅使用率メトリクスを設定します。データ転送、インターネットゲートウェイ、または NAT ゲートウェイの使用量が異常に急増した場合にアラートを作成します。
コスト配分タグを実装する
コスト配分タグを使用して、特定のリソースまたはプロジェクトに関連するコストを追跡します。詳細な分析を行うには、Cost Explorer でコスト配分タグを有効にします。
データ転送コストを分析する
監視を設定したら、コストを分析して最適化すべき領域を特定します。
Cost and Usage Report を確認する
AWS Cost and Usage Report で UsageType "DataTransfer-Out-Bytes" を探します。これらのレコードには、AWS リージョンの請求コードを含むプレフィックスが含まれています。傾向を分析し、データ転送コストが高いサービスやリソースを特定します。
Amazon ECS/Amazon EKS 用の Container Insights を使用する
コンテナサービスを使用している場合は、Container Insights をオンにして、データ転送量の多いサービスを特定します。
アベイラビリティーゾーン間のトラフィックを調査する
EC2 InterZone トラフィックを分析して、コスト要因を特定します。
データ転送コストを最適化する
分析に基づいて、これらの最適化戦略を実装してください。
Amazon EKS の設定を最適化する
ノードグループ設定を更新して、アベイラビリティーゾーン間のトラフィックを最小限に抑えます。
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI のエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
topology.kubernetes.io/zone: preferencetopologySpreadConstraints:
- maxSkew: 1
- topologyKey: topology.kubernetes.io/zone - whenUnsatisfiable: ScheduleAnyway
トラフィック管理を改善するには、サービスメッシュの実装を検討してください。
AWS PrivateLink を使用する
VPC と AWS サービス間のプライベート接続を確立して、インターネットデータ転送料金を削減します。
データベースアクセスを最適化する
VPC エンドポイントを実装する
Amazon S3 や Amazon DynamoDB などの AWS サービス用に VPC エンドポイントを使用すると、インターネットゲートウェイや NAT デバイスの必要性を軽減できます。
ネットワークアーキテクチャを確認して最適化する
ロードバランサー設定で Amazon ECS を最適化する
ロードバランサーの設定を確認および調整して、アベイラビリティーゾーン間の不要なトラフィックを最小限に抑えます。