G-gen の武井です。当記事では、Cloud Billing の機能の一つである FinOps ハブ を使い、Google Cloud のコストを最適化する方法を解説します。
FinOps ハブとは
FinOps ハブとは、Cloud Billing と Recommender(AI による推奨事項を管理する仕組み)によって収集された過去の使用状況に基づき、クラウド利用コストに関するダッシュボードを自動的に生成してくれるサービス(Cloud Billing の一機能)です。
後述する指標にもとづき、コスト最適化につながる推奨事項をダッシュボード上で表示してくれるため、それらをもとに費用の削減や改善のための具体的なアクションにつなげることができます。
FinOps ハブのダッシュボード
表示方法
Google Cloud コンソールから以下の方法でダッシュボードを表示できます。
- 検索バーに
FinOps
と入力し、FinOps ハブ
を選択 請求先アカウント
を選択し、FINOPS ハブに移動
をクリック- FinOps ダッシュボードが表示
画面説明
ダッシュボードでは以下の情報が確認できます。(2024年10月時点)
項目 | 概要 |
---|---|
Optimization summary(最適化サマリー) | ・先月の削減額 ・現時点での推奨事項総数 ・トータルの削減見込み額 / 月 |
削減見込み / 月 | ・すべての推奨事項一覧 ・各推奨事項の削減見込額 / 月 |
上位の推奨事項 | ・すべての推奨事項のうち費用削減額の上位 10 件 |
FinOps score | ・数値化された削減実績 ・スコア改善のヒント |
CUD optimization | ・確約利用割引による前月の削減額 ・確約利用割引による最適化率 |
詳細については以下の公式ガイドをご確認ください。
Recommender による推奨事項
Recommender によって、以下の指標にもとづく推奨事項が 収集・表示されます。(2024年10月時点)
サービス | 指標 | 概要 |
---|---|---|
Cloud Run | CPU 割り当て | 常時割り当て CPU への切り替え |
Cloud SQL | アイドル状態インスタンス | 未使用インスタンスの削除 |
Cloud SQL | オーバープロビジョニング インスタンス | インスタンスサイズの適正化 |
Compute Engine | 確約利用割引(CUD) | コミットメントによるコスト削減 |
Compute Engine | アイドル状態のカスタム イメージ | 未使用イメージの削除 |
Compute Engine | アイドル状態の IP アドレス | 未使用アドレスの削除 |
Compute Engine | アイドル状態の永続ディスク | 未使用ディスクのバックアップ後削除 |
Compute Engine | アイドル状態の VM | 未使用 VM マシンの削除 |
Compute Engine | アイドル状態の予約 | 未使用のゾーンリソース予約の削除 |
Compute Engine | マネージド インスタンス グループ(MIG)のマシンタイプ | MIG マシンタイプの適正化 |
Compute Engine | VM マシンタイプ | MIG マシンタイプの適正化 |
Resource Manager | 放置されたプロジェクト | 未使用プロジェクトの再利用または削除 |
必要な権限
FinOps ハブを利用するプリンシパルが、請求先アカウントに対し、以下の公式ガイドに記載の権限を含む IAM ロールを持っている必要があります。
例として、請求先アカウント閲覧者ロール(roles/billing.viewer)
や 請求先アカウント管理者ロール(roles/billing.admin)
が挙げられます。
なお、権限から事前定義ロール(IAM ロール)を逆引き検索する場合、以下に記載の方法が便利です。
料金
FinOps ハブは無料でご利用いただけます。
実際に試してみた
推奨事項の確認
ダッシュボード上の削減見込み/月 > View all recommendations
から、推奨事項の一覧情報を確認します。
そのうち今回は、アイドル状態のIPアドレス
を削除します。
なお、フラグのついている推奨事項については、同じくダッシュボードにある上位の推奨事項
からも確認可能です。
詳細の確認
削減見込み/月
列のリンクから各推奨事項の詳細に遷移できますが、権限がないと以下のようなエラーとなります。
前述の権限とは別に、範囲
列に記載されたプロジェクト上の Google Cloud リソースに対し、少なくともそれらを閲覧できる権限が別途必要です。
今回の場合、対象のプロジェクトで 閲覧者ロール(roles/viewer)
を付与すること閲覧できました。
請求先アカウントに紐づくプロジェクトが多い場合は、ご利用いただいている Google Cloud 環境の階層構造をご確認の上、上位のフォルダリソースや組織リソースに対して付与すると良いでしょう。
リソースの削除
前述の画面から直接リソースを削除することはできません。あくまで推奨事項の提示までが当サービスのスコープです。
当該プロジェクトにて直接削除するか、あるいはプロジェクト管理者に別途依頼する必要があります。(赤枠部分は公式ドキュメントへのリンク )
ダッシュボードへの反映
今回の検証では、削除したリソースに関する情報はリアルタイムで反映されませんでした。
一定期間後あらためてダッシュボードをご確認いただくと、FinOps スコアや削減見込額などへの反映が確認できます。
関連記事
武井 祐介 (記事一覧)
クラウドソリューション部所属。G-gen唯一の山梨県在住エンジニア
Google Cloud Partner Top Engineer 2024 に選出。IaC や CI/CD 周りのサービスやプロダクトが興味分野です。
趣味はロードバイク、ロードレースやサッカー観戦です。
Follow @ggenyutakei