🦈

Visual Studio Code でクラウドインフラのコストを知る方法

2023/03/14に公開

Visual Studio Code でクラウドインフラのコストを知る方法

私はterraformのコードを書くとき、EditorにはHashiCorpのTerraform拡張をインストールしたVisual Studio Codeを使います。
terraformのコードをEditorに書いたとき、下記のようにコストを表示してくれる拡張があったのでご紹介。

Infracost VSCode Extensionについて

Infracost VSCode Extensionを使うと先程のようなことができます。

https://marketplace.visualstudio.com/items?itemName=Infracost.infracost

合わせて、terraform 拡張もインストールする必要ありです

https://marketplace.visualstudio.com/items?itemName=HashiCorp.terraform

InfracostはterraformのコードからAWS等cloudリソースのコストを見積もりしてくれるもので
Githubやgitlab等のCI/CD integrationについては無料のアカウントにて利用できますが
今回のようにVisual Studio Infracost 拡張を初回利用する場合、下記のように有料アカウントのInfracost CloudでのSSOログインが必要となりそうでした。

今回は、無料期間があったのでその無料期間でお試してみています。

pricingについては下記で
https://www.infracost.io/pricing/

GCPやAzureもterraformからコストがわかる

前述の例ではAWSのものでしたがGCPとAzureのInfracloudが対応しているcloudについても
Editor上でのコスト表示が可能でした。

GCPや

Azureも

日本円でみたい場合

brewなどでcliをインストールして下記のように設定すれば可能です

$ brew install infracost
$ infracost configure set currency JPY

※ここでのレートは各社で設定しているレートだろうか?

どのregionで計算されるか

terraform providerでのregionを変更すると追従していそうでした

⬇環境変数で対象のREGIONを上書きする方法もありそうでした⬇

https://www.infracost.io/docs/features/environment_variables/#environment-variables-to-override-cloud-provider-region

AWS のReserved Instance割引などについて

割引についてInfracost cloudの有料機能のCustom price books & discountsあたりで設定できそうかとみてみましたが、現状は代理店経由での一律の割引などには対応できていそう
でしたが、Reserved Instanceで購入した分をAWSアカウントの情報と連携できて、いい感じに計算してくれるようなことはできなさそうでした。

https://www.infracost.io/docs/infracost_cloud/custom_price_books/

まとめ

infracostの機能をvscode上から利用できるpluginのざっくりと紹介をしました。
無料期間終了後もずっと使いたいばあい、有料機能の価格設定が$50/moなので
個人で使う分にはちょっと高すぎるようなきもしますが
有料機能のPolicies in pull requests (e.g. gp2 to gp3)Access to SOC2 Type II reportなどに価値を見いだせるのであればありなのでしょうか?

Discussion