8.15.5.2.3. VDDK イメージの作成および使用

VMware Virtual Disk Development Kit (VDDK) をダウンロードして、VDDK イメージをビルドし、VDDK イメージをイメージレジストリーにプッシュすることができます。次に、VDDK イメージを HyperConverged カスタムリソース (CR) の spec.vddkInitImage フィールドに追加します。

前提条件

  • OpenShift Container Platform 内部イメージレジストリーまたはセキュアな外部レジストリーにアクセスできる必要がある。

手順

  1. 一時ディレクトリーを作成し、これに移動します。

    $ mkdir /tmp/<dir_name> && cd /tmp/<dir_name>
  2. ブラウザーで VMware code に移動し、SDKs をクリックします。
  3. Compute VirtualizationVirtual Disk Development Kit(VDDK) をクリックします。
  4. VMware vSphere のバージョンに対応する VDDK バージョンを選択します。たとえば、vSphere 7.0 の場合は VDDK 7.0 を選択し、Download をクリックしてから、VDDK アーカイブを一時ディレクトリーに保存します。
  5. VDDK アーカイブを展開します。

    $ tar -xzf VMware-vix-disklib-<version>.x86_64.tar.gz
  6. Dockerfile を作成します。

    $ cat > Dockerfile <<EOF
    FROM busybox:latest
    COPY vmware-vix-disklib-distrib /vmware-vix-disklib-distrib
    RUN mkdir -p /opt
    ENTRYPOINT ["cp", "-r", "/vmware-vix-disklib-distrib", "/opt"]
    EOF
  7. イメージをビルドします。

    $ podman build . -t <registry_route_or_server_path>/vddk:<tag> 1
    1
    イメージレジストリーを指定します。
    • 内部 OpenShift Container Platform レジストリーの場合は、内部レジストリールート (例: image-registry.openshift-image-registry.svc:5000/openshift/vddk:<tag>) を使用します。
    • 外部レジストリーの場合は、サーバー名、パスおよびタグを指定します (例: server.example.com:5000/vddk:<tag>)。
  8. イメージをレジストリーにプッシュします。

    $ podman push <registry_route_or_server_path>/vddk:<tag>
  9. イメージが OpenShift Virtualization 環境からアクセスできることを確認します。
  10. openshift-cnv プロジェクトで HyperConverged CR を編集します。

    $ oc edit hco -n openshift-cnv kubevirt-hyperconverged
  11. vddkInitImage パラメーターを spec スタンザに追加します。

    apiVersion: hco.kubevirt.io/v1beta1
    kind: HyperConverged
    metadata:
      name: kubevirt-hyperconverged
      namespace: openshift-cnv
    spec:
      vddkInitImage: <registry_route_or_server_path>/vddk:<tag>