仮想化 において、入出力仮想化(I/O仮想化)は、企業環境におけるサーバーの管理を簡素化し、コストを削減し、パフォーマンスを向上させるための手法です。I/O仮想化環境は、物理接続から上位層プロトコルを抽象化することによって作成されます。[ 1 ]
この技術により、1枚の物理アダプタカードを複数の仮想ネットワークインターフェイスカード(vNIC)および仮想ホストバスアダプタ(vHBA)として認識させることができます。[ 2 ]仮想NICおよびHBAは、従来のNICおよびHBAと同様に機能し、既存のオペレーティングシステム、ハイパーバイザ、およびアプリケーションとの互換性を持つように設計されています。ネットワークリソース(LANおよびSAN)からは、通常のカードとして認識されます。
物理的な観点から見ると、仮想I/Oはサーバーの複数のI/Oケーブルを、すべてのネットワークおよびストレージ接続の共有トランスポートを提供する単一のケーブルに置き換えます。そのケーブル(または冗長性のために通常2本のケーブル)は外部デバイスに接続され、そこからデータセンターネットワークへの接続が提供されます。[ 2 ]
サーバーI/Oは、特に仮想化サーバーにおいて、サーバーの導入を成功させ、効果的に運用するための重要な要素です。複数のアプリケーションに対応するため、仮想化サーバーはより多くのネットワーク帯域幅と、より多くのネットワークおよびストレージへの接続を必要とします。調査によると、仮想化サーバーの75%はデバイスあたり7つ以上のI/O接続を必要とし、より頻繁なI/O再構成が必要になる可能性が高いです。[ 3 ]
仮想化データセンターでは、1台のサーバー上で多数の仮想マシン(VM)を実行することでI/Oパフォーマンスの問題が発生します。初期のサーバー仮想化実装では、サーバーあたりの仮想マシンの数は通常6台以下に制限されていました。しかし、実際にはサーバーあたり7台以上のアプリケーションを安全に実行でき、サーバー全体の容量の80%を使用することも珍しくなく、これは仮想化されていないサーバーで平均5~15%しか使用されていないのと比べて大幅な改善です。
しかし、仮想化によって利用率が増加したことで、サーバーのI/O容量に大きな負担がかかりました。ネットワークトラフィック、ストレージトラフィック、サーバー間通信が組み合わさって負荷が増加し、サーバーのチャネルが過負荷状態になり、データ待ちでCPUがバックログやアイドル状態になることがあります。 [ 4 ]
仮想I/Oは、I/Oを単一の接続に統合することでパフォーマンスのボトルネックを解消します。この接続の帯域幅は、理想的にはサーバー自体のI/O容量を超え、I/Oリンク自体がボトルネックにならないようにします。この帯域幅は、ストレージとネットワークリソースの両方への複数の仮想接続にリアルタイムで動的に割り当てられます。I/O負荷の高いアプリケーションでは、このアプローチにより、VMのパフォーマンスとサーバーあたりのVMの潜在的な数の両方を向上させることができます。[ 2 ]
サービス品質(QoS)制御を含む仮想I/Oシステムは、特定の仮想マシンへのI/O帯域幅を調整することもできるため、重要なアプリケーションの予測可能なパフォーマンスが保証されます。したがって、QoSは、本番サーバーとエンドユーザーアプリケーションの両方に対するサーバー仮想化の適用性を高めます。 [ 4 ]
ブレードサーバーシャーシは、小さな物理スペースに多数のサーバー(したがって多数のI/O接続)をパッケージ化することで密度を高めます。仮想I/Oは、すべてのストレージおよびネットワーク接続を単一の物理インターコネクトに統合し、ポート数の物理的な制限をなくします。仮想I/Oは、ソフトウェアベースの構成管理も可能にし、I/Oデバイスの制御を簡素化します。この組み合わせにより、特定のスペースにより多くのI/Oポートを配置でき、結果として得られる環境の実用的管理が容易になります。[ 9 ]
{{cite web}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク){{cite web}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク)