広告

Arc 対応サーバー構築

Arc

Arc 対応サーバーとは

Azure の "外部"、企業ネットワーク上、または他のクラウド プロバイダー上でホストされている Windows や Linux の物理サーバーと仮想マシンを Arc 対応サーバーにすると、Azure でサーバーを管理ができ、様々な Azure 管理機能の利用できるようになります。

対象範囲:

  • 物理サーバー
  • VMware (Azure VMware Solution を含む) の VM
  • Azure Stack HCI の VM
  • その他のクラウド環境 の VM

注意点

  • Linux の場合、Azure Arc プロセスの管理には systemd が必要
  • Linux ホスト名または Windows コンピューター名で予約語または商標が使用されている場合は非サポート
  • Amazon Linux の場合、以下の機能はサポートしない
    • Azure Monitor VM 分析情報で使用される依存関係エージェント
    • Azure Automation の Update Management

その他

  • Connected Machine エージェント:Azure Arc 対応サーバーにインストールするエージェント
    • このエージェントは Azure Monitor のエージェントとは別物
    • 監視機能を利用するには、別途 Azure Monitor エージェントが必要
    • 以下を行うには Azure Monitor エージェントが必要:
    • OS とワークロードの監視
    • Automation Runbook、または Update Management などのソリューションを使用して管理する
    • Microsoft Defender for Cloud などの他の Azure サービスを使用する

前提条件

  • 利用可能な Azure サブスクリプション
  • Azure の権限
    • マシンをオンボードするには、マシンが管理されるリソース グループに対する「Azure Connected Machine のオンボード」または「共同作成者」権限が必要
    • マシンの読み取り、変更、削除を行うには、リソース グループに対する「Azure Connected Machine のリソース管理者」権限が必要
    • 「スクリプトの生成」でドロップダウン リストからリソース グループを選択するには、そのリソース グループに対する「閲覧者権限」が必要
  • マシンの管理者権限
    • Linux:root
    • Windows:Administrator グループ メンバー
  • サブスクリプションに以下のリソース プロバイダー登録
    • Microsoft.HybridCompute
    • Microsoft.GuestConfiguration
    • Microsoft.HybridConnectivity
  • Connected Machine エージェンの前提条件
  • ソフトウェア要件
  • Connected Machine エージェンのネットワーク要件

Acr 対応サーバー構築

前提

  • Acr 対応サーバーは Azure VM を使う
    • デフォルトでは、Azure VM は利用できないので、準備が必要
  • OS:ubuntu server 22.04 LTS - Gen 2 (Azure Marketplace)

Azure の VM で検証するための準備

今回は Azure VM を Arc 対応サーバーにして、試していきますが、Azure VM はデフォルトでエージェントなどでAzure に管理されているため、デフォルトの Azure VM を Arc 対応サーバーにすることはできません。
ただ、以下のことを事前に実施すれば、Azure VM でも Arc 対応サーバーにすることができるようになります。

  • Azure VM にデプロイされている VM 拡張機能 (Log Analytics エージェントなど) を削除します。
  • Azure Windows または Linux ゲスト エージェントを無効にします。
  • Azure Instance Metadata Service (IMDS) へのアクセスを拒否するセキュリティ規則を作成します。

今回は Linux の Azure VM の場合の実施内容を以下で纏めます。

  1. Azure ポータルにて、「対象の仮想マシン」→「拡張機能とアプリケーション」に移動し、拡張機能が存在する場合、アンインストールする
  2. VM にログインし、以下のコマンドを実行する

    # Azure VM ゲスト エージェントを無効にする
    
    current_hostname=$(hostname)
    sudo service walinuxagent stop
    sudo waagent -deprovision -force
    sudo rm -rf /var/lib/waagent
    sudo hostnamectl set-hostname $current_hostname
  3. Azure IMDS エンドポイントへのアクセスをブロックする

    # Uncomplicated Firewall (UFW) で、Azure IMDS エンドポイントをブロックする
    # ubuntu の場合、以下のコマンドを実行する
    sudo ufw --force enable
    sudo ufw deny out from any to 169.254.169.254
    sudo ufw default allow incoming
    
    # iptables でも問題ないが、再起動するたびに実施する必要がある
    # iptables -A OUTPUT -d 169.254.169.254 -j DROP

インストール スクリプトを生成する

  1. Azure ポータルにログインし、検索で「サーバー」または「Azure Arc」を入手し、「サーバー - Azure Arc」を選択する
  2. 「サーバー」項目を選択し、「+追加」をクリックする
  3. 「単一サーバーの追加」の「スクリプトの生成」をクリックする
  4. 「Azure Arc を使用してサーバーを追加」-「前提条件」で、「次へ」をクリックする
  5. 「Azure Arc を使用してサーバーを追加」-「リソースの詳細」で、情報を入力して「次へ」をクリックする
  6. 「Azure Arc を使用してサーバーを追加」-「タグ」で、必要に応じて、情報を入力して「次へ」をクリックする
  7. 「Azure Arc を使用してサーバーを追加」-「スクリプトのダウンロードと実行」で、「ダウンロード」をクリックする
  8. ダウンロードしたスクリプトを Acr 対応サーバーにコピーする
    • スクリプトファイル名:OnboardingScript.sh
  9. サーバーにログインし、以下のコマンドを実行する
    • 途中で認証要求が表示されるので、指示に従って、認証してください。
      # スクリプトを ~ ディレクトリにコピーした場合
      bash ~/OnboardingScript.sh
  10. 完了したら、「サーバー - Azure Arc」-「サーバー」でサーバーを確認可能

参考

コメント

タイトルとURLをコピーしました