SCSI support on Xen MATSUMOTO Hitoshi matsumotohitosh@jp.fujitsu.com - - PowerPoint PPT Presentation

scsi support on xen
SMART_READER_LITE
LIVE PREVIEW

SCSI support on Xen MATSUMOTO Hitoshi matsumotohitosh@jp.fujitsu.com - - PowerPoint PPT Presentation

SCSI support on Xen MATSUMOTO Hitoshi matsumotohitosh@jp.fujitsu.com Fujitsu Ltd. Why SCSI? Current Xen status personal use available business use reliability and availability are required reliability backup


slide-1
SLIDE 1

SCSI support on Xen

MATSUMOTO Hitoshi matsumotohitosh@jp.fujitsu.com Fujitsu Ltd.

slide-2
SLIDE 2

2

Why SCSI?

 Current Xen status

personal use available business use reliability and availability are required

 reliability backup with SCSI function

availability SCSI control

slide-3
SLIDE 3

3

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.

Tape FC FC server FC FC FC FC FC Disk

server

FC FC

LAN

FC DB server SCSI command SCSI driver Backup server SCSI command SCSI driver

slide-4
SLIDE 4

4

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
slide-5
SLIDE 5

5

SCSI driver tgt model

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.

sd/st/sr/sg scsi HBA driver Hypervisor SCSI device tgt core

user space kernel space

Host (Dom 0)

Guest

SCSI disk emulation

tgt daemon SCSI back driver SCSI front driver

slide-6
SLIDE 6

6

SCSI driver tgt model

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.

sd/st/sr/sg scsi HBA driver Hypervisor SCSI device tgt core

user space kernel space

Host (Dom 0)

Guest

SCSI disk emulation

tgt daemon SCSI back driver SCSI front driver

slide-7
SLIDE 7

7

IOPS VBD vs SCSI driver (tgt model)

118.3 89.4 Write 220.4 54.0 Read VBD SCSI

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!

slide-8
SLIDE 8

8

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)

Hypervisor sd/st/sr/sg scsi

SCSI front driver SCSI back driver

HBA driver SCSI device

Host (Dom 0) Guest

SCSI passthrough kernel space

This SCSI passtrough driver supports

  • disk, tape drive and media changer
  • FC-SCSI
slide-9
SLIDE 9

9

VFS Device ext3 SCSI driver Block device

HYPERVISOR HBA driver

disk

Host (Dom0)

VFS Device file_operations ext3 SCSI driver Block device SCSI frontend driver

bio page

scsi_cmnd

SCSI backend driver

request

guest

File I/O BufferCashe

SCSI driver passthrough model structure

BufferCashe

request

scsi_cmnd

scsi_cmnd

slide-10
SLIDE 10

10

more reliability and performance

 Redundancy and Load balance multi path support

application

sd/st/sg scsi_mod HBA card

disk

HBA native driver

application

sd/st/sg scsi_mod HBA card HBA card

disk

HBA native driver

slide-11
SLIDE 11

11

multi path driver

 fail over: alternate path retry  load balance: multi access path

application

sd/st/sg scsi_mod multi path driver HBA card HBA card

disk application

sd/st/sg scsi_mod multi path driver HBA card HBA card

disk fail over load balance

slide-12
SLIDE 12

12

VFS Device ext3 SCSI driver Block device

HYPERVISOR HBA driver

disk

Host (Dom0)

VFS Device file_operations ext3 SCSI driver Block device SCSI frontend driver

bio page

scsi_cmnd

SCSI backend driver

request

guest

File I/O BufferCashe BufferCashe request scsi_cmnd

scsi_cmnd

multi path driver

SCSI driver passthrough model structure 2

slide-13
SLIDE 13

13

SCSI driver support

 Enable to issue SCSI command directly from each guest.  Each FC HBA card is assigned to one guest.

guest 2 guest 1 host

Host OS guest OS guest OS

SCSI frontend driver SCSI frontend driver

I/O operation I/O operation SCSI backend driver FC(SCSI) native driver

SAN

FC HBA card FC HBA card

Hypervisor

FC(SCSI) native driver SCSI backend driver

slide-14
SLIDE 14

14

NPIV (N-Port Identifier Virtualization)

 Virtual HBAs hosted by a physical HBA, unique SAN

identify for each virtual HBAs.

NPIV not supported NPIV supported

HBA driver HBA driver

HBA card HBA card HBA card

SAN

HBA card

SAN

slide-15
SLIDE 15

15

SCSI driver(NPIV) support

 Enable to issue SCSI command directly from each guest.

guest 2 guest 1 host

Host OS guest OS guest OS

SCSI frontend driver SCSI frontend driver

I/O operation I/O operation SCSI backend driver FC(SCSI) native driver with NPIV FC HBA card with NPIV

Hypervisor

SCSI backend driver

SAN

slide-16
SLIDE 16

16

I/O server domain support

Hypervisor

Guest 2 Guest 1 I/O server domain

Driver OS guest OS guest OS

VBD frontend driver VBD frontend driver VBD backend driver

I/O operation I/O operation

Host domain

host OS

HBA card HBA card disk native driver

slide-17
SLIDE 17

17

VT-d support

Guest 2 Guest 1 Host domain

Host OS guest OS guest OS FC(SCSI) native driver

FC HBA card FC HBA card

I/O operation I/O opetation

Hypervisor

FC(SCSI) native driver

slide-18
SLIDE 18

18

road map

FC-SCSI

NPIV

4Q 3Q 2007/2Q

submit code submit code

slide-19
SLIDE 19

19