Azure Arc の概要と導入まで

目次

  1. はじめに
  2. Azure Arc とは
  3. Azure Arc の機能について
  4. 導入までの流れ
    4-1. 前提条件の確認
    4-2. インストール用スクリプトの発行
    4-3. インストール用スクリプトの配置と実行
  5. まとめ
  6. 参考資料

1. はじめに

お久しぶりです、今回再び記事を書かせていただくK3104です。今回、社内利用としてオンプレミスサーバーを対象にAzure Arcを経由しAzure 上で管理を行うことになりました。Azure以外の環境で動作するサーバーを管理する方法として、Azure Arcを使用してオンボードする方法がありますが、そもそもAzure Arcについてあまり知らず、あらためて検証作業を実施しました。今回、本記事では自身の振り返りという意味も含め、導入方法や機能等について記載していこうと思います。

2. Azure Arc とは

Azure Arc とは、Microsoft社が提供しているサービスの一種で、Azure以外で稼働している
物理サーバー、他のクラウドプロバイダー(AWSやGCP等)の仮想サーバー、さらに、Kubernetes
クラスターやデータベースなどのリソースも、Azureポータルを通じて一元管理することが
できます。また、Azure Arcを通してAzureのさまざまなサービスを利用できるようになります。

3. Azure Arc の機能について

Azure Arcでは、オンプレミス、マルチクラウド、エッジ環境にあるサーバー、Kubernetesクラスター、データサービスをAzureに接続し、Azureで提供されるリソース管理、ガバナンス、
セキュリティ、監視機能を拡張して、一元的に管理が可能です。
具体的にどういったものか、以下説明していきます。

  1.  物理・仮想サーバーの管理:オンプレもクラウドも一括管理
    Azure Arcを使えば、オンプレミスや他社クラウド(AWS、GCPなど)のWindows/Linux
    サーバーをAzureに登録し、まるでAzure VMのように管理できます。
    • Azureポータルからサーバー状態確認、タグ付け、リソースグループへの割り当てが可能
    • Azure PolicyやAzure Monitorと連携して、セキュリティや監視を一元化
    • Update Managementでパッチ適用を自動化

  2.  Kubernetesの管理:どこにあってもAzureから制御
    オンプレミスや他クラウド上のKubernetesクラスターも、Azure Arcを通じてAzureから
    管理できます。
    • GitOps(Flux)による構成の自動化
    • Azure PolicyでKubernetesリソースのガバナンスを強化
    • Azure Monitorでクラスターの状態を可視化

  3.  データサービスのローカル実行:クラウドの力をローカルに
    Azure Arcは、オンプレミス環境でもAzure SQL Managed InstanceやPostgreSQL Hyperscaleなどのデータベースサービスを利用可能にします。
    • クラウドと同様のスケーラビリティ、バックアップ、監視機能をローカルで実現
    • データ主権やレイテンシ要件に対応
    • 自動スケーリングや高可用性もサポート

  4.  Azureのネイティブサービスとの統合:一貫した運用を実現
    Azure Arcで接続されたリソースは、Azureの他のサービスとシームレスに連携できます。
    • Azure Resource Manager (ARM):すべてのArcリソースをAzureリソースとして扱える
    • Azure Policy:ガバナンスとコンプライアンスの統一
    • Azure Monitor:ログとメトリクスの収集・可視化
    • Microsoft Defender for Cloud:セキュリティ脅威の検出と対応

4. 導入までの流れ

4-1. 前提条件の確認

Azure Arcを利用するためには、対象となるサーバー側とAzure側にていくつかの前提条件があります。対象側は主に通信用エージェントの導入における内容となり、Azure側はいくつかの権限回りの要件を満たす必要があります。以下、具体的な前提条件について説明いたします。

  1.  サポートされるオペレーティングシステム
    Azure Arcは、以下のオペレーティングシステムでサポートされています。一部オペレーティングシステムでは、制限付きのサポートとなりますので、正確なサポート状況についてMicrosoft社のサイト1を参照してください。
    •  Windows:
      Windows Server 2012以降
    •  Linux:
      Ubuntu 16.04以降、CentOS 7以降、Red Hat Enterprise Linux (RHEL) 7以降、SUSE Linux Enterprise Server (SLES) 12 SP3以降、Amazon Linux 2など

  2.  Azure Connected Machine Agentのインストール
    Azure Arcにサーバーを接続するためには、Azure Connected Machine Agentをインストールする必要があります。インストール手順等については、次項以降にて説明いたします。

  3.  通信経路について
    Azure Arcに接続する際に、AzureとAzure Connected Machine Agentの通信経路を用意する必要があります。必要となる要件は以下の通りです。
    • TCPポート/443の開放:
      対象となるサーバーからアウトバウンド通信のTCPポート/443の開放が必要です。
    • アクセス許可設定:
      通信に使用されるURLについては公式サイト2にて公開されています。
      アクセス先を制限したい場合については、公式サイトの情報を参照してください。
      今回は特に制限しないものとします。

  4.  Azureリソースプロバイダーの登録
    以下のリソースプロバイダーをAzureポータルで登録する必要があります。接続対象となる
    サブスクリプションにて「設定」-「リソースプロバイダー」を選択し、以下のプロバイダーを
    選択後、「登録」実行で登録完了します。

      Microsoft.HybridCompute
      Microsoft.GuestConfiguration


