SCSI コントローラおよびその他の VMware コントローラの種類

ストレージコントローラは、ディスクドライブをコンピュータに接続する役割を果たします。ストレージコントローラには、IDE、SATA、SCSIなど、さまざまな規格や種類があります。仮想マシンでは、仮想ストレージコントローラが仮想ディスクや物理ディスクを仮想マシンに接続します。 VMware仮想マシンでは、ディスクやCD/DVDドライブを接続するために、さまざまな種類のストレージコントローラが利用可能です。

各種類のストレージコントローラにはそれぞれ長所と制限がありますが、このブログ記事では主にSCSIコントローラに焦点を当てます。その後、VMware vSphereの仮想マシン設定で利用可能な他の種類のストレージコントローラとSCSIコントローラを比較し、特定の状況においてどのストレージコントローラが最適かを検討します。

NAKIVO for VMware vSphere バックアップ

NAKIVO for VMware vSphere バックアップ

VMware vSphere 仮想マシン(VM)向けの包括的なデータ保護と即時復旧オプション。オンサイト、オフサイト、およびクラウド上の安全なバックアップ先。ランサムウェア対策機能。

ストレージコントローラに関する概要

VMware vSphere の仮想マシンを作成すると、デフォルトで仮想マシンの構成に少なくとも 1 つの仮想ストレージコントローラが作成されます。仮想ディスクと CD/DVD ドライブが別々のストレージコントローラに接続されている場合、仮想マシンの作成後に 2 つのストレージコントローラが存在することになります。 また、VMの作成時に、ディスクドライブを接続するためのストレージコントローラを追加することも可能です。

VMware Host ClientやVMware vSphere Clientを使用してESXiホスト上で仮想マシンを作成する場合、あるいはVMware Workstationで作成する場合、選択したゲストOSに対して最高のパフォーマンスを提供できるよう、最適なストレージコントローラが自動的に選択されます。後述するように、このため、VM作成ウィザードで適切なゲストOSを選択することは非常に重要な作業となります。

適切なストレージコントローラを選択することの重要性は、いくら強調してもしすぎることはありません。 新しいタイプのストレージコントローラは、古いオペレーティングシステムではサポートされていない場合があります。そのため、最適なデフォルトのコントローラを選択するには、選択したゲストOSに付属するドライバを考慮に入れる必要があります。仮想マシンのハードウェア互換性(VMwareハードウェアバージョン)やデバイスタイプ(仮想ハードディスクやDVD-ROM)も重要な要素です。新しいハードウェアバージョンほど、より多くのストレージコントローラに対応しています。

The LSI Logic SAS SCSI controller is selected by default during the creation of an Ubuntu VM

ブートディスクに使用されているストレージコントローラを変更する前に、ゲストオペレーティングシステム(OS)がこのコントローラタイプに対応していること、およびゲストOSに適切なドライバがインストールされていることを確認する必要があります。ストレージデバイスを複数のストレージコントローラに接続すると、すべてのディスクドライブを単一のストレージコントローラに接続する場合に比べて、入出力パフォーマンスを向上させることができます。したがって、VMで複数のSCSIコントローラを使用する場合は、パフォーマンスを向上させるために、これらのSCSIコントローラに仮想ディスクを分散させることをお勧めします。

ストレージコントローラを追加するもう 1 つの理由は、1 つのコントローラに接続できるディスクデバイスの最大サポート数を超えた場合です。その場合、新しいコントローラをどのように追加するかが重要になります。 一部のコントローラは、ホットアド機能を使用してVM構成に追加できます。一方、その他の種類のストレージコントローラでは、コールド操作、つまりまずVMの電源を切る必要があります。

