Upload
ngonhu
View
216
Download
0
Embed Size (px)
Citation preview
2
Why SCSI?
Current Xen status personal use available business use reliability and availability are required reliability backup with SCSI function availability SCSI control
3
business use (Large system)
The major backup media is Tape device. BACKUP is indispensableto large system. The backup software uses SCSI command tocontrol tape drive and media changer.
The data base software for large system issues SCSI commanddirectly (SCSI pass through) to disk.
Tape
FC FC
server
FC FC FC FCFC
Disk
server
FC FC
LAN
FC
DB server SCSI command
SCSI driver
Backup server SCSI command
SCSI driver
4
Current status of SCSI support on Xen
SCSI frontend/backend drivers were proposedby 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
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/sgscsiHBA 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
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/sgscsi
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
7
IOPS VBD vs SCSI driver (tgt model)
118.389.4Write220.454.0ReadVBDSCSI
version: based on Xen 3.0.4CPU: host vcpu=1, guest vcpu=1 Memory: host=737MB, guest=256MBTool: iozoneDisk access: random, O_DIRECTBlock size: 8KB
We need performance!
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/sgscsi
SCSI front driverSCSI back driverHBA driver
SCSI device
Host (Dom 0) Guest
SCSI passthroughkernel space
This SCSI passtrough driver supports• disk, tape drive and media changer• FC-SCSI
9
VFS
Deviceext3
SCSI driver
Block device
HYPERVISORHBA driver
disk
Host (Dom0)VFS
Devicefile_operations
ext3
SCSI driver
Block device
SCSI frontend driver
bio
page
scsi_cmnd
SCSI backend driver
request
guestFile I/O
BufferCashe
SCSI driver passthrough model structure
BufferCashe
request
scsi_cmnd
scsi_cmnd
10
more reliability and performance
Redundancy and Load balance multi path support
application
sd/st/sgscsi_mod
HBA card
disk
HBA nativedriver
application
sd/st/sgscsi_mod
HBA cardHBA card
disk
HBA nativedriver
11
multi path driver
fail over: alternate path retry load balance: multi access path
application
sd/st/sgscsi_mod
multi path driver
HBA cardHBA card
disk
application
sd/st/sgscsi_mod
multi path driver
HBA cardHBA card
disk
fail over load balance
12
VFS
Deviceext3
SCSI driver
Block device
HYPERVISORHBA driver
disk
Host (Dom0)VFS
Devicefile_operations
ext3
SCSI driver
Block device
SCSI frontend driver
bio
page
scsi_cmnd
SCSI backend driver
request
guestFile I/O
BufferCasheBufferCashe
request
scsi_cmnd
scsi_cmndmulti path driver
SCSI driver passthrough model structure 2
13
SCSI driver support
Enable to issue SCSI command directly from each guest. Each FC HBA card is assigned to one guest.
guest 2guest 1host
Host OS
guest OS guest OS
SCSI frontend driver
SCSI frontend driver
I/O operation I/O operationSCSI backend
driver
FC(SCSI) nativedriver
SAN
FC HBA card FC HBA card
Hypervisor
FC(SCSI) nativedriver
SCSI backenddriver
14
NPIV (N-Port Identifier Virtualization)
Virtual HBAs hosted by a physical HBA, unique SANidentify for each virtual HBAs.
NPIV not supported NPIV supported
HBA driverHBA driver
HBA card HBA card HBA card
SAN
HBA card
SAN
15
SCSI driver(NPIV) support
Enable to issue SCSI command directly from each guest.
guest 2guest 1host
Host OS
guest OS guest OS
SCSI frontend driver
SCSI frontend driver
I/O operation I/O operationSCSI backend
driver
FC(SCSI) nativedriver with NPIV
FC HBA card with NPIV
Hypervisor
SCSI backenddriver
SAN
16
I/O server domain support
Hypervisor
Guest 2Guest 1I/O server domain
Driver OS
guest OS
guest OS
VBDfrontend driver
VBDfrontend driver
VBD backend driver
I/O operation I/O operation
Host domain
host OS
HBA card HBA card
disk native driver
17
VT-d support
Guest 2Guest 1Host domain
Host OS
guest OS guest OS
FC(SCSI)native driver
FC HBA cardFC HBA card
I/O operation I/O opetation
Hypervisor
FC(SCSI)native driver