Azure Cost Management の更新 – 2020 年 1 月

2020年1月28日 に投稿済み

Program Manager, Azure Cost Management

新入生であっても、業績好調なスタートアップ企業や大手企業に勤める社会人であっても、財務的な制約と無縁ではいられません。このため、支出の品目や支出先を把握し、今後の支出計画を立てる必要があります。誰しも請求額を見て驚くような事態は避けたいはずです。ここで出番となるのが Azure Cost Management です。

マイクロソフトは常に、ユーザーの皆様の課題について理解するよう努めています。Azure Cost Management を通じて、クラウドでコストが発生している場所の的確な把握、不適切な支出パターンの特定と防止、コストの最適化を促進し、ユーザーの皆様が少ないコストでより多くの成果を達成できるよう支援する方法を模索しています。皆様からお寄せいただいたフィードバックに基づいて、今回は以下のような最新の機能強化と機能更新を実施しました。

それでは、順に詳しくご説明しましょう。 

マイクロソフト顧客契約のアカウントでもエクスポートのスケジューリングによる自動レポートが可能

Azure ポータルからコストと使用状況のデータについて詳しく調べられるということは、すでにご存じかと思います。さらに Cost Management の Query という API (英語) から豊富なレポートを得られることや、UsageDetails という API (英語) から使用状況の完全な詳細を余さず確認できることについても、ご存じかもしれません。どちらの方法もアド ホック クエリには大変便利ですが、さらにシンプルな解決策が求められている場合もあるのではないでしょうか。そこで登場するのが、Azure Cost Management のエクスポート機能です。

Azure Cost Management のエクスポート機能は、コストと利用状況のデータを毎日、毎週、あるいは毎月のペースでストレージ アカウントへ自動的に送信します。今月までは、エンタープライズ契約 (EA) または従量課金制 (PAYG) のアカウントでのエクスポートがスケジュール可能となっていました。今月からは、マイクロソフト顧客契約の課金アカウント、サブスクリプション、リソース グループをご利用中のお客様にも、エクスポートをスケジューリングしていただけるようになりました。

エクスポートのスケジューリングについて詳しくは、こちらの記事「チュートリアル:データをエクスポートし、管理する」をご覧ください。 

無効化されたコスト関連機能への認識を高める

エンタープライズ契約 (EA) のアカウントでも、マイクロソフト顧客契約 (MCA) のアカウントでも、価格や請求金額をサブスクリプションのユーザーから見えないようにするオプションが用意されています。このオプションは (例えばベンダーが) 交渉による割引額を明示する意図がない場合に便利です。しかしリソースのデプロイや管理を行うチームが可視性を得られず、コストを効果的に抑え続けることが難しくなるため、予算超過のリスクを招くことにもなります。このリスクを回避するため、コストを確認してもらう必要のないユーザーには Azure リソースのカスタム ロールを適用する一方で、その他のユーザー全員にはコストの全面的な管理および最適化を許可しておくとよいでしょう。

しかしながら、ある組織ではコスト確認機能がオフになっていることに気がついていないこともあるようです。この見落としは、例えば EA 加入契約を更新したり、EA パートナーを変更したりした場合に起こることがあります。この設定に対する認識を高めるため、組織でコスト確認機能がオフにされている場合に、新しくメッセージが表示されるようになります。コストを確認するためのアクセス権を持っていないユーザーには、コスト分析のページで次のようなメッセージが表示されます。

"サブスクリプションのユーザーには Cost Management が有効化されていません。この課金アカウントで [アカウント オーナーは請求金額を確認可能] を有効にする方法について、サブスクリプション アカウントの管理者に問い合わせてください" というメッセージ

また EA 課金アカウントの管理者と MCA 課金プロファイル所有者には、サブスクリプションのユーザーがコストを確認および最適化できないようになっている旨を確認するメッセージが、コスト分析のページ上に表示されます。

エンタープライズ契約 (EA) およびマイクロソフト顧客契約 (MCA) の管理者に向け、コスト分析のページに "サブスクリプションのユーザーがコストを確認および最適化することができません。Cost Management を有効にしてください" という警告と、すべてのユーザーに請求金額の確認を許可するためのリンクが表示されている様子

Azure Cost Management へのアクセスを有効化するための手順は簡単です。バナーをクリックして、EA アカウントの場合は [アカウント オーナーは請求金額を確認可能] を、MCA アカウントの場合は [アカウント オーナーは Azure の請求金額を確認可能] をオンにしてください。自身の課金アカウントでサブスクリプションのユーザーに向けてコストが表示されるかどうか分からない場合は、今すぐ確認して、新しいコストのレポート機能や制御機能、最適化機能をチームのために有効化してみましょう。 

Cost Management ラボの新機能

Cost Management ラボでは、Azure Cost Management の新機能をプレビューし、マイクロソフトと直接やりとりしてフィードバックを共有していただくことができます。これにより、マイクロソフトはお客様のサービス利用状況をよりよく理解し、より調整および最適化されたエクスぺリンスを実現することが可能になっています。Cost Management ラボでプレビューできる機能をいくつかご紹介します。

  • コスト分析の [Home] ビューでより素早く開始
    Azure Cost Management は、コストを把握したり、コストを掘り下げたりするプロセスを開始するための 5 つの組み込みビューを備えています。[Home] ビューを使用することで、これらのビューへより素早くアクセスし、必要な情報を迅速に入手できます。
  • 新機能: Try Preview でプレビュー機能へすぐにアクセス—パブリック ポータルで提供開始
    Cost Management ラボが最新の更新に対する早期アクセスを提供していることは、皆様すでにご存じかと思います。今後はさらに、コスト分析の Try preview コマンドを利用して、パブリック ポータルから個々のプレビュー機能をオプトインできるようになります。

