Alibaba Cloud Linux 2イメージはさまざまな形式で利用でき、cloud-initが組み込まれています。 このトピックでは、オンプレミス環境でAlibaba Cloud Linux 2イメージを使用する方法について説明します。

このタスクについて

Alibaba Cloud Linux 2イメージは、カーネルベースの仮想マシン (KVM) でのみ実行できます。 Alibaba Cloud Linux 2イメージは、KVMを直接起動できません。ブートイメージを設定する必要があります。 このトピックでは、オンプレミスオペレーティングシステムはCentOSです。 Alibaba Cloud Linux 2を使用してKVMを作成し、cloud-initを使用してKVMのシステム設定を初期化します。cloud-initの詳細については、公式Cloud-init WebサイトのAlibaba cloud (AliYun) をご参照ください。 NoCloudデータソースは、オンプレミスの構成ファイルを作成するために使用されます。 構成ファイルが仮想ディスクとしてKVMにアタッチされた後、KVMを起動できます。

このトピックは、KVMに精通しているユーザーを対象としています。

ステップ1: Alibaba Cloud Linux 2イメージをコンピューターにダウンロードする

Alibaba Cloud Linux 2イメージは、Alibaba Cloud Linux 2オンプレミスイメージページからコンピューターにダウンロードできます。 Alibaba Cloud Linux 2イメージは、VHDまたはQCOW2形式で利用できます。

ステップ2: コンピュータからseed.imgブートイメージを取得する

ブートイメージのネットワーク、アカウント、およびYUMリポジトリを設定する必要があります。 ほとんどの場合、画像の名前はseed.imgです。 画像の名前は変更できますが、変更しないことをお勧めします。
重要 seed.imgイメージには、cloud-initを起動するために必要な設定ファイルのみが含まれています。 イメージにはAlibaba Cloud Linux 2システムファイルが含まれていません。

次のいずれかの方法を使用して、seed.imgイメージを取得できます。

  • Alibaba Cloud Linux 2オンプレミスイメージページに移動し、seed.imgをクリックしてseed.imgイメージをダウンロードします。

    このイメージの設定は変更できないため、一部のシナリオではあまり理想的ではありません。 使用する前に、画像に精通していることを確認してください。

  • NoCloudデータソースに基づいてseed.imgイメージを手動で生成するには、次の操作を実行します。
  1. オンプレミスのディレクトリに、meta-datauser-dataという名前の2つの構成ファイルを作成します。
    1. seedという名前のディレクトリを作成し、ディレクトリに移動します。
      mkdirシード
      cdシード /
    2. メタデータ設定ファイルを作成します。
      次の例は、設定ファイルの内容を示しています。 コンテンツを変更できます。
      # cloud-config
      # vim: 構文=yaml
      
      local-hostname: alinux-host
    3. user-data設定ファイルを作成します。
      次の例は、設定ファイルの内容を示しています。 コンテンツを変更できます。
      # cloud-config
      # vim: 構文=yaml
      
      # sudoコマンドの実行を許可されたalinuxという名前のユーザーを作成します。 
      ユーザー:
        - デフォルト
        -name: alinux
          sudo: ['ALL=(ALL) ALL']
          plain_text_passwd: aliyun
          lock_passwd: false
      
      # Alibaba Cloud Linux 2のYUMリポジトリを作成します。 
      yum_repos:
          ベース:
              baseurl: https://mirrors.aliyun.com/alinux/$releasever/os/$basearch /
              enabled: true
              gpgcheck: true
              gpgkey: https://mirrors.aliyun.com/alinux/RPM-GPG-KEY-ALIYUN
              名前: Aliyun Linux - $releasever-ベースmirrors.aliyun.com
          更新:
              baseurl: https://mirrors.aliyun.com/alinux/$releasever/updates/$basearch /
              enabled: true
              gpgcheck: true
              gpgkey: https://mirrors.aliyun.com/alinux/RPM-GPG-KEY-ALIYUN
              名前: Aliyun Linux - $releasever-アップデート-mirrors.aliyun.com
          エキストラ:
              baseurl: https://mirrors.aliyun.com/alinux/$releasever/extras/$basearch /
              enabled: true
              gpgcheck: true
              gpgkey: https://mirrors.aliyun.com/alinux/RPM-GPG-KEY-ALIYUN
              名前: Aliyun Linux - $releasever-エクストラ-mirrors.aliyun.com
          プラス:
              baseurl: https://mirrors.aliyun.com/alinux/$releasever/plus/$basearch /
              enabled: true
              gpgcheck: true
              gpgkey: https://mirrors.aliyun.com/alinux/RPM-GPG-KEY-ALIYUN
              名前: Aliyun Linux - $releasever-プラス-mirrors.aliyun.com
  2. cloud-utilsのソフトウェアパッケージをコンピュータにインストールします。
    yum install -y cloud-utils
  3. seedディレクトリで、次のコマンドを実行してseed.imgイメージを生成します。
    cloud-localds seed.imgユーザーデータメタデータ

