Azure Monitor Private Link Scope (AMPLS) を使ってAzure Monitor(Log Analytics)に閉域接続を行う

目次

はじめに

2020年6月にAzure Monitor Private Link Scope (AMPLS) サービスが爆誕しました。
GAしているという噂の割には執筆時点では自分のサブスクリプションIDを連絡して承認をもらう形式となっています。
とりあえず、上記ドキュメントにある手順を真似て東日本リージョンで動作確認を行ったのでポストします。

ネットワーク構成

一つのVirtual Networkにsubnetを2つ作りました。

一つは仮想マシンを配置するsubnet(default)、もう一つはPrivate link serviceが利用するためのsubnet(privatelink)です。

img

img

default subnetにはNSGを設定しており、OutboundのInternet向けの送信を全て拒否にしています。閉域ネットワーク経由でLog Analyticsに送れるのであれば、この設定でも行けるはずですね。

img

データを収集する仮想マシンとLog Analyticsの準備

仮想マシンはdefault subnetにUbuntu 18.04をデプロイしました。

img

Log Analyticsも同じリソースグループ上に新規作成します。

img

Marketplaceから新規で「private link scope」あたりでフィルタ検索して、該当リソースを探して、作成します。

img

サブスクリプションの選択で、エラーが出るので「詳細情報」のリンクをクリックすると、どこかで見たようなデザインのフォームが開きますので、AzureサブスクリプションIDの他、どういった用途でどれくらい使うのかの質問に全て答えます。

img

数日すると、使えるようになっていますが、リクエストが殺到しているのか?すぐに利用可能にならないケースもあるかもしれません、その場合は気長に待つかしましょう。

で、数日後に先に進めるようになりました。
入力内容は単純で、サブスクリプション、リソースグループのほかはAMPLSのリソース名を指定するくらいです。

img

無事作成できました。

img

Azure Monitor(Log Analytics)との接続

AMPLSのリソースのメニューから、Azure Monitorリソースをクリック後、「+追加」をクリックします。

img

一覧にサブスクリプション内にあるLog AnalyticsやApplication Insightsの一覧が出るので、今回作成したLog Analyticsを選択します。

img

無事追加されました。

img

ここまでの操作を行っても、特にリソースグループ内のリソース一覧に変化はありません。

プライベートエンドポイント接続

同じくAMPLSのメニューからプライベートエンドポイント接続をクリック後、「+プライベートエンドポイント」をクリックします。

img

最初の基本タブでは、プライベートエンドポイントのリソースを作成するリソースグループや、リソース名を指定します。

img

次のリソースタブでは、リソースに種類に「Microsoft.Insights/privateLinkScopes」を選択、リソースから該当リソース(先に作成したAMPLSの名称)、対象サブリソースには「azuremonitor」を選択します。

img

構成タブでは、プライベートエンドポイント作成するvnetとsubnetを選択します。
カスタムDNSを使っていない場合は、Private DNS Zoneも一緒に作成して、VNETとリンクまでここで自動設定してくれます。

img

無事作成が終わると、リソースとしてプライベートエンドポイントと、4つ程Private DNS Zoneが作成されました。

img

ちゃんとプライベートエンドポイントの配置先は指定したvnetのsubnetになっていますね。

img

vnetの接続デバイスを確認すると、privatelink subnet内にプライベートエンドポイント用のNICがたくさん接続されています。

img

同様にPrivate DNS Zoneの内容を一部ですが確認すると、Aレコードの値がプライベートエンドポイントのIPアドレスになっていることも確認できます。

img

先に作成した仮想マシンからdigコマンドで確認すると、ちゃんとプライベートIPアドレスが返ってくるので、構成としては大丈夫そうですね。

img

Log Analyticsの設定

Log Analyticsにも「ネットワーク分断」というメニューが追加されています。

こちらから「パブリックネットワークアクセスでの取り込みの許可」を「いいえ」に変更すると、このLog Analyticsは閉域網からのみログを受信する設定となります。今回はこちらの設定も「いいえ」に変更しました。

img

ここからは普通の手順です。Log Analyticsでログを収集する仮想マシンを選択して、エージェントを有効化します。

img

img

Linuxパフォーマンスカウンタも適当に取得してもらう設定をしておきます。

img

動作確認

10分程待つと、Log Analyticsにデータが溜まってきました。

ハートビートログは1分間隔で届いているようです。

img

パフォーマンスカウンタもちゃんと来ている。

img

とりあえず大丈夫そうですね。

おわりに

今回はUbuntu 18.04で試しましたが、Windowsは未検証です。

Azure Monitor Private Link Scope (AMPLS)にがAzure Monitorとサービスエンドポイントの設定の架け橋になってくれて、比較的簡単に構成できたのではと思います。