SCST接口
在命令行输入scstadmin就可以查看scstadmin的命令行参数,可以直观的看到scstadmin所有的参数和解释,还有事例。
一、 基本操作:
(1) –config <config> 用指定的配置文件配置scst。<config>为配置文件路径
比如:输入 scstadmin –config /etc/scst.conf 读取/etc/scst.conf
系统启动时会自动读取/etc/scst.conf的配置
(2) –clearconfig 清除所有的scst配置(但scst配置文件没有被清除)
(3) –writeconfig <file> 把当前的scst配置写入配置文件。<file>为配置文件路径
比如:输入scstadmin –writeconfig /etc/scst.conf 把配置写入scst.conf
(4) –checkconfig <file> 检查当前scst配置与配置文件是否相同。<file>为配置文件路径
(5) –session 查看当前scst与所有initiator端的连接状态
比如:输入 scstadmin –session后 会列出下表:
其中红框部分是已经连接的客户端。
Target Name栏会显示这行连接的连接类型(ib fc或iscsi)
Initiator Name会列出initiator端的名字(ib连接是Guid、fc是WWNp、iscsi是iqn号)
Group Name会列出这行连接使用的Group组名。
二、 设备操作
(1)-adddev <device> -handler <handler> -path <path> -options <options> -blocksize <bytes> 向handler添加一个块设备
解释一下参数:<device>是添加后的磁盘名称,可以随意起名。
<handler>是hangler的类型,这里我们必须指定为vdisk
<path>是要添加磁盘的路径,比如/dev/vg0/iscsi0
<options>是选择设备的读取模式,其中有如下选项WRITE_THROUGH, READ_ONLY, NV_CACHE, BIO,如不加options选项,则默认为file_io模式
<bytes>是映射后的磁盘块大小,如果不加-blocksize选项,则默认块大小为512
(2)-removedev <device> -handler <handler> 从handler中移除一个已添加的盘。
比如输入scstadmin -removedev DISK01 –handler vdisk 会把上一步添加进的盘从handler中移除。
/proc/scsi_tgt/vdisk下的vdisk文件可以查看当前添加进handler的设备名以及设备信息。比如cat /proc/scsi/vdisk/vdisk。添加了8块盘,注意Options这行指定了每块盘的类型,WT是WRITE_THROUGH,NIO是NULLIO,NV是NV_CACHE
三、组操作
(1)-addgroup <group> 创建一个组 。<group>为组名。
比如scstadmin –addgroup HOST01 创建一个名为HOST01的组
(2)-removegroup <group>删除一个已创建的组
四、用户操作
(1)-adduser <user> -group <group> 添加一个用户到组。<user>参数 分三种:光纤为WWNP号,IB为Guid,iSCSI为iqn名称。 <group>为组名
比如scstadmin -adduser 50:06:0B:00:00:39:71:78 –group HOST1 向组HOST1添加一个远端FC卡的WWNP号
(2)-removeuser <user> -group <group>从组中删除一个用户。
(3)-clearuser –group <group>清空指定组的所有用户。
五、向组中添加或修改设备的操作
(1)-assigndev <device> -group <group> -lun <lun>
<device>为第二步 (“二、设备操作”)中向handler添加的设备名称。
<group> 指定要添加的组名
<lun>为lun号,注意:每组的lun号必须从0开始!!
比如scstadmin -assigndev DISK01 -group HOST01 -lun 0,向组HOST01中添加一个DISK01的盘,此块盘的lun号为0
(2)-releasedev <device> -group <group> 从指定组中移除一个已添加的设备。
(3)-cleardevs –group <group> 清空指定组中所有已添加的盘。
开启关闭服务:
(1) /etc/init.d/iscsi-scst 为iscsi服务
(2) /etc/init.d/openibd 为ib卡服务,如果关闭,则ib卡会ping不通。
(3) /proc/scsi_tgt/qla_isp/X X为这个目录下一个文件名为数字的文件,向X写入enable all或者disable all会开启关闭光纤卡的服务。
比如echo “enable all” >/proc/scsi_tgt/qla_isp/2 开启光纤卡连接
光纤卡的连接也可以通过scstadmin命令关闭。比如target端的光纤卡port WWN号为21:00:00:1b:32:92:5b:72
scstadmin –enable 21:00:00:1b:32:92:5b:72 开启此光纤卡服务
scstadmin –disable 21:00:00:1b:32:92:5b:72关闭光纤卡服务
查看当前scst设置:
scst会在/proc/scsi_tgt目录下输出信息。我们可以通过查看这个目录下的文件来了解当前scst的配置。
(1)/proc/scsi_tgt/groups目录下每一个文件夹的名称为已经创建的组,可进入这个文件夹查看每组添加进的设备和用户名。
(3)-resyncdev <device> -handler <handler> 动态更改磁盘容量后,异步通知。注意这个
比如输入 scstadmin -adddev DISK01 -handler vdisk -path /vdisks/disk01.dsk -options READ_ONLY,WRITE_THROUGH就是添加一个路径为/vdisks/disk01.dsk的磁盘,磁盘名称为DISK01,模式为只读的和WRITE_THROUGH模式,默认块大小512。
以上为两个最重要的文件夹,/proc/scsi_tgt/下其他的文件也可以cat,比如cat /proc/scsi_tgt/thread为scst运行的线程数。cat /proc/scsi_tgt/session查看当前的连接信息,相当于命令 scstadmin -session