iscsi target tgt试用
来源:互联网 发布:校园网络逻辑拓扑图 编辑:程序博客网 时间:2024/05/16 15:34
在使用eucalyptus的时候,发现其实现iscsi target的方式是使用开源的tgt来实现的。所以决定搭建tgt进行一下测试,主要是其稳定性,测试工具选择fio(编写者为linux io协议栈的编写者)。
测试环境:vmware esxi 5.1
eucalyptus 3.3.1
centos 6.4 x86_64
tgt-1.0.24
fio-2.1
测试方法:
在vmware esxi 中创建centos主机,安装tgt,分配4块200GB的硬盘作为LUN使用。而后分别将4个LUN映射至eucalyptus中的4台centos vm,在centos vm中通过fio进行稳定性测试,运行72h;
tgt安装:
因为仅为试用,所以采用yum的安装方法:
#yum install scsi-target-utils #service tgtd start #chkconfig tgtd on
fio安装:
下载最新的fio源码包
#yum -y install libaio-devel #tar -xvf fio-2.1.0.tar #./configure && make && make install
tgt 配置
# This is a sample config file for tgt-admin.# By default, tgt-admin looks for its config file in /etc/tgt/targets.conf## The "#" symbol disables the processing of a line.# This one includes other config files:#include /etc/tgt/temp/*.conf# Set the driver. If not specified, defaults to "iscsi".## This can be iscsi or iser. To override a specific target set the# "driver" setting in the target's config.default-driver iscsi#<target iqn.2008-09.com.example:iser>#Example: the next line would override default driver type.#driver iser#<target># Set iSNS parameters, if needed#iSNSServerIP 192.168.111.222#iSNSServerPort 3205#iSNSAccessControl On#iSNS On# Continue if tgtadm exits with non-zero code (equivalent of# --ignore-errors command line option)#ignore-errors yes# Sample target with one LUN only. Defaults to allow access for all initiators:<target iqn.2008-09.com.example:server.target1> backing-store /dev/sdb initiator-address 10.10.200.211</target><target iqn.2008-09.com.example:server.target2> backing-store /dev/sdc initiator-address 10.10.200.230</target><target iqn.2008-09.com.example:server.target3> backing-store /dev/sdd initiator-address 10.10.200.231</target><target iqn.2008-09.com.example:server.target4> backing-store /dev/sde initiator-address 10.10.200.232</target># Similar, but we use "direct-store" instead of "backing-store".# "direct-store" reads drive parameters with sg_inq command and sets them to# the target.# Parameters fatched with sg_inq are:# - Vendor identification# - Product identification# - Product revision level# - Unit serial number (if present)# We also specify "incominguser".#<target iqn.2008-09.com.example:server.target2># direct-store /dev/sdd# incominguser someuser secretpass12#</target># An example with multiple LUNs, disabled write-cache (tgtd enables write-cache# by default) and vendor identification set to "MyVendor"#<target iqn.2008-09.com.example:server.target3># backing-store /dev/LVM/somedevice1# Becomes LUN 1# backing-store /dev/LVM/somedevice2# Becomes LUN 2# backing-store /dev/LVM/somedevice3# Becomes LUN 3# write-cache off# vendor_id MyCompany Inc.#</target># Similar to the one above, but we fetch vendor_id, product_id, product_rev and# scsi_sn from the disks.# Vendor identification (vendor_id) is replaced in all disks by "MyVendor"#<target iqn.2008-09.com.example:server.target4># direct-store /dev/sdb# Becomes LUN 1# direct-store /dev/sdc# Becomes LUN 2# direct-store /dev/sdd# Becomes LUN 3# write-cache off# vendor_id MyCompany Inc.#</target># Note that "first-device-first-lun numbering" will work only for simple# scenarios above, where _only_ direct-store _or_ backing-store is used.# If you mix backing-store and direct-store, then all backing-store entries# are processed before direct-store-entries.#<target iqn.2008-09.com.example:server.target4># direct-store /dev/sdb# Becomes LUN 3# backing-store /dev/sdc# Becomes LUN 1# direct-store /dev/sdd# Becomes LUN 4# backing-store /dev/sde# Becomes LUN 2#</target># Even more complicated example - each device has different parameters.# You can use indentation to make the config file more readable.# Note that LUNs will be assigned more or less randomly here (and still# backing-store get LUNs assigned before drect-store).# You can specify multiple mode_page parameters (they are commented out# in this example).# Note that some parameters (write-cache, scsi_sn) were specified "globally".# "Global" parameters will be applied to all LUNs; they can be overwritten# "locally", per LUN.# If lun is not specified, it will be allocated automatically (first available).#<target iqn.2008-09.com.example:server.target5># <direct-store /dev/sdd>#vendor_id VENDOR1#removable 1#device-type cd#lun 1# </direct-store># <direct-store /dev/sda>#vendor_id VENDOR2#lun 2# </direct-store># <backing-store /dev/sdb1>#vendor_id back1#scsi_sn SERIAL#write-cache on# lun 3# lun is commented out - will be allocated automatically# </backing-store># <backing-store /dev/sdd1>#vendor_id back2#mode_page 8:0:18:0x10:0:0xff....#mode_page 8:0:18:0x10:0:0xff....#bs-type aio#lun 15# </backing-store> # Some more parameters which can be specified locally or globally: #scsi_id ... #scsi_sn ... #vendor_id ... #product_id ... #product_rev ... #sense_format ... #removable ... #online ... #readonly [1 | 0] - 1 means readonly and 0 is read-write #path ... #mode_page 8:0:18:0x10:0:0xff.... #mode_page 8:0:18:0x10:0:0xff.... #device-type ... #bs-type ...# backing store type - default rdwr, can be aio, mmap, etc... #allow-in-use yes# if specified globally, can't be overwritten locally# write-cache off# scsi_sn multipath-10 # Parameters below are only global. They can't be configured per LUN. # Only allow connections from 192.168.100.1 and 192.168.200.5# initiator-address 192.168.100.1# initiator-address 192.168.200.5 # Tuning parameters (global, per target) #MaxRecvDataSegmentLength 8192 #MaxXmitDataSegmentLength 8192 #HeaderDigest None #DataDigest None #InitialR2T Yes #MaxOutstandingR2T 1 #ImmediateData Yes #FirstBurstLength 65536 #MaxBurstLength 262144 #DataPDUInOrder Yes #DataSequenceInOrder Yes #ErrorRecoveryLevel 0 #IFMarker No #OFMarker No #DefaultTime2Wait 2 #DefaultTime2Retain 20 #OFMarkInt Reject #IFMarkInt Reject #MaxConnections 1 # Allowed incoming users# incominguser user1 secretpass12# incominguser user2 secretpass23 # Outgoing user# outgoinguser userA secretpassA#</target># The device will have lun 1 unless you specify something else#<target iqn.2008-09.com.example:server.target6># backing-store /dev/LVM/somedevice# lun 10#</target># Devices which are in use (by system: mounted, for swap, part of RAID, or by# userspace: dd, by tgtd for another target etc.) can't be used, unless you use# --force flag or add 'allow-in-use yes' option#<target iqn.2008-09.com.example:server.target7># backing-store /dev/LVM/somedevice# allow-in-use yes#</target>#<target iqn.2008-09.com.example:server.target8># <backing-store /dev/LVM/somedevice># scsi_sn serial1# </backing-store># <backing-store /dev/LVM/somedevice2># scsi_sn serial2# </backing-store># allow-in-use yes#</target># Not supported configurations, and therefore, commented out:#<target iqn.2008-09.com.example:server.target9># backing-store /dev/LVM/somedevice1# backing-store /dev/LVM/somedevice2# lun 10# lun 11#</target>#<target iqn.2008-09.com.example:server.target10># <direct-store /dev/sdd># vendor_id VENDOR1# </direct-store>## direct-store /dev/sdc#</target># This one will break the parser:#<target iqn.2008-09.com.example:server.target11># <direct-store /dev/sdd># vendor_id VENDOR1# </direct-store>## direct-store /dev/sdc## <direct-store /dev/sdd># vendor_id VENDOR1# </direct-store>#</target>
fio 配置
[global]bsrange=512-204800ioengine=libaiouserspace_reaprw=randrwrwmixwrite=20time_basedruntime=172800direct=1randrepeat=0norandommapramp_time=6iodepth=16iodepth_batch=8iodepth_low=8iodepth_batch_complete=8exitall[test]filename=/dev/sddnumjobs=8size=200G
- iscsi target tgt试用
- iscsi target tgt架构
- iscsi target tgt架构
- iSCSI Target and Initiator
- Linux iSCSI Target Setup
- mark iscsi target
- 配置linux iSCSI target
- CentOS配置iSCSI-target
- nfs和iscsi target
- linux iscsi网络的三种工具tgt iscsi_tgt targetcli
- centos iscsi target, win7 iscsi initiator实验
- 使用tgt搭建一个基于rbd的SCSI target
- centos iscsi target服务设置
- 搭建iscsi-target服务器实战
- iSCSI的配置(target/initiator)
- iSCSI的配置(target/initiator)
- ceph rbd 通过iscsi tgt共享 查看和命令手动操作
- Rhel 5.4 iscsi target 和iscsi initer配置
- 【cocos2d-x官方文档】骨骼动画详解
- linux source命令
- html移动文字
- VC中ListCtrl经验总结
- oracle左右全连接
- iscsi target tgt试用
- CentOS下搭建Git服务器Gitosis[教程]
- sipp测试总结
- 实现 GetTickCount64
- dsPIC33F单片机产生正弦波形
- 写ASP采集的一些函数
- 【TCP/IP详解】第3章 IP:网际协议
- 【jiasuba】Word2010启动一直没响应,如何解决?
- 如何提高英文的科研写作能力