Azure ローカル VM 用に Red Hat Enterprise Azure Marketplace イメージを準備する

この記事では、Azure ローカル仮想マシン (VM) で使用する Red Hat Enterprise Linux (RHEL) Azure Marketplace イメージを準備する方法について説明します。 これらの手順に従って、VM に最新のセキュリティ更新プログラム、サポート、統合機能があることを確認します。

[前提条件]

開始する前に、以下の項目があることを確認します:

サインインしてサブスクリプションを設定する

  1. Azure ローカル インスタンス上のマシンに接続します。

  2. サインインし、次のコマンドを入力します。

    az login --use-device-code
    
  3. サブスクリプションを設定します。

    az account set --subscription <Subscription ID>
    

Azure VM のセットアップと準備

Azure VM を設定して準備するには、次の手順に従います。

  1. Azure portal にサインインします。

  2. 左側のペインで、 [Virtual Machines] を選択します。 次に、[ 作成] を選択し、[ 仮想マシン] を選択します。

  3. 使用可能なイメージを参照し、好みの RHEL LVM Gen2 バージョンを選択します。

    Azure portal イメージの選択ページのスクリーンショット。

  4. ウィザードで必要な詳細を入力し、Azure VM の設定を完了します。

    Azure ローカルで使用しないユーザー名を使用して Azure VM を作成することで、ユーザー名の競合を回避します。 Azure VM と Azure Local の両方で同じユーザー名 ("usernameA" など) を使用し、VHD を再利用すると、VM は元のサインイン情報を保持します。 最適な結果を得るには、異なる資格情報 ("usernameB" など) を使用して Azure ローカル VM を設定します。

  5. VM がデプロイされたら、 VM の概要 ページに移動し、[ 接続 ] オプションを選択して、[ シリアル コンソール] を選択します。

    Azure portal の [シリアル コンソールサインイン] オプションのスクリーンショット。

  6. 資格情報を使用して VM に接続し、次の手順に従います。

    1. ルート ユーザーとして VM にサインインします。

      sudo su
      
    2. cloud-initの既定の構成は Azure ローカル VM には関係ないため、クリーンアップします。

      sudo yum clean all
      sudo cloud-init clean
      

      出力例:

      [contosotest@localhost ~]$ sudo yum clean all
      Updating Subscription Management repositories.
      17 files removed
      [contosotest@localhost ~]$ sudo cloud-init clean
      
    3. cloud-initログと一時ファイルを削除します。

      sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
      
    4. VM 固有の詳細をクリーンアップします。

      sudo rm -f /etc/sysconfig/network-scripts/*
      sudo rm -f /etc/ssh/ssh_host*
      sudo rm /etc/lvm/devices/system.devices
      

VM イメージのデータ ソースを変更する

VM イメージのデータ ソースを変更するには、次の手順に従います。

  1. ディレクトリを次のパスに変更し、ファイルを一覧表示してデータ ソース ファイル 91-azure_datasource.cfg を見つけます。

    cd /etc/cloud/cloud.cfg.d/
    ls
    

    出力例:

    [root@rhelsysprep cloud.cfg.d]# ls 
    05_logging.cfg  10-azure-kvp.cfg  91-azure_datasource.cfg  README
    
  2. 91-azure_datasource.cfg ファイルを開きます。

    cat 91-azure_datasource.cfg
    

    出力例:

    datasource_list: [ Azure ]
    datasource:
      Azure:
        apply network config: False
    
  3. Azure から NoClouddatasource_listを開いて更新します。

    vi 91-azure_datasource.cfg
    
    1. ファイルを編集するには、 iを押します。

    2. データソースを削除し、 datasource_list: [Azure] から datasource_list: [NoCloud]に詳細を更新します。

    3. Esc キーを押し、次に:xキーを押して Enter キーを押して、ファイルを保存します。

      出力例:

      datasource_list: [NoCloud]
      ~??
      ~
      
  4. ファイルが更新されたことを確認します。

    cat 91-azure_datasource.cfg
    
  5. bash 履歴を削除します。

    sudo rm -f ~/.bash_history
    export HISTSIZE=0
    exit
    
  6. 構成の変更が完了したら、Azure VM を停止します。

Azure VM OS ディスクを Azure ローカル クラスター上の VHD にエクスポートする

Azure VM OS ディスクを Azure ローカル クラスター上の VHD にエクスポートするには、次の手順に従います。

  1. Azure ローカル リソースの Azure portal で、 VM の概要に移動します。 [ 設定] で [ ディスク] を選択し、[ ディスク名 ] リンクを選択します。

    OS ディスクの詳細ページのスクリーンショット。

  2. [ 設定] で [ ディスクのエクスポート] を選択し、[ URL の生成 ] を選択して、ディスクのセキュリティで保護された URL を生成します。

    セキュリティで保護された URL の生成を含むディスク エクスポート オプションのスクリーンショット。

  3. 次の手順のために、生成されたセキュリティで保護された URL リンクをコピーします。

Azure ローカル イメージを作成する

Red Hat Enterprise Linux (RHEL) Azure Marketplace VM から Azure ローカル イメージを作成する前に、Azure Local インスタンスに接続されている Azure サブスクリプションで、Red Hat オファーの Azure Marketplace イメージの条件が受け入れられるようにします。 イメージの使用条件の受け入れは、1 回限り、サブスクリプション レベルの Azure Marketplace アクションです。

Azure に接続された管理環境 (Azure Cloud Shell、Linux、Linux 用 Windows サブシステムなど) からイメージ用語を受け入れるために使用する Azure CLI コマンドを実行します。 これらのコマンドは、Azure ローカル クラスター ホストまたは仮想マシン内では実行しないでください。

Azure ローカル イメージを作成するには、SAS トークンを使用します。

$rg="<resource-group>"
$cl="/subscriptions/<sub>/resourcegroups/$rg/providers/microsoft.extendedlocation/customlocations/<customlocation-name>"
$sas='"https://EXAMPLE.blob.storage.azure.net/EXAMPLE/abcd<sas-token>"'

az stack-hci-vm image create -g $rg --custom-location $cl --name "<IMAGE-NAME>" --os-type "Linux" --image-path $sas

Azure ローカル VM を作成する

作成した Azure ローカル VM イメージを使用して、Azure ローカル VM を作成します。 詳細については、「 Azure Arc で有効になっている Azure ローカル仮想マシンを作成する」を参照してください。