Show Table of Contents
7.4. ブロック I/O のチューニング方法
ここでは、仮想化環境におけるブロック I/O パフォーマンス調整の詳細の方法について説明します。
7.4.1. ディスク I/O スロットリング
複数の仮想マシンが同時に実行される場合、それらは過剰なディスク I/O を使用することでシステムのパフォーマンスに影響を与える可能性があります。KVM のディスク I/O スロットリングは、仮想マシンからホストマシンに送られるディスク I/O 要求に制限を設定する機能を提供します。これにより、1 台の仮想マシンが共有リソースを過剰に使用し、他の仮想マシンのパフォーマンスに影響を与えることを防ぐことができます。
ディスク I/O スロットリングは、異なる顧客に属するゲスト仮想マシンが同じホストで実行されている場合や、異なるゲストについてサービスの品質保証が提供されている場合などの各種の状況で役立ちます。ディスク I/O スロットリングは、低速なディスクをシミュレーションするために使用することもできます。
I/O スロットリングは、ゲストに割り当てられた各ブロックデバイスに独自に適用でき、スループットおよび I/O 操作上の制限をサポートします。
virsh blkdeviotune コマンドを使用して仮想マシンの I/O 制限を設定します。以下の例を参照してください。
# virsh blkdeviotune virtual_machine device --parameter limit
device には、仮想マシンに割り当てられているディスクデバイスのいずれかの固有のターゲット名 (
<target dev='name'/>) またはソースファイル (<source file='name'/>) を指定します。ディスクデバイス名の一覧については、virsh domblklist コマンドを使用します。
オプションのパラメーターには以下が含まれます。
total-bytes-sec- 秒あたりのバイト単位の合計スループット制限
read-bytes-sec- 秒あたりのバイト単位の読み込みスループット制限
write-bytes-sec- 秒あたりのバイト単位の書き込みスループット制限
total-iops-sec- 秒あたりの合計 I/O 回数の制限
read-iops-sec- 秒あたりの読み込み I/O 回数の制限
write-iops-sec- 秒あたりの書き込み I/O 回数の制限
たとえば、
virtual_machine 上の vda を 1 秒あたり 1000 I/O 操作および 1 秒あたり 50 MB スループットにスロットリングするには、以下のコマンドを実行します。
# virsh blkdeviotune virtual_machine vda --total-iops-sec 1000 --total-bytes-sec 52428800
7.4.2. マルチキュー virtio-scsi
マルチキュー virtio-scsi は、virtio-scsi ドライバーにおける強化されたストレージパフォーマンスとスケーラビリティーを提供します。これにより、他の vCPU に影響を与えることなく、それぞれの仮想 CPU で別個のキューや割り込みを使用できます。
7.4.2.1. マルチキュー virtio-scsi の設定
マルチキュー virtio-scsi は Red Hat Enterprise Linux 7 ではデフォルトで無効にされています。
ゲストでマルチキュー virtio-scsi サポートを有効にするには、以下をゲスト XML 設定に追加します。ここで、N は vCPU キューの合計数です。
<controller type='scsi' index='0' model='virtio-scsi'>
<driver queues='N' />
</controller>
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.