ESXi armazena os arquivos de disco de uma máquina virtual em um repositório de dados VMFS que reside em um dispositivo de armazenamento SAN. Quando os sistemas operacionais convidados da máquina virtual enviam comandos SCSI para seus discos virtuais, a camada de virtualização SCSI converte esses comandos em operações de arquivo VMFS.

Quando uma máquina virtual interage com seu disco virtual armazenado em uma SAN, ocorre o seguinte processo:

  1. Quando o sistema operacional convidado em uma máquina virtual lê ou grava no disco SCSI, ele envia comandos SCSI para o disco virtual.
  2. Os drivers de dispositivo no sistema operacional da máquina virtual se comunicam com os controladores SCSI virtuais.
  3. O controlador SCSI virtual encaminha os comandos para o VMkernel.
  4. O VMkernel executa as seguintes tarefas.
    1. Localiza um arquivo de disco virtual apropriado no volume VMFS.
    2. Mapeia as solicitações dos blocos no disco virtual para blocos no dispositivo físico apropriado.
    3. Envia a solicitação de E / S modificada do driver de dispositivo no VMkernel para o iniciador iSCSI, o hardware ou o software.
  5. Se o iniciador iSCSI for um adaptador iSCSI de hardware, independente ou dependente, o adaptador executará as seguintes tarefas.
    1. Encapsula solicitações de E / S em unidades de dados de protocolo iSCSI (PDUs).
    2. Encapsula PDUs iSCSI em pacotes TCP / IP.
    3. Envia pacotes IP via Ethernet para o sistema de armazenamento iSCSI.
  6. Se o iniciador iSCSI for um adaptador iSCSI de software, ocorrerá o seguinte.
    1. O iniciador iSCSI encapsula solicitações de E / S nas PDUs iSCSI.
    2. O iniciador envia PDUs iSCSI por meio de conexões TCP / IP.
    3. A pilha TCP / IP do VMkernel retransmite pacotes TCP / IP para uma NIC física.
    4. A NIC física envia pacotes IP sobre Ethernet para o sistema de armazenamento iSCSI.
  7. Os switches e roteadores Ethernet na rede transportam a solicitação para o dispositivo de armazenamento apropriado.