7.7. 仮想マシンコンソールへのアクセス
OpenShift Virtualization は、異なる製品タスクを実現するために使用できる異なる仮想マシンコンソールを提供します。これらのコンソールには、OpenShift Container Platform Web コンソールから、また CLI コマンドを使用してアクセスできます。
7.7.1. OpenShift Container Platform Web コンソールでの仮想マシンコンソールへのアクセス
OpenShift Container Platform Web コンソールでシリアルコンソールまたは VNC コンソールを使用して、仮想マシンに接続できます。
OpenShift Container Platform Web コンソールで、RDP (リモートデスクトッププロトコル) を使用するデスクトップビューアーコンソールを使用して、Windows 仮想マシンに接続できます。
7.7.1.1. シリアルコンソールへの接続
Web コンソールの Virtual Machine Overview 画面の Consoles タブから、実行中の仮想マシンのコンソールに接続します。
手順
-
OpenShift Virtualization コンソールのサイドメニューから Workloads
Virtualization をクリックします。 - Virtual Machines タブをクリックします。
- 仮想マシンを選択して、Virtual Machine Overview ページを開きます。
- Consoles をクリックします。VNC コンソールがデフォルトで開きます。
- 一度に 1 つのコンソールセッションのみが開かれるようにするには、Disconnect before switching を選択します。それ以外の場合、VNC コンソール セッションはバックグラウンドでアクティブなままになります。
- VNC Console ドロップダウンリストをクリックし、Serial Console を選択します。
- Disconnect をクリックして、コンソールセッションを終了します。
- オプション: Open Console in New Window をクリックして、別のウィンドウでシリアルコンソールを開きます。
7.7.1.2. VNC コンソールへの接続
Web コンソールの Virtual Machine Overview 画面の Console タブから実行中の仮想マシンの VNC コンソールに接続します。
手順
-
OpenShift Virtualization コンソールのサイドメニューから Workloads
Virtualization をクリックします。 - Virtual Machines タブをクリックします。
- 仮想マシンを選択して、Virtual Machine Overview ページを開きます。
- Console タブをクリックします。VNC コンソールがデフォルトで開きます。
- オプション: Open Console in New Window をクリックして、別のウィンドウで VNC コンソールを開きます。
- オプション: Send Key をクリックして、キーの組み合わせを仮想マシンに送信します。
7.7.1.3. RDP を使用した Windows 仮想マシンへの接続
Remote Desktop Protocol (RDP) を使用するデスクトップビューアーコンソールは、Windows 仮想マシンに接続するためのより使いやすいコンソールを提供します。
RDP を使用して Windows 仮想マシンに接続するには、Web コンソールの Virtual Machine Details 画面の Consoles タブから仮想マシンの console.rdp
ファイルをダウンロードし、これを優先する RDP クライアントに指定します。
前提条件
-
QEMU ゲストエージェントがインストールされた実行中の Windows 仮想マシン。
qemu-guest-agent
は VirtIO ドライバーに含まれています。 - 仮想マシンに接続された layer-2 NIC。
- Windows 仮想マシンと同じネットワーク上のマシンにインストールされた RDP クライアント。
手順
-
OpenShift Virtualization コンソールのサイドメニューから Workloads
Virtualization をクリックします。 - Virtual Machines タブをクリックします。
- Windows 仮想マシンを選択して、Virtual Machine Overview 画面を開きます。
- Console タブをクリックします。
- Console 一覧で、Desktop Viewer を選択します。
- Network Interface 一覧で、 layer-2 NIC を選択します。
-
Launch Remote Desktop をクリックし、
console.rdp
ファイルをダウンロードします。 RDP クライアントを開き、
console.rdp
ファイルを参照します。たとえば、remmina を使用します。$ remmina --connect /path/to/console.rdp
- Administrator ユーザー名およびパスワードを入力して、Windows 仮想マシンに接続します。
7.7.1.4. Web コンソールから SSH コマンドをコピーする
コマンドをコピーして、Web コンソールの Actions リストから SSH 経由で実行中の仮想マシン (VM) にアクセスします。
手順
-
OpenShift Container Platform コンソールで、サイドメニューから Workloads
Virtualization をクリックします。 - Virtual Machines タブをクリックします。
- 仮想マシンを選択して、Virtual Machine Overview ページを開きます。
-
Actions リストから Copy SSH Command を選択します。このコマンドを OpenShift CLI (
oc
) に貼り付けることができるようになりました。
7.7.2. CLI コマンドの使用による仮想マシンコンソールへのアクセス
7.7.2.1. SSH 経由での仮想マシンインスタンスへのアクセス
仮想マシン (仮想マシン) にポート 22 を公開した後に、SSH を使用して仮想マシンにアクセスできます。
virtctl expose
コマンドは、仮想マシンインスタンス (VMI) のポートをノードポートに転送し、有効にされたアクセスのサービスを作成します。以下の例では、fedora-vm-ssh
サービスを作成します。このサービスは、クラスターノードの特定のポートから <fedora-vm>
仮想マシンのポート 22 にトラフィックを転送します。
前提条件
- VMI と同じプロジェクトを使用する。
-
アクセスする VMI は、
masquerade
バインディング方法を使用してデフォルトの Pod ネットワークに接続されている。 - アクセスする VMI が実行中であること。
-
OpenShift CLI (
oc
) をインストールしている。
手順
以下のコマンドを実行して
fedora-vm-ssh
サービスを作成します。$ virtctl expose vm <fedora-vm> --port=22 --name=fedora-vm-ssh --type=NodePort 1
- 1
<fedora-vm>
は、fedora-vm-ssh
サービスを実行する仮想マシンの名前です。
サービスをチェックし、サービスが取得したポートを見つけます。
$ oc get svc
出力例
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE fedora-vm-ssh NodePort 127.0.0.1 <none> 22:32551/TCP 6s
+ この例では、サービスは 32551
ポートを取得しています。
SSH 経由で VMI にログインします。クラスターノードの
ipAddress
および直前の手順で確認したポートを使用します。$ ssh username@<node_IP_address> -p 32551
7.7.2.2. 仮想マシンインスタンスのシリアルコンソールへのアクセス
virtctl console
コマンドは、指定された仮想マシンインスタンスへのシリアルコンソールを開きます。
前提条件
-
virt-viewer
パッケージがインストールされていること。 - アクセスする仮想マシンインスタンスが実行中であること。
手順
virtctl
でシリアルコンソールに接続します。$ virtctl console <VMI>
7.7.2.3. VNC を使用した仮想マシンインスタンスのグラフィカルコンソールへのアクセス
virtctl
クライアントユーティリティーは remote-viewer
機能を使用し、実行中の仮想マシンインスタンスに対してグラフィカルコンソールを開くことができます。この機能は virt-viewer
パッケージに組み込まれています。
前提条件
-
virt-viewer
パッケージがインストールされていること。 - アクセスする仮想マシンインスタンスが実行中であること。
リモートマシンで SSH 経由で virtctl
を使用する場合、X セッションをマシンに転送する必要があります。
手順
virtctl
ユーティリティーを使用してグラフィカルインターフェイスに接続します。$ virtctl vnc <VMI>
コマンドが失敗した場合には、トラブルシューティング情報を収集するために
-v
フラグの使用を試行します。$ virtctl vnc <VMI> -v 4
7.7.2.4. RDP コンソールの使用による Windows 仮想マシンへの接続
Remote Desktop Protocol (RDP) は、Windows 仮想マシンに接続するためのより使いやすいコンソールを提供します。
RDP を使用して Windows 仮想マシンに接続するには、割り当てられた L2 NIC の IP アドレスを RDP クライアントに対して指定します。
前提条件
-
QEMU ゲストエージェントがインストールされた実行中の Windows 仮想マシン。
qemu-guest-agent
は VirtIO ドライバーに含まれています。 - 仮想マシンに接続された layer-2 NIC。
- Windows 仮想マシンと同じネットワーク上のマシンにインストールされた RDP クライアント。
手順
アクセストークンを持つユーザーとして、
oc
CLI ツールを使って OpenShift Virtualization クラスターにログインします。$ oc login -u <user> https://<cluster.example.com>:8443
oc describe vmi
を使用して、実行中の Windows 仮想マシンの設定を表示します。$ oc describe vmi <windows-vmi-name>
出力例
... spec: networks: - name: default pod: {} - multus: networkName: cnv-bridge name: bridge-net ... status: interfaces: - interfaceName: eth0 ipAddress: 198.51.100.0/24 ipAddresses: 198.51.100.0/24 mac: a0:36:9f:0f:b1:70 name: default - interfaceName: eth1 ipAddress: 192.0.2.0/24 ipAddresses: 192.0.2.0/24 2001:db8::/32 mac: 00:17:a4:77:77:25 name: bridge-net ...
-
レイヤー 2 ネットワークインターフェイスの IP アドレスを特定し、これをコピーします。これは直前の例では
192.0.2.0
であり、IPv6 を選択する場合は2001:db8::
になります。 - RDP クライアントを開き、接続用に直前の手順でコピーした IP アドレスを使用します。
- Administrator ユーザー名およびパスワードを入力して、Windows 仮想マシンに接続します。