
New Relic ではパブリッククラウドのアカウントと連携を行いコストやサービス情報等を収集することができます。New Relic を利用することによりマルチリージョン、マルチアカウント、マルチクラウドの情報を1つの画面に集約して把握することが可能になります。
本BlogではMicrosoft Azureとの連携手順をご紹介します。
※こちらの手順はWeb画面上で行う手順になります。Terraformを使ったコード化の手順に関してはこちらのBlogをご参照ください
Azure側作業
初めにAzure側で必要な情報の取得と設定を行います
(1)Azure Powersell, Azure CLIあるいはAzure Cloud Shell で”az account show” コマンドを実行しモニタリング対象のAzure サブスクリプションIDとテナントIDを確認

(2)Azure Portal にサインインし、Azure Active Directory ->管理->アプリの登録->新規登録 をクリック

(3)任意の名前を設定し、リダイレクトURLに「Web」を選択し「https://www.newrelic.com」を入力し「登録」をクリック

(4)(3)で登録したアプリケーションをクリックし表示されているアプリケーション(クライアントID)を確認

(5)(3)で登録したアプリケーションの管理->証明書とシークレット->新しいクライアントシークレットを追加(有効期限は適切な日数に設定)

(6)作成した時に表示される値をコピーし控えておいてください

(7)サブスクリプションから監視したいサブスクリプションを選択

(8)アクセス制御(IAM) -> 追加 -> ロールの割り当ての追加 をクリック

(9)ロールを閲覧者、メンバーに(3)で作成したアプリを追加し「レビューと割り当て」をクリック

New Relic側作業
(1)Infrastructureをクリック

(2)Azureをクリック

(3)今回はUI上から設定を行うため「Set up Microsoft Azure integrations through the UI.」をクリック

(4)Step4 まで進みAzure Account Name に任意の名前を設定し、前項Azure側で確認したSubscriptuion ID(1)、TenantID(1)、ApplicationID(4)、Client Secret(6)を記載し、Nextをクリック

(5)Azureからデータを取得したいサービスを選択し「Next」をクリック

(6)この様な表示が出れば連携完了です。しばらくすればデータが表示され始めます

(7)データ収集周期などの設定を行いたい場合は、各サービスの「Configure」をクリックすることで変更可能

(8)データ収集周期や収集するリソースグループの制限が可能です

(9)データ収集対象サービスの追加・変更・削除は「Manage Services」をクリック

(10)Azure との統合を解除する場合は「Unlink this account」をクリック。Azure AD側に追加したアプリケーションは別途削除が必要になります

Azure Monitor Integration の設定
Azure Monitor Integration を実施することでAzure Monitorでサポートされている全てのAzure サービスからメトリクスを収集することが可能になります。従来のIntegrationに比べてサポートしているサービスが増えるだけでなく最大1分でデータを収集することが可能になります。
(1)前項までの手順でAzureとの連携が済んでいる状態で「Manage Services」をクリック

(2)データ取得の重複を防ぐためAzure Monitor metricsのみ有効化し「Save changes」をクリック

(3)有効化するために「Configure」をクリック

(4)Data collection and filters の「Enable」をONに変更。データ収集の周期やリソース・タグの設定は必要に応じて設定し「Submit」をクリック

(5)しばらくするとデータが表示される様になります。Query Builderからデータが受信していることを確認することも可能
FROM Metric SELECT count(*) WHERE collector.name = 'azure-monitor' TIMESERIES SINCE 1 hour ago
複数のサブスクリプションを連携させたい場合
サブスクリプションを複数管理している場合もNew Relicで一元管理することが可能です。
別サブスクリプション上でAzure側作業の(1)〜(9)、New Relic側作業(1)〜(3)を進め、(4)で設定したAzure Account Nameを重複しない名前に設定してください。
連携されるとこのように各サブスクリプションを切り替えて見ることができる様になります
Azureを使いこなしている方も他社クラウドと合わせている方も、New Relicを使うことでユーザ体験を一気通貫で見ることができる様になります。
是非New Relicをシステムのオブザーバビリティ実現にご活用ください。
本ブログに掲載されている見解は著者に所属するものであり、必ずしも New Relic 株式会社の公式見解であるわけではありません。また、本ブログには、外部サイトにアクセスするリンクが含まれる場合があります。それらリンク先の内容について、New Relic がいかなる保証も提供することはありません。