第 3 回 Gov-JAWS で「自治体職員がガバクラの AWS 閉域ネットワークを理解するのにやって良かった個人検証環境」という発表がありました。
Transit Gateway (TGW) や Route 53、Transfer Family、VPC エンドポイントなど、自治体のガバメントクラウド環境のようなエンタープライズの閉域 VPC 環境で使われることの多いネットワーク系 AWS サービスを中心に、個人 AWS アカウントから検証で使ってみるという主旨の発表でした。
これらのエンタープライズ向けのリソースは利用料金(コスト)が高いため、検証が終わったら速やかにリソースを消しましょうとのことだったのですが、パネラーから「検証環境に実際どれくらいのコストがかかっていますか?」と質問がありました。
その場では「月に 4,000 円から 5,000 円くらいですかねー?」との回答だったのですが、実際のコストは気になるところだと思います。せっかくの機会なので、これまでの検証作業でかかってきたコストを定量的に振り返ってみたいと思います(偶然この発表者と完全に同じ個人検証環境を持っているので!)
検証環境の構成
ネットワーク構成
検証作業では、以下のネットワーク構成図のような構成を作ることが多いです。TGW アタッチメントや VPC エンドポイントは時間単位で課金されるため、作業が終わったらすぐに削除しています。
アカウント構成
Organizations と IAM Identity Center でマルチアカウント管理をしています。AWS アカウントは Organizations 管理アカウント、各サービスの委任管理者兼ログ用アカウント、検証用アカウントを 2 個、計 4 つを使っています。
アカウントの数が多いですが、実はそこまでコストに影響していません。後で説明しますが、Security Hub 以外はほとんどアカウントの数がコストに影響していないので、安心して個人でもマルチアカウント管理をやってみましょう。
AWS コストの定量的な分析方法
主な AWS コストの確認方法を紹介しながら、個人検証環境のコストを確認してみます。
基本的に Billing and Cost Management (BCM) を使うことで、様々な粒度のコストを確認することができます。
Cost Explorler で俯瞰的にコストを確認
BCM のマネジメントコンソールから Cost Explorer を見ると、グラフで視覚的にこれまでかかったコストを確認できます。
Organizations 管理アカウントから Cost Explorer を見ると全アカウント分のコストが表示されます。
これは私の検証環境の実際のグラフなのですが、過去 6 か月間ではおおよそ 30 USD 前後で推移していますね。1 ドル 150 円とすると日本円で 4,500 円前後となるので、Gov-JAWS#3 での発表で言っていたコスト感と一致してて安心しました。
サービスごとに内訳が分かれているので、主に何にコストの割合が大きいのか、これまでどういった推移であるかを俯瞰して把握することができます。
内訳を数字でも見てみましょう。なお内訳は CSV 形式のテキストファイルとしてダウンロードできます。
一番大きいコストは Security Hub です。4 アカウントで有効にしていても 10 USD 前後なので、セキュリティ対策としてコストパフォーマンスが良いと思います。個人環境でも有効にすることをおすすめします。
ちなみに Cost Explorer はデフォルトでは 14 か月分の履歴しか保持していませんが、これを最大 38 か月の履歴を保持するよう設定を変更できます。Organizations 環境では組織全体で設定する必要があり、ガバメントクラウドでも最近対応してくれました (ジーキャス!!)
もう少し詳細なコスト内訳を見るために請求書を出力する
Cost Explorer で確認できるコストの内訳は、EC2、VPC、といったサービス単位の粒度でまとめられています。上席や対外に説明する資料としては分かりやすくてよいです。一方、コストをより詳細に分析するためには、EC2 の中でも EBS にいくらかかっているのか、とか、VPC の中でも TGW やエンドポイントにいくらかかっているのか、などを深掘りする必要があります。
この場合、BCM で請求書を出力すると詳細な内訳まで確認できます。
実際に EC2 を稼働させた時間など、課金要素ごとに単価と利用実績が確認できるため、コスト分析にとても役に立ちます。
ガバメントクラウドを使う自治体職員は、可能であれば自団体のガバメントクラウド本番環境の請求書データを一度見てみることをおすすめします。なんとなくイメージで高い安いと思っていたものが、実際に何にどれだけコストがかかっているか定量的に現状を把握することで解像度が格段に上がるので、今後のコスト戦略に必ず役に立ちます。
より詳細なコスト内訳を見るために Data Exports で Cost Usage Report を出力する
請求書で詳細なコスト内訳を出せますが、課金要素と単価単位で合算して集計されているため、さらに詳細な内訳、例えば EC2 のインスタンスごとのコストは請求書では確認できません。
そこで、より詳細なコスト分析を行うため、Data Exports で CUR 2.0 という詳細なコスト内訳が確認できるデータを出力してみましょう。
事前に BCM の Data Exports から CUR 出力の設定をしておく必要があり、出力先の S3 バケットの設定や IAM ロールの設定などが要るため、自治体職員が自分で設定するのはちょっと難しいですが、運用管理補助者に相談するなどして設定しておくことをおすすめします。
出力先が S3 なので Athena などからの分析もできると思いますが、CSV としてダウンロードできるため、以下の画像のように自治体職員にとって慣れ親しんだ Excel で表示することもできます。
Data Exports の設定方法は、以前に次の記事で解説していますので、興味があれば参照してみてください。
TGW、Route 53、Transfer Family のコスト感
参考ですが、TGW、Route 53、Transfer Family を検証で使う時のコスト感(全て東京リージョンとします)を整理してみます。1 日 2 日程度使ったとしても、そこまで大きな金額にまではならないことが分かります。
ただし止め忘れてそのまま放置すると、数万円以上の請求が来てしまいますので、これらのリソースを検証するときは十分に注意しましょう。
TGW の課金要素
TGW は本番では複数 AZ に接続すべきですが、検証用途であれば単一 AZ でよいと思います。仮に 1 か月間フルで使った場合、0.07 USD * 2VPC * 730H = 約 100 USD となります。
リソース | 課金単位 |
---|---|
Transit Gateway アタッチメント使用時間 | 0.07 USD / 1 時間 |
Transit Gateway アタッチメント転送量 | 0.02 USD / 1GB |
Route 53 の課金要素
Route 53 インバウンドエンドポイントは、最低 2 つ以上作成しなければならない仕様のため、使用時間は 2 倍以上を見積もっておく必要があることに注意です。同じように 1 か月間使った場合、0.125 USD * 2 * 730H = 約 180 USD 程度です。
リソース | 課金単位 |
---|---|
Route 53 Resolver Network Interface 使用時間 | 0.125 USD / 1 時間 |
名前解決リクエスト数 | 0.04 USD / 100 万リクエスト当たり |
Route 53 ホストゾーン | 0.05 USD / 1 ホストゾーン |
Transfer Family (SFTP) の課金要素
Transfer Family で SFTP サーバーを立てる場合、シングル構成で 1 か月で 0.3 USD * 730H = 約 220 USD です。
リソース | 課金単位 |
---|---|
SFTP 使用時間 | 0.3 USD / 1 時間 |
SFTP アップロード転送量 | 0.02 USD / 1GB |
ガバメントクラウドにおけるコスト分析の課題
これまで取り上げた AWS コストの確認方法は、いずれも BCM へのアクセスが必要です。そのため、ガバメントクラウドを単独利用方式アカウントで使っている場合は、自治体職員が自ら BCM にアクセスして確認できます。しかし、共同利用方式アカウントの場合は、AWS アカウントをベンダーが管理しており、直接 BCM へアクセスできません。
そのため、共同利用方式の環境については、運用管理補助者の協力を得なければ AWS のコスト内訳を確認することができないという課題があります。
デジタル庁は 自治体情報システムの標準化・ガバメントクラウド移行後の運用経費に係る総合的な対策 の中で「令和7年度中にFinOpsのガイドとして整理・拡充」としており、なんらかの形で自治体側でもコストの分析ができるようになると思われますが、具体的にどのようなものが提供されるのかは現時点 (2025/08) では不明です。
一方で名古屋市のような先進自治体では、独自で FinOps ツールを導入する動きもあります。
今回取り上げた CUR では、確かに詳細データを出力はできますが、かなり詳細なデータとなっているため、ここから自治体職員が自力でコスト分析をするのは結構難しいものがあります。自治体職員でも FinOps ツールをうまく使うことができれば、詳細なコスト分析を自力でできるようになる可能性がありますね。
まとめ
ガバメントクラウドを勉強するための個人 AWS 環境のコスト分析から、最後は実際のガバメントクラウド環境のコスト分析まで話を広げてしまいました。
勉強用の環境でどれくらいのコストがかかるかを知ってもらうことで、自分でもやってみようと思う人の参考になればいいなと思っています。
また、自分の懐を痛めて検証したことで、実際のガバメントクラウドのコスト分析にも役に立つこともお伝えしたいです。
検証環境の作り方について、もし興味があれば以下の記事に手順を全てまとめていますので、良かったら参考にしてください。
Gov-JAWS について
Gov-JAWS#3 のアーカイブを共有します。配信部の皆様いつも本当にありがとうございます!
前回の Gov-JAWS#2 で生成 AI によるガバメントクラウド環境の運用管理補助業務の効率化の事例 「どこにある?」の解決。生成AI(RAG)で効率化するガバメントクラウド運用 を発表されていた Kubota さんによる参加レポートです。
検証環境は IaC にしておくと捗りますよね!
また、ガバメントクラウドなど公共系の AWS 利活用に興味のある方は、ぜひ Gov-JAWS に参加しましょう!