iSCSI(Internet Small Computer System Interface)の仕組みについて

今回は iSCSI の技術について調べました。

iSCSI を利用することで外部ストレージへのデータアクセスに対するコストを低減できるようになります。

 

 

iSCSIとは?

iSCSI(Internet Small Computer System Interface)は、IPネットワーク上(イーサネット上)で SCSI プロトコルを利用してディスクアクセスをする技術です。

2003年2月11日に IETF によって RFC が提出されました。

RFC の内容は、SCSI プロトコル(iSCSIプロトコルではありません)をイーサネット上で TCP/IP を利用して通信する規格です。

 

iSCSI プロトコルとは?

iSCSI プロトコルは、SCSI プロトコルをカプセル化し、ターゲット情報の交換、認証を行います。

 

SCSI プロトコル

↑ カプセル化

iSCSI プロトコル

↑ カプセル化

TCP/IP プロトコル

 カプセル化

イーサネットフレーム

 

混乱しやすいですが

TCP/IP ← プロトコル(正しい順番、正しいルールを規定)

イーサネット ←   ハードウェア(LANケーブル、NIC周り)

 

SCSIプロトコルには、

  • データ
  • SCSI コマンド

が入っています。

 

SCSI-3 ← トランスポート層と定義されています。

 

iSCSIのメリット

  • ファイバチャネル(Fibre Channel)に比べると簡単に導入できる
  • 既存のスイッチやLAN環境をそのまま利用できるからコスト安
  • LAN環境があれば簡単に導入できるので高度なスキルは不要
  • 1Gbps、10Gbps のネットワークが一般化しパフォーマンスはファイバチャネルと比べても遜色ない
  • LAN環境なので冗長化・負荷分散・暗号化などがやりやすい(ファイバチャネルで同様のことを実現するのはハードルが高い)

 

 

iSCSIの機能

iSCSI プロトコルはイーサネット上(LAN環境)で TCP/IP プロトコルで通信をします。

HBA側とストレージ側で機能が分かれています。

  • HBA側 ← iSCSI イニシエーター
  • ストレージ側 ← iSCSI ターゲット

 

 

 

iSCSIイニシエータ(HBA側・サーバ側)

iSCSI イニシエータはデバイスドライバとして提供されています。

そのため、OS から見ると SCSI ディスクと同様に処理ができます。

通常は、HBA に iSCSI イニシエータが実装されており、BIOS レベルでも認識されるので、iSCSI 経由で OS をブートすることもできます。

iSCSI イニシエータは、ターゲット(ストレージなど)にコマンドを送る側(命令する側)であり、一般的にはサーバに搭載されている HBA(Host Bus Adaptor)が担当します。

 

VMware ESXi では、ハードウェア・イニシエータおよび VMkernel 内に専用のソフトウェア・イニシエータも実装されています。

 

iSCSIターゲット(ストレージ側)

イニシエータ側(サーバー側)から、コマンドを受け取りデータの書き込み、読み出しを行うストレージ側(ディスク・ドライブ、テープなど)が該当します。

 

 

iSCSI データアクセス認証機能

iSCSI に対応している HBA や外部ストレージは、iSCSI へのアクセスを制御するために認証方式として「CHAP認証」を使うことができます。

CHAP 認証は「一方向」「双方向」の認証をサポートしています。

一方向 CHAP 認証は、ハードウエア iSCSI およびソフトウエア iSCSI の両者に対応しています。

相互 CHAP 認証は、ソフトウエアiSCSI のみに対応しています。

CHAP を構成する前に、iSCSI ストレージで CHAP が有効になっているかどうか、システムがサポートする CHAP 認証方法は何かを確認する必要があります。

 

一方向 CHAP 認証

方向、つまり片方向の CHAP 認証では、ターゲットはイニシエータを認証しますが、イニシエータはターゲットを認証しません。

相互 CHAP 認証(ソフトウエアISCSIのみ)

相互、つまり双方向の CHAP 認証では、イニシエータはターゲットを認証できます。

セキュリティレベルが上がります。

 

 

Posted by 100%レンタルサーバーを使いこなすサイト管理人