Scsi support on xen
Download
1 / 19

SCSI support on Xen - PowerPoint PPT Presentation


  • 86 Views
  • Uploaded on

SCSI support on Xen. MATSUMOTO Hitoshi [email protected] Fujitsu Ltd. Why SCSI?. Current Xen status personal use available business use reliability and availability are required

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' SCSI support on Xen' - kerry


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Scsi support on xen

SCSI support on Xen

MATSUMOTO Hitoshi [email protected]

Fujitsu Ltd.


Why scsi
Why SCSI?

  • Current Xen status

    personal use available

    business use reliability and availability

    are required

  • reliability backup with SCSI function

    availability SCSI control


Business use large system
business use (Large system)

  • The major backup media is Tape device. BACKUP is indispensable to large system. The backup software uses SCSI command to control tape drive and media changer.

  • The data base software for large system issues SCSI command directly (SCSI pass through) to disk.

LAN

server

server

DB server

Backup server

SCSI command

SCSI command

SCSI driver

SCSI driver

FC

FC

FC

FC

FC

FC

FC

FC

FC

FC

Disk

Tape


Current status of scsi support on xen
Current status of SCSI support on Xen

  • SCSI frontend/backend drivers were proposed by Fujita-san at the Xen Summit 2006.

    Xen SCSI driver tgt model

    Key word ;

    - SCSI protocol processing in user space

    - tgt: framework for storage target drivers


Scsi driver tgt model
SCSI driver tgt model

Host (Dom 0)

Guest

user space

SCSI disk

emulation

tgt daemon

kernel space

sd/st/sr/sg

tgt core

HBA driver

scsi

SCSI back driver

SCSI front driver

Hypervisor

SCSI device

  • Able to create, debug and maintain in user space → Free from kernel

  • Enable access: raw partitions, regular files, LVM, files over network, etc.

  • Supported disk device.


Scsi driver tgt model1
SCSI driver tgt model

Host (Dom 0)

Guest

user space

SCSI disk

emulation

tgt daemon

tgt core

sd/st/sr/sg

kernel space

scsi

HBA driver

SCSI back driver

SCSI front driver

Hypervisor

SCSI device

  • kernel space(tgt core)→user space(tgt daemon)→kernel space(HBA driver) makes overhead for performance.

  • Other devices (tape, media changer, etc) are not supported.


Iops vbd vs scsi driver tgt model
IOPS VBD vs SCSI driver (tgt model)

version: based on Xen 3.0.4

CPU: host vcpu=1, guest vcpu=1

Memory: host=737MB, guest=256MB

Tool: iozone

Disk access: random, O_DIRECT

Block size: 8KB

We need performance!


Scsi passthrough driver model
SCSI passthrough driver model

  • This architecture is similar to the current Xen driver(VBD) model.

  • Backend driver works in kernel.( SCSI is processed in kernel space)

Guest

Host (Dom 0)

sd/st/sr/sg

kernel space

scsi

SCSI passthrough

HBA driver

SCSI back driver

SCSI front driver

Hypervisor

SCSI device

  • This SCSI passtrough driver supports

  • disk, tape drive and media changer

  • FC-SCSI


SCSI driver passthrough model structure

Host (Dom0)

File I/O

guest

VFS

VFS

file_operations

Device

Device

ext3

ext3

page

BufferCashe

BufferCashe

SCSI backend driver

bio

scsi_cmnd

Block device

Block device

request

request

SCSI driver

SCSI driver

scsi_cmnd

SCSI frontend driver

HBA driver

scsi_cmnd

HYPERVISOR

disk


More reliability and performance
more reliability and performance

  • Redundancy and Load balance multi path support

application

application

sd/st/sg

scsi_mod

sd/st/sg

scsi_mod

HBA native

driver

HBA native

driver

HBA card

HBA card

HBA card

disk

disk


Multi path driver
multi path driver

application

sd/st/sg

scsi_mod

multi path driver

HBA card

HBA card

disk

  • fail over: alternate path retry

  • load balance: multi access path

application

sd/st/sg

scsi_mod

multi path driver

HBA card

HBA card

disk

fail over

load balance


SCSI driver passthrough model structure 2

Host (Dom0)

File I/O

guest

VFS

VFS

file_operations

Device

Device

ext3

ext3

page

BufferCashe

BufferCashe

SCSI backend driver

bio

scsi_cmnd

Block device

Block device

request

request

SCSI driver

SCSI driver

scsi_cmnd

multi path driver

SCSI frontend driver

HBA driver

scsi_cmnd

HYPERVISOR

disk


Scsi driver support
SCSI driver support

  • Enable to issue SCSI command directly from each guest.

  • Each FC HBA card is assigned to one guest.

host

guest 1

guest 2

Host OS

I/O operation

I/O operation

SCSI backend

driver

SCSI backend

driver

guest OS

guest OS

SCSI frontend

driver

SCSI frontend

driver

FC(SCSI) native

driver

FC(SCSI) native

driver

Hypervisor

FC HBA card

FC HBA card

SAN


Npiv n port identifier virtualization
NPIV (N-Port Identifier Virtualization)

  • Virtual HBAs hosted by a physical HBA, unique SAN identify for each virtual HBAs.

HBA driver

HBA driver

HBA card

HBA card

HBA card

HBA card

SAN

SAN

NPIV not supported

NPIV supported


Scsi driver npiv support
SCSI driver(NPIV) support

  • Enable to issue SCSI command directly from each guest.

host

guest 1

guest 2

Host OS

I/O operation

I/O operation

SCSI backend

driver

SCSI backend

driver

guest OS

guest OS

SCSI frontend

driver

SCSI frontend

driver

FC(SCSI) native

driver with NPIV

Hypervisor

FC HBA card with NPIV

SAN


I o server domain support
I/O server domain support

Host domain

I/O server domain

Guest 1

Guest 2

host OS

Driver OS

I/O operation

I/O operation

guest OS

guest OS

VBD backend driver

VBD

frontend driver

VBD

frontend driver

disk native driver

Hypervisor

HBA card

HBA card


Vt d support
VT-d support

Host domain

Guest 1

Guest 2

Host OS

I/O operation

I/O opetation

guest OS

guest OS

FC(SCSI)

native driver

FC(SCSI)

native driver

Hypervisor

FC HBA card

FC HBA card


Road map
road map

  • FC-SCSI

  • NPIV

submit code

submit code


ad