検索

2.4. ベースオペレーティングシステムのデータボリュームの作成

download PDF

コントローラー仮想マシン (VM) のベースオペレーティングシステムイメージを保存するには、Red Hat OpenShift Container Platform (RHOCP) クラスターを使用してデータボリュームを作成する必要があります。OpenStackControlPlane および OpenStackVmSet カスタムリソースを作成するときに、baseImageVolumeName パラメーターを使用してこのデータボリュームを指定します。

前提条件

  • virtctl クライアントツールがワークステーションにインストールされます。このツールを Red Hat Enterprise Linux (RHEL) ワークステーションにインストールするには、次のコマンドを使用します。

    $ sudo subscription-manager repos --enable=cnv-4.12-for-rhel-8-x86_64-rpms
    $ sudo dnf install -y kubevirt-virtctl
  • virt-customize クライアントツールがワークステーションにインストールされます。このツールを RHEL ワークステーションにインストールするには、次のコマンドを使用します。

    $ dnf install -y libguestfs-tools-c

手順

  1. Red Hat Customer Portal の 製品ダウンロード セクションから RHEL 9.2 QCOW2 イメージをワークステーションにダウンロードします。
  2. オプション: カスタム CA 証明書を追加します。

    $ sudo -s
    $ export LIBGUESTFS_BACKEND=direct
    $ virt-copy-in -a <local_path_to_image> <ca_certificate>.pem /etc/pki/ca-trust/source/anchors/

    Identity Service の LDAP 通信を保護したり、RHOSP 以外のシステムと通信したりするために、カスタム CA 証明書を追加することができます。

  3. イメージをカスタマイズして、予測可能なネットワークインターフェイス名を割り当てるスクリプトを作成します。

    #!/bin/bash
    set -eux
    
    if [ -e /etc/kernel/cmdline ]; then
      echo 'Updating /etc/kernel/cmdline'
      sed -i -e "s/^\(.*\)net\.ifnames=0\s*\(.*\)/\1\2/" /etc/kernel/cmdline
    fi
    
    source /etc/default/grub
    if grep -q "net.ifnames=0" <<< "$GRUB_CMDLINE_LINUX"; then
      echo 'Updating /etc/default/grub'
      sed -i -e "s/^\(GRUB_CMDLINE_LINUX=.*\)net\.ifnames=0\s*\(.*\)/\1\2/" /etc/default/grub
    fi
    if [ "$GRUB_ENABLE_BLSCFG" == "true" ]; then
      echo 'Fixing BLS entries'
      find /boot/loader/entries -type f -exec sed -i -e "s/^\(.*\)net\.ifnames=0\s*\(.*\)/\1\2/" {} \;
    fi
    # Always do this, on RHEL8 with BLS we still need it as the BLS entry uses $kernelopts from grubenv
    echo 'Running grub2-mkconfig'
    grub2-mkconfig -o /etc/grub2.cfg
    grub2-mkconfig -o /etc/grub2-efi.cfg
    rm -f /etc/sysconfig/network-scripts/ifcfg-ens* /etc/sysconfig/network-scripts/ifcfg-eth*
    update-ca-trust extract
  4. イメージのカスタマイズスクリプトを実行します。

    $ sudo -s
    $ export LIBGUESTFS_BACKEND=direct
    $ chmod 755 customize_image.sh
    $ virt-customize -a <local_path_to_image> --run customize_image.sh --truncate /etc/machine-id
  5. virtctl を使用してイメージを OpenShift Virtualization にアップロードします。

    $ virtctl image-upload dv <datavolume_name> -n openstack \
     --size=<size> --image-path=<local_path_to_image> \
     --storage-class <storage_class> --access-mode <access_mode> --insecure
    • <datavolume_name> をデータボリュームの名前 (例: openstack-base-img) に置き換えます。
    • <size> を、環境に必要なデータボリュームのサイズ (たとえば、500Gi) に置き換えます。最小サイズは 500 GB です。
    • <storage_class> をクラスターの必要なストレージクラスに置き換えます。次のコマンドを使用して、利用可能なストレージクラスを取得します。

      $ oc get storageclass
    • <access_mode> を、PVC のアクセスモードに置き換えます。デフォルト値は ReadWriteOnce です。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.