Azure Arcへの登録 アプリでの接続方法

Azure ホームより、アプリの登録、新規登録を選択します。

名前は任意の名前、アカウントの種類はご自身の適切な環境、リダイレクトURIはWebでurl記載は不要です。

作成後、アプリケーション(クライアントID)をメモしておきます。

作成したアプリ内の左側メニュー、証明書とシークレットに移動し、新しいクライアントシークレットを作成します。できるだけ最長の2年間で作成します。その時に一度だけ値が表示されるので、忘れずに備忘録しておきます。

urlの手順に沿って「az ad sp create-for-rbac -n “” –role contributor –scopes “/subscriptions/”」を実施すると、アプリの登録まで自動で行われますが、有効期間は1年間と短いため、ここでは先にアプリ登録を行う手順を紹介します。

仮にurl通りに実施すると、Azure CLIのインストールが必要となり、Linuxに余計なリソースを増してしまいます。Azure CLIが不要であれば、アプリの登録を先に行う本手順を推奨します。

アプリ作成後は、Log Analyticsを登録したリソースグループにアクセス権(共同作成者)を付与します。画像では別のアプリに赤枠がついていますが、ミスです。ArcServerの方です。

https://learn.microsoft.com/ja-jp/azure/cloud-adoption-framework/manage/hybrid/server/best-practices/onboard-server-linux

※抜粋

サーバーを Azure Arc に接続するには、共同作成者ロールが割り当てられた Azure サービス プリンシパルが必要です。

IAM > ロールの割り当ての追加 > 特権管理者ロール > 共同作成者

次は、Arcサーバーへの登録準備を実施します。

Linuxの場合

az_connect_linux シェル スクリプトをダウンロードします。

https://learn.microsoft.com/ja-jp/azure/cloud-adoption-framework/manage/hybrid/server/best-practices/onboard-server-linux#:~:text=az_connect_linux%20%E3%82%B7%E3%82%A7%E3%83%AB%20%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%82%92%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%BE%E3%81%99%E3%80%82

下記のURLから、内容をコピーし、自身の環境に合わせて「export 箇所」を修正します。

https://github.com/microsoft/azure_arc/blob/main/azure_arc_servers_jumpstart/scripts/az_connect_linux.sh

画像の水色の個所とresourceGroup、locationを修正してください。

修正したファイルに対し、実行権限を付与、シェルとして実行を行います。スペックにもよりますが、完了まで30分〜数時間かかります。問題なければ、そのままAzure Arcに接続でき、Azure上でも確認することができます。

接続失敗した場合は、exportに入力した何かが間違っています。

その場合は、既にインストールは完了してるため、接続だけリトライできるように wgetの行はコメント化し、再度シェルを実行します。

Windowsの場合

オンプレミスのマシンに「Connected Machine エージェント」をインストールします。

https://learn.microsoft.com/ja-jp/azure/azure-arc/servers/manage-agent?tabs=windows

Powershellから実行します。

# 構文

azcmagent connect --service-principal-id "アプリケーション (クライアント) ID" --service-principal-secret "値" --tenant-id "テナントID"  --subscription-id  "サブスクリプションID" --resource-group  "リソースグループ名"  --location "リージョン"

Azure Arc サーバーに登録されました。