COMSTAR 全称 CommonMultiprotocol SCSI TARget,支持 iSCSI,FiberChannel,FCoE,Infiniband,SAS 等协议。

通过COMSTAR,我们可已将一个裸盘或ZFS卷 (zvol)作为LUN,通过iSCSI协议共享给其他任意操作系统类型的主机,只要客户主机上安装了iSCSI Initiator !


以下验证必要的软件包是否已经安装:

  1. root@egoodbtr:~# pkginfo |grep iscsi
  2. system      SUNWiscsidmr                    Sun iSCSI Data Mover (Root)
  3. system      SUNWiscsidmu                    Sun iSCSI Data Mover (Usr)
  4. system      SUNWiscsir                      Sun iSCSI Device Driver (root)
  5. system      SUNWiscsitgtr                   Sun iSCSI Target (Root)
  6. system      SUNWiscsitgtu                   Sun iSCSI Target (Usr)
  7. system      SUNWiscsitr                     Sun iSCSI COMSTAR Port Provider (root)
  8. system      SUNWiscsitu                     Sun iSCSI COMSTAR Port Provider
  9. system      SUNWiscsiu                      Sun iSCSI Management Utilities (usr)
复制代码
opensolaris可以通过 IPS 按装 storage-server 软件包组来活动COMSTAR的完整功能。


COMSTAR 通过 stmf 服务存放配置,LUN mapping 等,所以必须启动 stmf 服务。
  1. root@egoodbtr:~# svcs stmf
  2. STATE          STIME    FMRI
  3. disabled       15:49:00 svc:/system/stmf:default
  4. root@egoodbtr:~# svcadm  enable stmf
  5. root@egoodbtr:~# svcs stmf
  6. STATE          STIME    FMRI
  7. maintenance    15:55:36 svc:/system/stmf:default
  8. must reboot  if not  stmf cannt online
  9. root@egoodbtr:~#reboot
  10. root@egoodbtr:~# svcs stmf
  11. STATE          STIME    FMRI
  12. online         15:57:49 svc:/system/stmf:default
  13. root@egoodbtr:~# stmfadm list-state
  14. Operational Status: online
  15. Config Status: initialized
复制代码
配置iSCSI Targer
验证iSCSI 相关系统服务的状态
  1. root@egoodbtr:~# svcs -a |grep -i iscsi
  2. disabled       15:57:31 svc:/network/iscsi_initiator:default
  3. disabled       15:57:38 svc:/network/iscsi/target:default
  4. disabled       15:57:38 svc:/system/iscsitgt:default
复制代码
启用iSCSI Target 服务
  1. root@egoodbtr:~# svcadm enable -r svc:/network/iscsi/target:default
  2. svcadm: svc:/milestone/network depends on svc:/network/physical, which has multiple instances.
复制代码
验证iSCSI Target服务已启用
  1. root@egoodbtr:~# svcs -a  |grep iscsi
  2. disabled       15:57:31 svc:/network/iscsi_initiator:default
  3. disabled       15:57:38 svc:/system/iscsitgt:default
  4. online         16:06:11 svc:/network/iscsi/target:default