VM上の最初のストレージコントローラのデフォルト番号は0です。2番目のストレージコントローラを追加すると、割り当てられる番号は1となり、以降も順次番号が振られます。 ストレージコントローラに接続されたストレージデバイスの番号付けも同様に0から始まります。たとえば、VMに1つのストレージコントローラがあり、このコントローラに1つの仮想ディスクが接続されている場合、そのディスクの番号は(0:0)となります。同じコントローラに2つ目の仮想ディスクを追加すると、番号は(0:1)になります。2つ目のストレージコントローラに別の仮想ディスクを接続した場合、そのディスクの番号はこの例では(1:1)となります。 接続ノードの完全な名前と番号には、コントローラのインターフェースと、コントローラおよびディスクの番号が含まれます。例えば、SCSI (0:0)、SCSI (1:3)、SATA (1:7)、IDE (0:0) などです。SCSI (z:7) は、この番号が仮想デバイスノード用に予約されているため、コントローラオプションでは割り当てることができません。

利用可能な VMware ストレージコントローラ

ストレージコントローラにはさまざまな種類があります。VMware vSphere 仮想マシン(VM)で使用できるストレージコントローラの種類には、SCSI、IDE、AHCI SATA、および NVM Express (NVMe) があります。

SCSI コントローラには、4つのサブタイプがあります:

  • BusLogic Parallel
  • LSI Logic Parallel
  • LSI Logic SAS
  • VMware Paravirtual SCSI

VMware仮想マシン1台あたり、最大4つのSCSIコントローラがサポートされています。1つのSCSIコントローラに接続できるデバイスは、最大15台までです。

BusLogic パラレル

この VMware SCSI コントローラは、VMware vSphere 仮想マシン向けにエミュレートされた最初のストレージコントローラの一種です。古いバージョンの Windows には、デフォルトでこのコントローラ用のドライバが含まれているため、仮想マシンの構成でこのコントローラを使用することで、仮想マシンに古いバージョンの Windows(たとえば Windows 2000)をインストールすることができます。この BusLogic Parallel SCSIコントローラは現在、レガシーコントローラと見なされています。2 TBを超えるディスクを搭載した仮想マシンはサポートされていません。キューの深さはドライバによって 1 に制限されており、これがパフォーマンスに影響を及ぼします。仮想マシンのストレージでより高いパフォーマンスが必要な場合は、LSI Logic パラレル SCSI ストレージコントローラの使用をご検討ください。

LSIロジック・パラレル

LSI Logic Parallel 以前は LSI Logic SCSIコントローラ。これは、VMware仮想化プラットフォームの初期バージョンから提供されている、もう1つのVMware SCSIストレージコントローラです。この LSI Logic Parallel SCSIコントローラもエミュレートされており、古いオペレーティングシステムを含め、多くのオペレーティングシステムでサポートされています。これは、これらのシステムにこのストレージコントローラ用のドライバがデフォルトで含まれているためです。これらのドライバはキュー深度32をサポートしており、そのため、このVMware SCSIコントローラは多くのゲストオペレーティングシステムにおいて一般的な選択肢であり、デフォルトの選択となっています。 LSI Logic Parallel Windows Server 2003 の仮想マシンを作成する際、このストレージコントローラは SCSI2 コマンドをサポートしており、Windows Server 2003 もこの SCSI 規格をサポートしているため、デフォルトでこれが選択されます。

LSI Logic SAS

その LSI Logic Parallel ストレージコントローラは、やがて LSI Logic SAS コントローラー。Windows Server 2008 以降、 LSI Logic SAS 新しいVMを作成する際、デフォルトでコントローラーが選択されるのは、 LSI Logic SAS SCSI3コマンドに対応しており、新しいバージョンのWindowsオペレーティングシステムもこの新しい規格をサポートしています。多くの場合、このVMware SCSIコントローラの使用が推奨されます。

の互換性:ESXi 4.x以降。

VMware パラバーチャル SCSI

このブログ記事でこれまで紹介してきたVMware SCSIコントローラとは異なり、このコントローラは仮想化に対応しており、高いスループットを実現します。エミュレートされたVMwareストレージコントローラと比較して、CPU負荷が低くなっています。このコントローラに相当する実際のハードウェアは存在しません。 VMware paravirtual SCSIコントローラ(PVSCI)であるため、多くのオペレーティングシステム(主に古いOS)では、このコントローラを標準ではサポートしていません。OSでこのコントローラを利用できるようにするには、ドライバを手動でインストールする必要があります。 VMware paravirtual SCSIコントローラ。このコントローラは、高いIOPS(1秒あたりの入出力操作数)性能を実現するために採用されています。