もちろんこれだけではありません。Azure Cost Management の新機能は、すべて Azure portal で正式に実装される 1 週間前に Cost Management ラボでプレビューできるようになります。ご希望の機能などありましたら、ぜひコメントをお寄せください。何をお望みですか? Cost Management ラボはこちらからお試しいただけます。 

管理グループに向けた RBAC のカスタム ロールのプレビュー

管理グループに向けた RBAC のカスタム ロールの定義がサポートされるようになりました。これにより組織のユーザー、グループ、およびアプリに、より詳細なアクセス許可を割り当てられるようになります。例えば、管理グループの階層の作成および管理が可能で、さらに Azure Cost Management + Azure Billing API を使ったコスト管理もできるというロールを定義することが考えられます。今までは、両方の作業を行うためには管理グループ共同作成者Cost Management 共同作成者 という 2 つのロールが必要でしたが、これらのアクセス権を単一のカスタム ロールにまとめて、ロールの割り当てを合理化することも可能になりました。

RBAC に馴染みのない方のためにご説明すると、"Azure リソースのロールベースのアクセス制御 (RBAC)" は、Azure リソース向けのアクセス管理に使われている認証システムです。アクセス権を付与したい管理者は、ユーザーやグループ、サービス プリンシパル、マネージド ID に、特定の領域を対象にしたロールを割り当てます。そうした領域の例としては、リソース グループやサブスクリプション、そして上述の場合のように管理グループなどがあります。Cost Management と Billing は、以下のような組み込みの Azure RBAC ロールをサポートしています。特権が低いロールから順にご紹介します。

  • Cost Management Readerコストに関するデータ、設定 (予算およびエクスポートを含む)、推奨事項を確認できます。
  • Billing Reader課金データを閲覧できます。
  • Readerすべてを表示できますが、変更することはできません。
  • Cost Management 共同作成者コストの確認、コストに関する設定 (予算およびエクスポートを含む) の管理、推奨事項の確認が可能です。
  • Contributorリソースへのアクセス権の付与以外のすべてを管理できます。
  • 所有者リソースへのアクセスを含め、すべてを管理できます。

ほとんどの組織では組み込みのロールで用が足りますが、より特殊なロールが必要となるケースも存在します。RBAC のカスタム ロールは、そのような場合に利用できます。RBAC のカスタム ロールを使い、Azure Resource Manager の API コールに対応するワイルドカード付きの "アクション" を指定することで、独自のアクセス許可のセットを定義できます。許可あるいは不許可 ("NotActions") とするアクションを組み合わせて、固有のニーズに対応させることもできます。最も一般的なアクションの例を以下にいくつか示します。

  • Microsoft.Consumption/*/read – 価格、使用状況、購入、予約、リソース タグを含め、コストおよび使用状況に関するすべてのデータに読み取りアクセスします。
  • Microsoft.Consumption/budgets/* – 予算管理に関するすべての機能にフルアクセスします。
  • Microsoft.CostManagement/*/read – コストおよび使用状況に関するデータと警告に読み取りアクセスします。
  • Microsoft.CostManagement/views/* – コスト分析で使われている共有ビューの管理へフルアクセスします。
  • Microsoft.CostManagement/exports/* – データをストレージへ定期的に自動送信するエクスポートのスケジューリング管理機能にフルアクセスします。
  • Microsoft.CostManagement/cloudConnectors/* – Azure と AWS のコストを同じ管理グループでまとめて管理する AWS クラウド コネクタの管理へフルアクセスします。 

Azure でコストを削減する新しい方法

この 1 か月で、コスト最適化に役立つ機能強化が多数実施されました。ここでは、皆様の参考になると思われるものをいくつかご紹介します。

Azure の使用量データに対する最近の変更

多くの組織が詳細な Azure の使用状況と料金のデータセットに基づいて、使用されている内容を把握したり、どの料金をどのチームに内部的に請求すべきかを判断したり、Azure の予約や Azure ハイブリッド特典を利用してコストを最適化できる機会を検討したりといったことを行っています。使用量データの製品詳細に基づいて分析やセットアップの統合を行っている場合には、以下のサービスのロジックを更新してください。

以下の変更はすべて 1 月 1 日から有効となっています。

また、キーベースのエンタープライズ契約 (EA) billing API が新しい Azure Resource Manager API に置き換えられたことにも留意してください。キーベースの API は加入契約の終了まで有効ですが、Microsoft 顧客契約への更新および移行をもって利用できなくなります。次回更新時の Microsoft 顧客契約への移行を容易にするために、最新バージョンの UsageDetails API (英語) への切り替えも計画してください。 

ドキュメントの更新

数多くのドキュメントが更新されました。ここでは、皆様の参考になると思われるものをいくつかご紹介します。

すべてのドキュメントの更新状況を確認する場合は、GitHub の azure-docs リポジトリで Cost Management ドキュメントの変更履歴 (英語) をご覧ください。不足している情報を見つけた場合は、ドキュメント最上部の [Edit] を選択し、クイック プル リクエストを送信していただくようお願いいたします。

今後について

今回ご紹介したのは、先月から大きく更新された機能のほんの一部です。マイクロソフトは常に皆様からのフィードバックに耳を傾け、改善に取り組んでいます。ぜひ今後もフィードバックをお寄せください。

最新情報、ヒントやテクニックを入手するには、Twitter アカウント @AzureCostMgmt (英語) のフォローや、YouTube チャンネル (英語) へのご登録をお願いいたします。Cost Management のフィードバック フォーラム (英語) では、アイデアの投稿や他のユーザーの意見への投票をお待ちしています。