复制代码
创建iSCSI Target
  1. root@egoodbtr:~# ifconfig -a
  2. lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
  3.         inet 127.0.0.1 netmask ff000000
  4. e1000g0: flags=1004843<UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4> mtu 1500 index 2
  5.         inet 122.133.160.77 netmask ffffff00 broadcast 122.133.160.255
  6. //创建 Target Portal Group 以在期望的网卡上进行iSCSI 数据通信 。
  7. root@egoodbtr:~# itadm create-tpg e1000g0
  8. root@egoodbtr:~# itadm create-target -t e1000g0
  9. Target iqn.1986-03.com.sun:02:4b262dba-44cc-6540-fa45-acd6287500be successfully created
  10. root@egoodbtr:~# itadm list-target –t e1000g0
  11. TARGET NAME                                                                           STATE    SESSIONS
  12. iqn.1986-03.com.sun:02:4b262dba-44cc-6540-fa45-acd6287500be online         0    
  13.     
  14. Configure a Target for Static Discovery
  15. root@egoodbtr:~# itadm list-target -v
  16. TARGET NAME                                                                           STATE    SESSIONS
  17. iqn.1986-03.com.sun:02:4b262dba-44cc-6540-fa45-acd6287500be  online   0        
  18.         alias:                  -
  19.         auth:                   none (defaults)
  20.         targetchapuser:         -
  21.         targetchapsecret:       unset
  22.         tpg-tags:               default
  23. root@egoodbtr:~# devfsadm -i iscsi
  24. root@egoodbtr:~# iscsiadm list initiator-node
  25. Initiator node name: iqn.1986-03.com.sun:01:8327c9a5ebd2.4b5391ef
  26. Initiator node alias: -
  27.         Login Parameters (Default/Configured):
  28.                 Header Digest: NONE/-
  29.                 Data Digest: NONE/-
  30.         Authentication Type: NONE
  31.         RADIUS Server: NONE
  32.         RADIUS Access: disabled
  33.         Configured Sessions: 1
复制代码

 

创建LUN
以下示例中将创建两个LUN,一个是基于物理磁盘(裸盘),一个是基于ZFS Zvol 创建的裸设备!

使用solaris 磁盘盘片创建裸设备
  1. root@egoodbtr:~# sbdadm create-lu /dev/rdsk/c3t2d0s2  
复制代码
  1. Created the following LU:
  2.  
  3.               GUID                                                 DATA SIZE           SOURCE
  4. ---------------------------------------------------  -------------------  ---------------------------
  5. 600144f0000c294bfb424a487ba80001      1071579136       /dev/rdsk/c3t2d0s2
复制代码


使用ZFS zvol 创建裸设备
1)创建ZFS 存储池 zpool
  1. root@egoodbtr:~# zpool create iscsi raidz c10t1d0 c20t1d0 c30t1d0  
复制代码


2)创建 zvol
  1. root@egoodbtr:~# zfs create -V 2g iscsi/vol1
复制代码


3)将zvol配置为裸设备

  1. root@egoodbtr:~# sbdadm create-lu /dev/zvol/rdsk/iscsi/vol1
复制代码
  1. Created the following LU:
  2.  
  3.               GUID                                                DATA SIZE                     SOURCE
  4. --------------------------------------------------  -------------------  ---------------------------------------
  5. 600144f0000c294bfb424a4886fa0002      1610547200       /dev/zvol/rdsk/iscsi/vol1
复制代码


4)设定LUN对网络上的所有主机可见
  1. root@egoodbtr:~/# stmfadm add-view 600144f0000c294bfb424a487ba80001 
  2. root@egoodbtr:~/# stmfadm add-view 600144f0000c294bfb424a4886fa0002
复制代码


或设定LUN对指定的网络主机可见

  1. root@egoodbtr:~# stmfadm create-hg Host-A 
  2. root@egoodbtr:~# stmfadm add-hg-member -g Host-A wwn.50014ee00274cbe wwn.50014ee00281dca
复制代码


//hg -(host group) ,wwn是远程主机节点iSCSI Initiator的wwn

  1. root@egoodbtr:~# stmfadm create-tg Targets-0
  2. root@egoodbtr:~# stmfadm add-tg-member -g Targets-0 wwn.50014ef00359bae
  3. root@egoodbtr:~# stmfadm add-view -h Host-A -t Targets-0 -n 1 GUID_number
复制代码
 
 
 
备份和恢复 COMSTAR 配置的方法
  1. # svccfg export -a stmf > COMSTAR.backup
  2. # svccfg import COMSTAR.backup
  3. #  Reboot
复制代码
关于如何使用iSCSI Initiator 访问Target 端共享出来的iSCSI磁盘(LUN)
请参见以下 IXPUB 【技术之家】-【群主话题】中的文章:

[服务器&存储] iSCSI initiator使用-Linux
[服务器&存储] iSCSI initiator使用-Solaris
[服务器&存储] iSCSI initiator的使用-Windows

 

Oracle Freeware for your Art Life          orafreeware@gmail.com