Google Cloud Well-Architected Framework の費用最適化の柱におけるこの原則では、常に変化し進化するビジネス目標に基づいてクラウド デプロイの費用を最適化するための推奨事項が示されています。
ビジネスの成長と進化に伴い、クラウド ワークロードはリソース要件と使用パターンの変化に適応する必要があります。クラウド支出から最大限の価値を引き出すには、ビジネスの目標をサポートしながら、費用対効果を維持する必要があります。これには、継続的な改善と最適化に重点を置いた、プロアクティブで適応性の高いアプローチが必要です。
原則の概要
費用を継続的に最適化するには、クラウド環境を事前にモニタリングして分析し、現在の要件を満たすように適切な調整を行う必要があります。エンドユーザーのエクスペリエンスに直接影響し、ビジネス目標に沿って、継続的な改善のための分析情報を提供する重要業績評価指標(KPI)にモニタリングの取り組みを集中させます。このアプローチにより、非効率性を特定して対処し、変化するニーズに適応して、クラウド支出を戦略的なビジネス目標に継続的に合わせることができます。包括的なオブザーバビリティと費用対効果のバランスを取るには、リソース使用量のモニタリングの費用とメリットを理解し、適切なプロセス改善と最適化戦略を使用します。
推奨事項
Google Cloud 環境を効果的にモニタリングし、費用を継続的に最適化するには、次の推奨事項を検討してください。
ビジネスに関連する指標に注目する
効果的なモニタリングは、ビジネスとお客様にとって最も重要な指標を特定することから始まります。具体的には次のような指標があります。
- ユーザー エクスペリエンスの指標: レイテンシ、エラー率、スループット、顧客満足度の指標は、アプリケーションを使用する際のエンドユーザーのエクスペリエンスを把握するのに役立ちます。
- ビジネス成果の指標: 収益、顧客の増加、エンゲージメントをリソース使用量と関連付けることで、費用最適化の機会を特定できます。
- DevOps Research & Assessment(DORA)指標: デプロイ頻度、変更のリードタイム、変更時の障害率、復元時間などの指標は、ソフトウェア デリバリー プロセスの効率性と信頼性に関する分析情報を提供します。これらの指標を改善することで、生産性の向上、ダウンタイムの短縮、費用の最適化を実現できます。
- サイト信頼性エンジニアリング(SRE)指標: エラー バジェットは、チームが許容可能なサービス中断レベルを定量化して管理するのに役立ちます。信頼性に対する明確な期待値を設定することで、エラー バジェットはチームが安全マージンを把握し、より自信を持ってイノベーションと変更のデプロイを行えるようにします。このプロアクティブなアプローチにより、イノベーションと安定性のバランスが促進され、大規模なサービス停止や長時間のダウンタイムに伴う過剰な運用コストを回避できます。
オブザーバビリティを使用してリソースを最適化する
オブザーバビリティを使用して、クラウド デプロイメントのリソース ボトルネックと使用率の低いリソースを特定するための推奨事項は次のとおりです。
- リソース使用率をモニタリングする: リソース使用率の指標を使用して、十分に活用されていないGoogle Cloud リソースを特定します。たとえば、CPU やメモリ使用率などの指標を使用して、アイドル状態の VM リソースを特定します。Google Kubernetes Engine(GKE)では、費用の内訳と費用に関連する最適化指標の詳細を確認できます。Google Cloud VMware Engine の場合は、リソース使用率を確認して、CUD、ストレージ消費量、ESXi のサイズ適正化を最適化します。
- クラウドの推奨事項を使用する: Active Assist は、クラウド運用の最適化に役立つインテリジェントなツールのポートフォリオです。これらのツールは、コスト削減、パフォーマンスの向上、セキュリティの改善、サステナビリティに重点を置いた意思決定に役立つ、実用的な推奨事項を提供します。たとえば、VM のサイズ適正化に関する分析情報は、リソース割り当ての最適化と不要な支出の回避に役立ちます。
- リソース使用率とパフォーマンスを関連付ける: リソース使用率とアプリケーション パフォーマンスの関係を分析して、ユーザー エクスペリエンスに影響を与えることなく、より安価なリソースにダウングレードできるかどうかを判断します。
トラブルシューティングのニーズと費用のバランスを取る
詳細なオブザーバビリティ データは、問題の診断とトラブルシューティングに役立ちます。ただし、過剰な量のオブザーバビリティ データを保存したり、不要なデータを外部モニタリング ツールにエクスポートしたりすると、不要な費用が発生する可能性があります。効率的なトラブルシューティングを行うには、次の推奨事項を検討してください。
- トラブルシューティングに十分なデータを収集する: モニタリング ソリューションが、問題が発生したときに効率的に診断して解決するために十分なデータをキャプチャしていることを確認します。このデータには、さまざまな粒度のログ、トレース、指標が含まれる場合があります。
- サンプリングと集計を使用する: サンプリングと集計の手法を使用して、詳細なデータの必要性とコストのバランスを取ります。このアプローチにより、過剰なストレージ費用を発生させることなく、代表的なデータを収集できます。
- モニタリング ツールとサービスの料金モデルを理解する: さまざまなモニタリング ソリューションを評価し、プロジェクトの特定のニーズ、予算、使用パターンに沿ったオプションを選択します。選択する際は、データ量、保持要件、必要な機能などの要素を考慮してください。
- モニタリング構成を定期的に確認する: 不要な指標やログを削除して、過剰なデータの収集を回避します。
ロールに合わせてデータの収集を調整し、ロール固有の保持ポリシーを設定する
さまざまなロールの特定のデータニーズを考慮します。たとえば、デベロッパーは主にトレースとアプリケーション レベルのログへのアクセスが必要になる場合があります。一方、IT 管理者はシステムログとインフラストラクチャ指標に重点を置く場合があります。データ収集をカスタマイズすることで、不要なストレージ費用を削減し、関連性のない情報でユーザーを圧倒することを回避できます。
また、各ロールのニーズと規制要件に基づいて保持ポリシーを定義することもできます。たとえば、デベロッパーは短期間の詳細なログにアクセスする必要がある一方で、財務アナリストは長期的なデータを必要とする場合があります。
規制要件とコンプライアンス要件を考慮する
特定の業界では、規制要件によりデータの保持が義務付けられています。法的リスクや財務リスクを回避するには、モニタリングとデータの保持のプラクティスが関連する規制の遵守に役立つようにする必要があります。同時に、費用効率を維持する必要があります。以下の推奨事項を参考にしてください。
- 業界または地域に固有のデータの保持要件を特定し、モニタリング戦略がそれらの要件を満たしていることを確認します。
- 適切なデータ アーカイブと取得メカニズムを実装して、ストレージ費用を最小限に抑えながら、監査とコンプライアンスのニーズを満たします。
スマート アラートを実装する
アラートは、問題をタイムリーに検出して解決するのに役立ちます。ただし、情報を常に把握できるアプローチと、通知が多すぎるアプローチのバランスを取る必要があります。スマート アラート システムを設計することで、ビジネスへの影響が大きい重要な問題に優先順位を付けることができます。以下の推奨事項を参考にしてください。
- お客様に影響する問題を優先する: ウェブサイトの停止、レスポンス時間の遅延、トランザクションの失敗など、カスタマー エクスペリエンスに直接影響する問題に対して迅速にトリガーされるアラートを設計します。
- 一時的な問題に合わせて調整する: 適切なしきい値と遅延メカニズムを使用して、一時的な問題や、お客様に影響しない自己修復システムの問題に対する不要なアラートを回避します。
- アラートの重大度をカスタマイズする: 重大なアラートと重大でないアラートを区別して、最も緊急性の高い問題にすぐに対応できるようにします。
- 通知チャンネルを賢く使用する: アラートの重大度と緊急度に基づいて、アラート通知に適したチャンネル(通知メール、SMS、ページング)を選択します。