適当にAzureサービス使ったら4万円課金された話。

この前の記事には背景がありまして。

prius.hateblo.jp

背景

半年前くらい、少し時間が出来たのでAzureサービスをいろいろ触ってみてました。その中の一つの「メディアサービス」というのがあり、何やら自分が作った動画をUPしてAzureCDN経由でインターネットユーザーに提供できるとのこと。こいつぁ夢の技術だわ!ってことでメディア関係のアカウントを作成しキャストをONにし動画をUP。Internetに公開し「Azureってエンタメ関係も強いんだ!すげー!」となったのですが…。これやるならyoutubeでよくね?という事に気づき、動画の公開を停止したのでした。

その1か月後。ふとAzureの請求を見てみると4万円とのこと。どうも、メディア関係のアカウントをいろいろいじっていた時に「ストリーミング」をONにしたまた放置していた様子。ストリーミングという名前から想像できるよう、時間当たりの課金額はすさまじく、1か月たらずで4万円の課金になったのでした。1か月の間、真っ暗な画面をストリーミングしていただけで…。

ネット上ではアカウントハック起因の救済措置のレポートも上がっていましたが、僕はれっきと自分でAzureサービスを使っての課金なので、授業料として4万円払いましたとさ。

まとめ

結局悪いのは、当時のAzureで課金アラートが設定できなかったことでした。通常Azureの使用量が月に5000円程度なので、例えば1週間で5000円使っていれば明らかに怪しい。その後課金アラートが設定され、とりあえずの対応はできるようになったのですが。

クラウド運用で課金管理ってのは最も重要な運用要素の1つだと思います。 というのは、理論上、リソースが無限に作れちゃうので、課金管理が唯一無二のリソース管理ポイントなんですよね。 もちろん、何らかの仕組みで「各部署につき、A2クラスの仮想マシンを10個まで作ってよい!それ以上は制限する!」と入口で管理することもできますが(多分)、クラウド時代においてはナンセンスであり「各部署につき、1月10000円まで自由に使ってよい」と、スマートに出口=課金で管理したい。

そのためには、前述のbillingAPI使ったり、もうちょい便利なサードパーティ製品(CloudCruiserなど)を使ってもいいと思います。特に会社でやる時はね!