Azure のムダ遣いを見つける

この記事は Microsoft Azure Advent Calendar 2017 の15日目の記事です。

私からは特定の Azure のサービスについてではなく、普段 Azure を使っていて困ることとその解決策について書きます。

困ること

  • 請求金額がやけに高いと思ったら、検証で作った VM が生き残っていた
  • イベントのセッション聴きながら作ったリソースが散在してる
  • ちりつもで MSDN サブスクリプションのクレジット を使い切って停止してあとX日しないと復帰しない

クレジットを超過するとこういうことになります。


豆知識ですが、クレジット超過分の制限は一時的に解除できる仕様でした。

解決策

NuGet Gallery | Microsoft.Azure.Management.Fluent 1.4.1

NuGet に Microsoft.Azure.Management.Fluent という Azure のリソース情報を取得するパッケージがあることを知ったので、これを利用して有償のサービスをムダ使いしているものをお知らせする ARMNotify をつくりました。
いや、つくってます。

github.com

みんな大好きな Deploy To Azure ボタンを用意してあるので、簡単に試せるはずです。
ARMNotify は Azure Functions で動かす想定です。
サブスクリプションにアクセスできる Service Principal を用意しておく必要があります。

ARMNotify はムダ使いしていると思われるリソースとそのリソースを操作しているアカウントの情報をまとめてくれます。
現時点のソースコードでは Deploy To Azure でデプロイすると、ARMNotify から Logic App を経由し、指定の WebHookURL までお知らせしてくれます。

f:id:khei-fuji:20171202165324p:plain

VMなどオーソドックスなサービスについては対応してますが、あまり使い馴染んでないサービスについては検証が面倒なので対応できてません。

お願い

ムダ遣いをなくすために、もっといいソリューションがありましたらぜひお聴かせください。

最後に

Azure 始めたばかりの方はこちらもよろしければどうぞ。

kheiakiyama.hateblo.jp