オンプレミスのWindowsおよびLinuxサーバーをAzure Arcへオンボードする際の要件は以上となりますが、これまでの前提条件は標準インストールされたオンプレミスの場合における最低限となります。クラスター環境や、SQL Server 等の特殊な環境の場合は、別途必要になる前提条件がありますので、公式サイト3等で確認するようにしてください。

4-2. インストール用スクリプトの発行

前提条件の確認が終わり、導入可能と判断できた場合は、続いてAzure Arcを利用するために、Azure Connected Machine Agentのインストールを実施します。まずは、Azureポータル上でAzure Connected Machine Agentをインストールするためスクリプト作成及び発行を行います。尚、Windows 及び Linux 共に手順はほぼ同じです。異なるのは実行形式がWindowsの場合はPowerShellで、Linuxの場合はBashといった点のみです。 

  1. Azure ポータル画面 ( http://portal.azure.com/ ) にログイン後、Azure Arc セクションに
    移動し、サイドメニューより『Azure Arc リソース』―『マシン』を開きます。


  2. 画面上部の一覧より『+追加/作成』から『マシンの追加』を選択します。


  3. Azure Arc へのサーバー追加方法を選択します。今回はサーバーを1台ずつ追加します。
    『単一サーバーの追加』にある『スクリプトの作成』を押下します。


  4. 『基本情報』にてスクリプト作成にあたり、必要な値を定義していきます。入力項目については省略しますが、Azureへの登録先となるサブスクリプションやリソースグループ、リージョン
    情報等を入力していきます。入力が完了したら、画面下部の『次へ』を押下し、『タグ』の設定画面に移動します。


  5. 『タグ』設定画面にて、Azure Arc登録時に付与されるタグ情報を定義します。必要に応じて
    設定を行い、画面下部の『次へ』を押下する。


  6. Azure Connected Machine Agentをインストールするためのスクリプトが生成されたので、『ダウンロード』を押下し、スクリプトを取得します。尚、以下画面はWindows用の
    スクリプトを発行した際の画面となるので、PowerShellでの実行手順が表示されています。

4-3. インストール用スクリプトの配置と実行

インストール用スクリプトの生成と取得を行ったら、登録対象となるサーバー上の任意の場所に『4.2.インストール用スクリプトの発行』で取得した手順書を配置し、スクリプト実行します。実行するとインストーラーのダウンロードからインストールおよびAzureへの接続までの処理が開始されます。実行後、処理中に以下のようなメッセージでAzureへのログイン要求が発生しますので、記載されたURLにアクセスし、コードを入力後、接続先のアカウントを選択(またはログイン)します。

ログイン後、最後のインストール処理が完了すると、Azure Arcの登録が完了し、Azureポータル側のAzure Arcセクションにて接続状況を確認する事ができます。

これで Azure Arc の導入は完了となります。追加でAzureサービスの機能を利用したい場合は、
それぞれ必要となる拡張機能を導入する事でAzureの各種サービスを受ける事ができるように
なります。

5. まとめ

以上が、Azure Arcの説明と導入に関する手順の説明です。今回はAzure Arcについてどの様なものかを理解するために色々と調査しましたが、Azure Arcは、単なるハイブリッドクラウド管理ツールではなく、クラウドとオンプレミスの垣根を超えた統合的なIT運用基盤だということがわかりました。サーバー、Kubernetes、データベースといった多様なリソースを、Azureの一貫した操作性とセキュリティで管理できることは、企業にとって大きなメリットです。特に、複数のクラウドを併用している企業や、データ主権の制約がある業界にとって、Azure Arcは柔軟性と統制の両立を可能にする
理想的なソリューションです。導入も比較的容易で、既存のインフラを活かしながらAzureの機能を最大限に活用できます。これからのIT運用において、Azure Arcは「選択肢」ではなく「前提」に
なるかもしれません。今こそ、Azure Arcの導入を検討してみてはいかがでしょうか?

6. 参考資料

Azure Arc の概要 – Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/azure-arc/overview

  1.  Azure Arc にてサポートされるオペレーティングシステム
    https://learn.microsoft.com/ja-jp/azure/azure-arc/servers/prerequisites#supported-operating-systems ↩︎
  2. Connected Machine エージェントのネットワーク要件
    https://learn.microsoft.com/ja-jp/azure/azure-arc/servers/network-requirements?tabs=azure-cloud ↩︎
  3. 接続された機械エージェントの前提条件
    https://learn.microsoft.com/ja-jp/azure/azure-arc/servers/prerequisites ↩︎