ステップ3: KVMを起動する

次のいずれかの方法でKVMを起動します。次に、user-data設定ファイルのアカウント情報を使用してKVMにログインします。

  • libvirtを使用してKVMを起動します。
    1. コンピューターにXML形式の構成ファイルを作成します。 サンプルファイルの名前はalinux2.xmlで、次の内容が含まれています。 このファイルは、要件に基づいて変更できます。
      <domain type='kvm'>
          <name>alinux2</name>
          <memory>1048576</memory> <!-- 1 GBメモリ -->
          <vcpu>1</vcpu>
          <os>
              <type arch='x86_64 '>hvm</type>
              <boot dev='hdd />
          </os>
          <clock sync="localtime"/>
          <on_poweroff>destroy</on_poweroff>
          <on_reboot> 再起動 </on_reboot>
          <on_crash> 再起動 </on_crash>
          <デバイス>
              <emulator>/usr/bin/qemu-kvm</emulator><!-- オペレーティングシステムに基づいてKVMパスを設定します。 たとえば、UbuntuのKVMパスは /usr/bin/kvmです。 -->
              <disk type='file' device='disk'><!-- イメージ形式に基づいてtypeパラメーターを指定します。 イメージがqcow2形式の場合はタイプをQCOW2に設定し、イメージがVHD形式の場合はタイプをvpcに設定します。 -->
                  -QCOW2形式でスナップショットを作成する場合は、dataplaneを無効にする必要があります。 -->
                  <source file='path'/> <!-- Alibaba Cloud Linux 2イメージの絶対パスを入力します。 -->
                  <target dev='vda' bus='virtio'/>
              </ディスク>
              -- seed.imgの情報を追加します。 -->
              <disk type='file' device='disk'>
                  <driver name='qemu' type='raw'/>
                  <source file='/path/to/your/seed.img'/> <!-- seed.imgの絶対パスを入力します。 -> 。
                  <target dev='vdb' bus='virtio'/>
              </ディスク>
              <interface type='network'>
                  <source network='default'/>
                  <model type='virtio'/>
              </interface>
              <console type='pty'>
                  <target type='virtio' port='0'/>
              </コンソール>
              <ビデオ>
                  <model type='cirrus' vram='9216' heads='1'/>
                  <alias name='video0'/>
              </ビデオ>
              <input type='tablet' bus='usb'/>
              <input type='mouse' bus='ps2'/>
              <graphics type='vnc 'port='-1' autoport='yes '/>
          </devices>
      </domain>
    2. virshコマンドを実行して、KVMを起動します。
      デフォルトでは、libvirtは共通ユーザーによって起動されます。 一般ユーザーが画像ファイルとそのパスを管理する権限を持っていることを確認してください。
      virshはalinux2.xmlを定義します
      virsh start KVMName# KVMの名前を入力します。 
  • qemu-kvmコマンドを実行して、KVMを起動します。コマンドに次のパラメーター情報を追加する必要があります。 fileパラメーターをseed.imgイメージの実際の絶対パスに設定します。
    -ドライブファイル=/path/to/your/seed.img、if=virtio、format=raw
    libvirtコマンドとqemu-kvmコマンドの使用方法の詳細については、「仮想化パッケージの手動によるインストール」をご参照ください。
  • グラフィカルインターフェイス (virt-manager) を使用してKVMを起動します。KVMを起動する前に、コンピューター上のKVMの構成ファイルを見つけ、seed.imgイメージの絶対パスを構成ファイルに追加します。