第2章 Container-native Virtualization ユーザーガイド
2.1. 仮想マシンの作成
以下のいずれかの手順を使用して、仮想マシンを作成します。
- 仮想マシンウィザードの実行
- 仮想マシンウィザードによる事前に設定された YAML ファイルの貼り付け
- CLI の使用
- 仮想マシンウィザードによる VMware 仮想マシンまたはテンプレートのインポート
2.1.1. 仮想マシンウィザードの実行による仮想マシンの作成
Web コンソールは、Basic Settings、Networking、および Storage 画面にナビゲートし、仮想マシンの作成プロセスを単純化するインタラクティブなウィザードを特長としています。すべての必須フィールドには *
のマークが付けられます。ウィザードは必須フィールドの入力が完了するまで次の画面に移動することを防ぎます。
NIC およびストレージディスクを作成し、それらの作成後に仮想マシンに割り当てることができます。
ブート可能なディスク
Basic Settings 画面で URL
または Container
のいずれかが Provision Source として選択されている場合、 rootdisk
ディスクが Bootable Disk として作成され、仮想マシンに割り当てられます。rootdisk
を変更できますが、これを削除することはできません。
Bootable Disk は、仮想マシンにディスクが割り当てられていない場合、PXE ソースからプロビジョニングされる仮想マシンには不要です。1 つ以上のディスクが仮想マシンに割り当てられている場合、Bootable Disk を 1 つを選択する必要があります。
前提条件
- ウィザードを使用して仮想マシンを作成する場合、仮想マシンのストレージメディアは Read-Write-Many(RWM)PVC をサポートする必要があります。
手順
-
サイドメニューから Workloads
Virtual Machines をクリックします。 - Create Virtual Machine をクリックし、Create with Wizard を選択します。
- すべての必須の Basic Settings を入力します。Template を選択すると、これらのフィールドへの入力が自動的に行われます。
Next をクリックして Networking 画面に進みます。デフォルトで
nic0
NIC が割り当てられます。- (オプション) Create NIC をクリックして追加の NIC を作成します。
- (オプション) ⋮ ボタンをクリックし、Remove NIC を選択して、NICS のいずれかまたはすべてを削除できます。仮想マシンの作成において、NIC が割り当てられている必要はありません。NIC は仮想マシンの作成後に作成することができます。
Next をクリックして Storage 画面に進みます。
- (オプション) Create Disk をクリックして追加のディスクを作成します。これらのディスクは、⋮ ボタンをクリックし、 Remove Disk を選択して削除できます。
- (オプション) ディスクをクリックして選択可能なフィールドを変更します。✓ ボタンをクリックして更新を保存します。
- (オプション) Attach Disk をクリックして、Select Storage ドロップダウンリストから利用可能なディスクを選択します。
- Create Virtual Machine > をクリックします。Results 画面には、仮想マシンの JSON 設定ファイルが表示されます。
仮想マシンは Workloads
Web コンソールウィザードを実行する際は、仮想マシンウィザードのフィールドを参照します。
2.1.1.1. 仮想マシンウィザードのフィールド
名前 | パラメーター | 説明 |
---|---|---|
名前 |
この名前には、小文字 ( | |
説明 | オプションの説明フィールド。 | |
Template | 仮想マシンの作成に使用するテンプレート。テンプレートを選択すると、他のフィールドが自動的に入力されます。 | |
Provision Source | PXE | PXE メニューから仮想マシンをプロビジョニングします。クラスターに PXE 対応の NIC が必要になります。 |
URL | HTTP または S3 エンドポイントで利用できるイメージから仮想マシンをプロビジョニングします。 | |
Container |
クラスターからアクセスできるレジストリーの起動可能なオペレーティングシステムコンテナーから仮想マシンをプロビジョニングします。例: | |
Cloned Disk | プロビジョニングソースはクローン作成されるディスクです。 | |
Import | サポートされているプロバイダーから仮想マシンをインポートします。 | |
Operating System |
クラスターで利用可能なオペレーティングシステムの一覧。これは、仮想マシンの主なオペレーティングシステムになります。 | |
Flavor | small、medium、large、tiny、Custom | 仮想マシンに割り当てられる CPU およびメモリーの量を決定するプリセット。 |
Workload Profile | desktop | デスクトップで使用するための仮想マシン設定。 |
generic | 各種ワークロードについてのパフォーマンスと互換性のバランスを取るための仮想マシン設定。 | |
high performance | 高パフォーマンスの負荷に対して最適化された仮想マシン設定。 | |
Start virtual machine on creation | これを選択すると、作成時に仮想マシンが自動的に起動します。 | |
Use cloud-init | これを選択すると cloud-init フィールドが有効になります。 |
2.1.1.2. Cloud-init フィールド
名前 | 説明 |
---|---|
Hostname | 仮想マシンの特定のホスト名を設定します。 |
Authenticated SSH Keys | 仮想マシンの ~/.ssh/authorized_keys にコピーされるユーザーの公開鍵。 |
Use custom script | 他のオプションを、カスタム cloud-init スクリプトを貼り付けるフィールドに置き換えます。 |
2.1.1.3. ネットワークフィールド
名前 | 説明 |
---|---|
Create NIC | 仮想マシンの新規 NIC を作成します。 |
NIC NAME | NIC の名前。 |
MAC ADDRESS | ネットワークインターフェースの MAC アドレス。MAC アドレスが指定されていない場合、セッションの一時アドレスが生成されます。 |
NETWORK CONFIGURATION | 利用可能な NetworkAttachmentDefinition オブジェクトの一覧。 |
BINDING METHOD |
利用可能なバインディングメソッドの一覧。デフォルトの Pod ネットワークについては、 |
PXE NIC |
PXE 対応ネットワークの一覧。 |
2.1.1.4. ストレージフィールド
名前 | 説明 |
---|---|
Create Disk | 仮想マシンの新規ディスクを作成します。 |
Attach Disk | 利用可能な PVC の一覧から、仮想マシンに割り当てる既存のディスクを選択します。 |
DISK NAME |
ディスクの名前。この名前には、小文字 ( |
SIZE (GB) | ディスクのサイズ (GB)。 |
STORAGE CLASS |
基礎となる |
Bootable Disk |
仮想マシンの起動に利用できるディスクの一覧。仮想マシンの Provision Source が |
2.1.2. 仮想マシンウィザードの作成用の事前設定 YAML ファイルの貼り付け
Web コンソールの Workloads example
仮想マシン設定がデフォルトで提供されます。
Create をクリックする際に YAML 設定が無効な場合、エラーメッセージでエラーが発生したパラメーターが示唆されます。エラーは一度に 1 つのみ表示されます。
編集中に YAML 画面から離れると、設定に対して加えた変更が取り消されます。
手順
-
サイドメニューから Workloads
Virtual Machines をクリックします。 - Create Virtual Machine をクリックし、Create from YAML を選択します。
編集可能なウィンドウで仮想マシンの設定を作成するか、またはこれを貼り付けます。
-
または、YAML 画面にデフォルトで提供される
example
仮想マシンを使用します。
-
または、YAML 画面にデフォルトで提供される
- (オプション) Download をクリックして YAML 設定ファイルをその現在の状態でダウンロードします。
- Create をクリックして仮想マシンを作成します。
仮想マシンは Workloads
2.1.3. CLI の使用による仮想マシンの作成
手順
VirtualMachine 設定ファイルの spec
オブジェクトは、コア数やメモリーの量、ディスクタイプおよび使用するボリュームなどの仮想マシン設定を参照します。
-
関連する PVC
claimName
をボリュームとして参照し、仮想マシンディスクを仮想マシンに割り当てます。 OpenShift Container Platform クライアントで仮想マシンを作成するには、以下のコマンドを実行します。
$ oc create -f <vm.yaml>
- 仮想マシンは Stopped 状態で作成されるため、これを起動して仮想マシンインスタンスを実行します。
ReplicaSetは、一定数の同一 Pod の可用性を保証することを目的としています。現時点で、ReplicaSet は Container-native Virtualization でサポートされていません。
設定 | 説明 |
---|---|
Cores | 仮想マシン内のコア数。1 以上の値である必要があります。 |
Memory | ノードによって仮想マシンに割り当てられる RAM の量。M (メガバイト) または Gi (ギガバイト) で値を指定します。 |
Disks: name | 参照されるボリュームの名前。ボリュームの名前に一致する必要があります。 |
設定 | 説明 |
---|---|
名前 | ボリュームの名前。 DNS ラベルであり、仮想マシン内で一意である必要があります。 |
PersistentVolumeClaim |
仮想マシンに割り当てる PVC。PVC の |
仮想マシンのストレージボリュームタイプがドメインおよびボリューム設定と共に一覧表示されます。仮想マシン設定の具体的な一覧については、「 kubevirt API Reference 」を参照してください。
2.1.4. 仮想マシンのストレージボリュームタイプ
ephemeral | ネットワークボリュームを読み取り専用のバッキングストアとして使用するローカルの copy-on-write (COW) イメージ。バッキングボリュームは PersistentVolumeClaim である必要があります。一時イメージは仮想マシンの起動時に作成され、すべての書き込みをローカルに保存します。一時イメージは、仮想マシンの停止、再起動または削除時に破棄されます。バッキングボリューム (PVC) はいずれの方法でも変更されません。 |
persistentVolumeClaim | 利用可能な PV を仮想マシンに割り当てます。PV の割り当てにより、仮想マシンデータのセッション間での永続化が可能になります。 CDI を使用して既存の仮想マシンディスクを PVC にインポートし、PVC を仮想マシンインスタンスに割り当てる方法は、既存の仮想マシンを OpenShift Container Platform にインポートするための推奨される方法です。ディスクを PVC 内で使用できるようにするためのいくつかの要件があります。 |
dataVolume | DataVolume は、インポート、クローンまたはアップロード操作で仮想マシンディスクの準備プロセスを管理することによって persistentVolumeClaim ディスクタイプにビルドされます。このボリュームタイプを使用する仮想マシンは、ボリュームが準備できるまで起動しないことが保証されます。 |
cloudInitNoCloud | 参照される cloud-init NoCloud データソースが含まれるディスクを割り当て、ユーザーデータおよびメタデータを仮想マシンに提供します。cloud-init インストールは仮想マシンディスク内で必要になります。 |
containerDisk | コンテナーイメージレジストリーに保存される、仮想マシンディスクなどのイメージを参照します。イメージはレジストリーからプルされ、仮想マシンの作成時にボリュームに組み込まれます。containerDisk ボリュームは一時的なボリュームです。これは、仮想マシンが停止されるか、再起動するか、または削除される際に破棄されます。 コンテナーディスクは単一の仮想マシンに制限されず、永続ストレージを必要としない多数の仮想マシンのクローンを作成するのに役立ちます。 RAW および QCOW2 形式のみがコンテナーイメージレジストリーのサポートされるディスクタイプです。QCOW2 は、縮小されたイメージサイズの場合に推奨されます。 |
emptyDisk | 仮想マシンインターフェースのライフサイクルに関連付けられるスパースの QCOW2 ディスクを追加で作成します。データは仮想マシンのゲストによって実行される再起動後も存続しますが、仮想マシンが Web コンソールから停止または再起動する場合には破棄されます。空のディスクは、アプリケーションの依存関係および一時ディスクの一時ファイルシステムの制限を上回るデータを保存するために使用されます。 ディスク 容量 サイズも指定する必要があります。 |