第7章 高度な仮想マシンの作成
7.1. Red Hat イメージから仮想マシンを作成する リンクのコピーリンクがクリップボードにコピーされました!
RHEL イメージはゴールデンイメージです。これらは、セキュアなレジストリー内のコンテナーディスクとして公開されます。Containerized Data Importer (CDI) は、コンテナーディスクをポーリングしてクラスターにインポートし、スナップショットまたは永続ボリュームクレーム (PVC) として openshift-virtualization-os-images プロジェクトに保存します。オプションで、ゴールデンイメージにカスタム namespace を使用できます。
RHEL イメージは自動的に更新されます。これらのイメージの自動更新を無効にして再度有効にすることができます。詳細は、「関連情報」を参照してください。
クラスター管理者は、OpenShift Dedicated Web コンソールで RHEL 仮想マシンの自動サブスクリプションを有効にできます。
次のいずれかの方法を使用して、Red Hat が提供するオペレーティングシステムイメージから仮想マシンを作成できます。
- Web コンソールを使用したテンプレートからの仮想マシンの作成
- Web コンソールを使用したインスタンスタイプからの仮想マシンの作成
-
コマンドラインを使用した
VirtualMachineマニフェストからの仮想マシンの作成
デフォルトの openshift-* namespace に仮想マシンを作成しないでください。代わりに、openshift 接頭辞なしの新規 namespace を作成するか、既存 namespace を使用します。
7.1.1. ゴールデンイメージについて リンクのコピーリンクがクリップボードにコピーされました!
ゴールデンイメージは、新しい仮想マシンをデプロイメントするためのリソースとして使用できる、仮想マシンの事前設定されたスナップショットです。たとえば、ゴールデンイメージを使用すると、同じシステム環境を一貫してプロビジョニングし、システムをより迅速かつ効率的にデプロイメントできます。
7.1.1.1. ゴールデンイメージはどのように機能しますか? リンクのコピーリンクがクリップボードにコピーされました!
ゴールデンイメージは、リファレンスマシンまたは仮想マシンにオペレーティングシステムとソフトウェアアプリケーションをインストールして設定することによって作成されます。これには、システムのセットアップ、必要なドライバーのインストール、パッチと更新の適用、特定のオプションと設定の指定が含まれます。
ゴールデンイメージは、作成後、複数のクラスターに複製してデプロイできるテンプレートまたはイメージファイルとして保存されます。ゴールデンイメージは、メンテナーによって定期的に更新されて、必要なソフトウェア更新とパッチが組み込まれるため、イメージが最新かつセキュアな状態に保たれ、新しく作成された仮想マシンはこの更新されたイメージに基づいています。
7.1.1.2. Red Hat のゴールデンイメージの実装 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、Red Hat Enterprise Linux (RHEL) のバージョンのレジストリー内のコンテナーディスクとしてゴールデンイメージを公開します。コンテナーディスクは、コンテナーイメージレジストリーにコンテナーイメージとして保存される仮想マシンイメージです。公開されたイメージは、OpenShift Virtualization のインストール後に、接続されたクラスターで自動的に使用できるようになります。イメージがクラスター内で使用可能になると、仮想マシンの作成に使用できるようになります。
7.1.2. 仮想マシンブートソースについて リンクのコピーリンクがクリップボードにコピーされました!
仮想マシンは、仮想マシン定義と、データボリュームによってバックアップされる 1 つ以上のディスクで構成されます。仮想マシンテンプレートを使用すると、事前定義された仕様を使用して仮想マシンを作成できます。
すべてのテンプレートにはブートソースが必要です。ブートソースは、設定されたドライバーを含む完全に設定されたディスクイメージです。各テンプレートには、ブートソースへのポインターを含む仮想マシン定義が含まれています。各ブートソースには、事前に定義された名前および namespace があります。オペレーティングシステムによっては、ブートソースは自動的に提供されます。これが提供されない場合、管理者はカスタムブートソースを準備する必要があります。
提供されたブートソースは、オペレーティングシステムの最新バージョンに自動的に更新されます。自動更新されるブートソースの場合、永続ボリュームクレーム (PVC) とボリュームスナップショットはクラスターのデフォルトストレージクラスで作成されます。設定後に別のデフォルトストレージクラスを選択した場合は、以前のデフォルトストレージクラスで設定されたクラスター namespace 内の既存のブートソースを削除する必要があります。
7.1.3. Web コンソールを使用したゴールデンイメージのカスタム namespace の設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Dedicated Web コンソールを使用すると、クラスター内のゴールデンイメージ用にカスタム名前空間を設定できます。
手順
-
Web コンソールで、[仮想化]
[設定] を選択します。 -
クラスター タブで、一般設定
テンプレートとイメージの管理 を選択します。 - ブート可能なボリュームプロジェクト をクリックします。
ゴールデンイメージに使用する namespace を選択します。
- すでに namespace を作成している場合は、Project リストから選択します。
namespace を作成していない場合は、リストの一番下までスクロールして Create project をクリックします。
- Create project ダイアログの Name フィールドに新しい namespace の名前を入力します。
- Create をクリックします。
7.1.4. CLI を使用したゴールデンイメージのカスタム namespace の設定 リンクのコピーリンクがクリップボードにコピーされました!
HyperConverged カスタムリソース (CR) の spec.commonBootImageNamespace フィールドを設定することで、クラスター内のゴールデンイメージのカスタム namespace を設定できます。
前提条件
-
OpenShift CLI (
oc) がインストールされている。 - ゴールデンイメージに使用する namespace を作成した。
手順
以下のコマンドを実行して、デフォルトのエディターで
HyperConvergedCR を開きます。$ oc edit hyperconvergeds.v1beta1.hco.kubevirt.io kubevirt-hyperconverged -n openshift-cnvspec.commonBootImageNamespaceフィールドの値を更新して、カスタム namespace を設定します。設定ファイルの例:
apiVersion: hco.kubevirt.io/v1beta1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec: commonBootImageNamespace: <custom_namespace> # ...各項目の説明:
spec.commonBootImageNamespace- ゴールデンイメージに使用する namespace を指定します。
- 変更を保存し、エディターを終了します。