仮想ディスクにスナップショットが存在する場合、その仮想ディスクが接続されている paravirtual SCSI コントローラ、またはホスト上でメモリのオーバーコミットが発生している場合、VM でこのストレージコントローラタイプを使用すると、パフォーマンスが予想より低下する可能性があります。

互換性:ESXi 4.x 以降。Windows Server 2003 以降がサポートされています。

H2が必要

ゲストOSがインストール済みのVMware仮想マシンのストレージコントローラを変更すると、必要なドライバがゲストOSにインストールされていない場合、既存の仮想ディスクにアクセスできなくなる可能性があることに注意してください。 VMware Tools VMware Toolsには、との連携に必要なドライバが含まれているため、ゲストOSにインストールする必要があります。 VMware paravirtual SCSIコントローラ。

仮想マシンにWindowsをインストールする際、システムディスクが VMware paravirtual SCSIコントローラの場合、Windowsがインストールディスクを認識できるようにするには、ドライバを含む仮想フロッピーイメージを挿入し、インストール中にそのコントローラ用のドライバを選択する必要がある場合があります。

追加するには、 VMware paravirtual VMの構成にSCSIコントローラを追加する場合は、以下に示すような、サポートが充実したSCSIコントローラのいずれかを追加する必要がある場合があります。 LSI logic コントローラー、VMware Toolsのインストール、仮想マシンの電源を切る、以下の VMware paravirtual VMの構成にSCSIコントローラを追加し、最後に、仮想ディスクを VMware paravirtual SCSIコントローラ(または、既存のストレージコントローラのタイプを paravirtual SCSI (コントローラー)。

AHCI SATA

このストレージコントローラは新機能であり、VMware vSphere 5.5 以降(Virtual Hardware 10 以降)で利用可能になりました。AHCI SATA ストレージコントローラを使用することで、VMware 仮想マシンに大容量のストレージ(大容量の仮想ディスクを含む)を接続できます。SATA ストレージコントローラは、ゲストオペレーティングシステム(OS)を起動するためのブートディスクとして使用できます。 AHCI SATA コントローラがオペレーティングシステムでサポートされていることを確認してください。パフォーマンスは PVSCI や LSI Logic コントローラ。ディスクのパフォーマンスに敏感なアプリケーションを実行する場合は、他のコントローラを使用することをお勧めします。通常、VMのCD/DVDドライブにはデフォルトでSATAコントローラが使用されます。

互換性:ESXi 5.5以降の仮想ハードウェア互換性。1つのVMにつき最大4つのSATAコントローラがサポートされています。1つのSATAコントローラに接続できるストレージデバイスの最大数は30台(0~29台)です。

NVMe

NVM Express(NVMe:Non-Volatile Memory)コントローラは、SSDストレージと連携するように設計されたコントローラです。NVMeプロトコルは、非磁気ディスク向けに採用されており、最高のパフォーマンスとマルチキュー通信を実現します。VMware vSphereではNVMeプロトコルがサポートされており、VMの設定でNVMeストレージコントローラを追加することができます。 キューの最大数は 65535、キューの最大深度は 64000 です。

の要件:VMware vSphere 6.5 および VM ハードウェアバージョン 13。ゲスト OS は NVMe をサポートしている必要があります。最大 4 つの NVMe コントローラがサポートされており、1 つの NVMe コントローラに 15 個のディスク(0~14)を接続できます。

IDEストレージコントローラ

エミュレートされたIDEストレージコントローラは、最も古いタイプのストレージコントローラの一つです。仮想マシンには、最大1つのIDEコントローラを接続でき、4つのストレージデバイス(プライマリとセカンダリの2つのチャネル、各チャネルにマスターとスレーブの2つのデバイス)を接続できます。ディスクのホットアドおよびリサイズには対応していません。 ディスク構成を編集するには、仮想マシンをシャットダウンする必要があります。IDEコントローラはATAPIを使用します。

仮想マシンに接続できるディスクの総数は、以下の表に示すように、コントローラのタイプによって決まります。

The maximum supported number of disks that can be connected to different storage controller types

一般的な推奨事項

VMware vSphere 仮想マシンの構成において、パフォーマンスと互換性の観点からストレージコントローラを選択するための一般的な推奨事項があります。

仮想マシンにどのSCSIコントローラを使用すべきか判断できない場合は、以下の順序(優先順位)に従ってください:

  1. VMware Paravirtual (PVCSI) (ゲストOSが対応している場合)
  2. LSI Logic SAS (ゲストOSが対応している場合)
  3. LSI Logic Parallel
  4. BusLogic Parallel (他の方法がすべて失敗した場合)

ブートディスクのストレージコントローラを変更する場合は、ストレージコントローラのドライバがブートモードでインストールされていることを確認する必要があります。VMがBIOSを使用するように構成されている場合は、VMの構成およびBIOSの設定を変更する必要がある場合があります。VMがUEFIを使用するように構成されている場合、ブートディスクのストレージコントローラを変更するためのオプションはより柔軟であり、ほとんどの場合、追加の設定は不要です。

VMのストレージコントローラ設定を変更した後、ゲストOSが起動できるかどうかは、互換性表を参照してください。

Compatibility for changing storage controllers in VMware vSphere

また、VMやゲストOSにおける各種ストレージコントローラの使用に関する一般的な推奨事項をまとめた表も参照してください。

Recommended usage of VMware SCSI controllers and other storage controllers for VMs

VMware ストレージコントローラの設定

VMware vSphere で利用可能なストレージコントローラの種類について理解できたところで、VMware vSphere Client でストレージコントローラの設定を編集する方法を見ていきましょう。この例では、デフォルトのストレージコントローラが設定された仮想マシン(VM)を用意しており、この VM には Ubuntu Linux がインストールされています。

その Virtual machine.Configuration.Add or remove device VMのストレージコントローラ設定を編集するには、特権が必要です。

VMware vSphere Clientを開き、次の場所に移動します。 Hosts and Clusters、必要なホストを選択し、必要な仮想マシンを選択します。仮想マシンを右クリックし、表示されるメニューから Edit Settings. また、以下をクリックすることもできます Actions > Edit Settings.

Editing VM settings to change the VMware SCSI controller configuration

コントローラの種類の変更

その Edit Settings ウィンドウを見ると、自分のVMが SCSI controller 0 また、SCSIストレージコントローラのタイプは LSI Logic Parallel. 以下に、以下の内容をご覧いただけます。 SATA controller 0、これは仮想CD/DVDドライブをVMに接続するために使用されます。SCSIコントローラをクリックしてオプションを展開し、次に Change Type 行で、ドロップダウンメニューをクリックして、既存のストレージコントローラのタイプを変更します。クリックして OK 設定を保存するには。選択したコントローラは、VMおよびゲストOSでサポートされている必要があることに注意してください。このストレージコントローラにブートディスクが接続されている場合は、特に重要です。

Changing SCSI types for a storage controller in VMware vSphere

新しいストレージコントローラの追加

VMの構成に新しいストレージコントローラを追加するには、 Edit Settings ウィンドウのクリック Add New Device、そして表示されるメニューから必要なコントローラーを選択します( Controllers セクション)。この例では、”NVMe コントローラ”、”SATA コントローラ”、または”SCSI コントローラ”を選択できます。それでは、 SATA controller VMの設定に。

注: USBパススルー機能を使用して、物理的なUSBデバイス(USBハードディスクやUSBメモリなど)を仮想マシンに直接接続したい場合は、USBコントローラを追加する必要があります(USBデバイスは、ホストの物理USBポートに接続されている必要があります)。

SATA controller 1 が追加されます。初期設定では、新しいコントローラーには New SATA Controller. クリックした後 OK VMの設定を保存する際、SATAストレージコントローラの名前は次のように保存されます。 SATA controller 1.

Adding a new SCSI storage controller, SATA controller, or NVMe controller

仮想ディスクをストレージコントローラに接続する

新しい仮想ハードディスクを追加し、この仮想ディスクをSATAストレージコントローラに接続しましょう。 Edit Settings ウィンドウで、[クリック] Add New Device > Hard Disk.

Adding a new virtual hard disk in VM settings

新しいハードディスクがVMの設定に表示されるようになりましたが、ディスクサイズなどの仮想ディスクのオプションを設定する必要があります。 シン・プロビジョニングまたはシック・プロビジョニング、および場所を指定し、必要なストレージコントローラを Virtual Device Node オプション。必要に応じて、共有オプション、ディスクモード、IOPsの上限も設定できます。””をクリックした後、 OK 設定を保存するには、 New Hard Disk 名前は次のように保存されます Hard Disk 2.

既存の仮想ディスクを別のストレージコントローラに接続する必要がある場合は、同じ手順に従ってください。VMの設定を開き、”ディスク設定”を展開して、仮想デバイスノードのオプションを編集します。

Connecting a virtual disk to a SCSI controller or SATA controller for a VMware VM

新しい仮想ハードディスクを SATA controller 0 CD/DVDドライブが接続されているノードについては、仮想DVD-ROMがSATA (0:0)を使用しているため、SATA (0:1)、SATA (0:2)、またはSATA (0:0)以外の”その他 (0:x)”のノードを選択できます。新しい仮想ディスクを新しい SATA controller 1, そうすれば、SATA (1:0)、SATA (1:1)、およびこのストレージコントローラ上のその他の空きノードを選択できます。

Selecting a virtual device node for a virtual disk connected to the SATA storage controller

VMX設定ファイルの編集

VMX設定ファイルを編集することで、VMのSCSIコントローラタイプやその他のストレージコントローラタイプを変更できます。この方法は、VMware vSphere ClientのGUIで設定を編集する代わりに利用できるもので、コマンドラインインターフェイスでも使用できます。一般的にはVMware vSphere Clientを使用し、VMXファイルを手動で編集するのは例外的な場合に限定することをお勧めします。

追加のストレージコントローラや仮想ディスクを追加する前に、Ubuntu VMの初期VMX設定ファイルを確認してみましょう。以下に示す設定部分では、ストレージ設定に関連する行のみを表示しています。完全な設定ファイルには他の設定も含まれていますが、このブログ記事ではストレージ設定とストレージコントローラに焦点を当てるため、それらは省略します。

config.version = "8"

virtualHW.version = "17"

vmci0.present = "TRUE"

scsi0.virtualDev = "lsilogic"

scsi0.present = "TRUE"

sata0.present = "TRUE"

scsi0:0.deviceType = "scsi-hardDisk"

scsi0:0.fileName = "blog-Ubuntu1.vmdk"

sched.scsi0:0.shares = "normal"

sched.scsi0:0.throughputCap = "off"

scsi0:0.present = "TRUE"

sata0:0.deviceType = "cdrom-raw"

sata0:0.clientDevice = "TRUE"

sata0:0.fileName = "emptyBackingString"

sata0:0.present = "TRUE"

displayName = "blog-Ubuntu1"

guestOS = "ubuntu-64"

最も興味深い構成行は次のとおりです:

scsi0.virtualDev = "lsilogic"LSI Logic Parallel 仮想ハードディスクの接続に使用されるSCSIコントローラ。

scsi0:0.deviceType = "scsi-hardDisk" SCSI (0:0) に接続されているストレージデバイスの種類です。

scsi0:0.fileName = "blog-Ubuntu1.vmdk" は、ノードのSCSI (0:0) に接続されている仮想ディスクファイルの名前です。

2台目のSATAストレージコントローラと、そのSATAコントローラに接続された2台目の仮想ディスクを追加したところ、VMX設定ファイルに以下の行が追加されました:

sata1.present = "TRUE"

sata1:0.fileName = "blog-Ubuntu1_1.vmdk"

sched.sata1:0.shares = "normal"

sched.sata1:0.throughputCap = "off"

sata1:0.present = "TRUE"

もし、 LSI Logic Parallel SCSIコントローラを LSI Logic SAS VMの設定では、次の行を編集する必要があります。

scsi0.virtualDev = "lsilogic"

~へ
scsi0.virtualDev = "lsisas1068"

SCSIコントローラを含むストレージコントローラに関連するVMX設定パラメータについて見ていきましょう。VMの構成に応じて、0、0:0、およびその他の値(x:x)を適切な値に変更する必要がある場合があります。

scsi0.present = "" – SCSIコントローラ0が存在するかどうかを指定します(取り得る値は TRUE または FALSE).

scsi0:0.deviceType = "" SCSI ID を定義するために使用されます。サポートされている値は以下の通りです。 "scsi-hardDisk", "PhysicalDrive0", "rawDisk", "scsi-passthru", "scsi-nonpassThru-rdm", "scsi-passthru", "scsi-passthruscsi-passThru-rdm".

scsi0:0.fileName = "diskname.vmdk" – 定義された仮想デバイスノード(この場合は SCSI(0:0))にアタッチされる仮想ディスクファイルのファイル名を指定します。仮想ディスクファイルが同じディレクトリにある場合は、 "diskname.vmdk" これで十分です。仮想ディスクファイルが別のディレクトリにある場合は、VMDKファイルへのフルパスを指定する必要があります。

sched.scsi0:0.throughputCap = "off" – 帯域幅およびスループットの制限は無効になっています。このパラメータの制限値を設定する例としては、次のようなものがあります。 sched.scsi0:0.throughputCap = 80IOPS, 10KIOps, 4GBps、など。

scsi0:0.present = "" – SCSIストレージデバイスが存在するかどうかを指定します。以下のいずれかになります。 TRUE または FALSE.

scsi0.virtualDev = "" – SCSIコントローラのタイプを定義します。

サポートされているすべての値は、 scsi0.virtualDev = "" SCSIコントローラのタイプを定義するパラメータ:

  • buslogic – BusLogic SCSI
  • lsilogic – LSI Logic SCSI
  • lsisas1068 – LSI Logic SAS
  • pvscsi – VMware Paravirtual SCSI

このブログ記事で説明されている手順に従って、以下で実行されているVMのストレージコントローラの設定を編集することができます。 VMware Workstation また、VMware Player を使用して、ストレージデバイスを必要なストレージコントローラに接続します。さらに、以下の設定を行う練習もできます。 VMware ホームラボ vSphere 6.7 では、および vSphere 7.

結論

VMwareのストレージコントローラは、仮想ディスクなどのストレージデバイスを仮想マシンに接続するために使用されます。このブログ記事では、SATA、IDE、NVMe、SCSIなどの仮想ストレージコントローラの種類に加え、VMware vSphereクライアントのGUIでのこれらのコントローラの設定方法について解説しました。 ストレージシステムのパフォーマンスやゲストOSの正常な動作は、適切なコントローラの種類を選択できるかどうかにかかっています。デフォルトでは、VMの設定で最適なストレージコントローラが選択されていますが、VMの設定を編集して、別のコントローラの種類に変更したり追加したりすることもいつでも可能です。

VMware VMの保護と定期的なバックアップを忘れないでください。仮想マシンやその他のワークロードを保護するために、VMのバックアップとレプリケーションにはNAKIVOのご利用をご検討ください。

試してみてください NAKIVO Backup & Replication

試してみてください NAKIVO Backup & Replication

無料トライアルを利用して、本ソリューションのデータ保護機能をすべてお試しください。15日間無料。機能や容量の制限は一切ありません。クレジットカードも不要です。

関連記事