ztejob 发表于 2011-12-09 15:25

求助:mutipack磁盘柜连接两台主机,只有一台主机认得到磁盘

想学习suncluster,无奈没有存储从别人那里借来个mutipack磁盘柜连接两台主机,可只有一台主机认得到磁盘柜上面的硬盘,有没有哪位兄弟用过mutipack啊
麻烦支个招怎么弄.谢谢

byuq 发表于 2011-12-09 16:51

改没改scsi id ?

财版 发表于 2011-12-09 16:53

需要修改SCSI ID , 修改方式本论坛搜索。:em27:

东方蜘蛛 发表于 2011-12-09 17:09

对于双机共享scsi磁盘阵列的cluster环境,通常,两个scsi主机控制器会通过共享磁盘阵列形成一条scsi链,这样共享链上就存在两个相同的SCSI ID(或target id)值 7 :这是scsi控制器缺省的scsi-initiator-id值。显然,这种情况不符合SCSI协议。
协议规定:包括控制器的scsi-initiator-id 在内,SCSI总线上的每一个设备必须有唯一的SCSI ID来标识其物理地址。因此,为能够正确操作共享SCSI总线,必须在其中一台节点上修改主机scsi控制器的scsi-initiator-id值来避免产生冲突。

东方蜘蛛 发表于 2011-12-09 17:10

如何改变scsi-initiator-id之值呢?这要从scsi-initiator-id的意义和openboot设备树(device tree)说起。

东方蜘蛛 发表于 2011-12-09 17:11

        scsi-initiator-id的意义:
SCSI总线上支持两类设备:
一类是initiators,在SCSI总线上initiator发起scsi操作请求,一般而言,initiator由主机适配器来实现,如各种基于sbus、pci的scsi主机适配器。这类设备的SCSI ID定义为scsi-initiator-id,其缺省值是7。正常情况下,单台主机通过SCSI卡与外设相连并不需要修改控制器的scsi-initiator-id值。
另一类设备称为targets,它们负责响应initiator发起的操作请求,如各种scsi harddisk、scsi tape、scsi cdrom、scsi scanner、scsi printer、scsi diskarray都是target 设备的实例。这类设备的SCSI ID也称target ID,其可用值的范围是:0~6、8-15,通过调整各个设备的跳线(jumper settings)或开关(switch)位置来决定具体ID值。
所有这些SCSI ID同时还表示了相应设备在SCSI总线上的优先级(precedence):SCSI ID 7 有最高的优先级,依次是6,逐渐下降到0,SCSI 8~15的优先级均低于0。

东方蜘蛛 发表于 2011-12-09 17:13

        openboot设备树(device tree)简介:
sun 主机加电后,首先进行必要的自检(POST)和初始化(INITIALIZATION)来决定核心硬件的可操作性,此过程正常通过之后,将由系统的主openboot prom和所有外设firmware共同作用形成一个设备树(device tree)数据结构(data structure),这个结构全面反映主机硬件系统的互连拓扑(topology)情况。

设备树(device tree)由一系列代表总线、处理器、内存处理单元、控制器、硬盘驱动器等具体设备或者是某种纯软件过程的设备节点(device node)组成。设备树的根节点(root node)一般表示主机的主要系统总线,中间节点一般表示pci、sbus等互连总线及与这些总线相连的控制器,处于设备树末端的节点称为叶节点(leaf node),叶节点表示诸如硬盘等设备。
每个设备节点(device node)描述了相关设备或过程的一系列属性(properties)、方法(method)和由方法使用的数据。
其中,属性(properties)描述了相关设备或过程的静态特征,如:节点名(node name),各子节点(children node)记录等,我们关注的scsi-initiator-id实际上就是设备树中scsi主机控制器的一种属性(properties)。方法(method)提供了访问设备的软件过程。
主机系统在完成加电自检建立好设备树后,就进入系统监控状态,即openboot prom状态,我们能够在此状态下使用openboot prom的用户接口提供的一系列命令来显示、访问、修改系统设备树和设备节点。

Tdog 发表于 2011-12-09 17:35

ztejob 发表于 2011-12-09 18:22

ok probe-scsi-all
This command may hang the system if a Stop-A or halt command
has been executed.Please type reset-all to reset the system
before executing this command.
Do you wish to continue? (y/n) y
/pci@1f,700000/scsi@2,1

/pci@1f,700000/scsi@2
Target 0
Unit 0   Disk   SEAGATE ST373207LSUN72G 045B    143374738 Blocks, 70007 MB
Target 1
Unit 0   Disk   SEAGATE ST373207LSUN72G 0458    143374738 Blocks, 70007 MB

/pci@1d,700000/scsi@2,1

/pci@1d,700000/scsi@2
Target 9
Unit 0   Disk   SEAGATE ST336704LSUN36G 032C
Target a
Unit 0   Disk   SEAGATE ST336704LSUN36G 032C

ok nvedit
   0: probe-all
   1: cd /pci@1d,700000/scsi@2
   2: 6 encode-int " scsi-initiator-id" property
   3: device-end
   4: install-console
   5:
ok nvstore
ok setenv use-nvramrc? true
use-nvramrc? =          true
ok reset-all

这是这样更改的SCSI ID,可又改不过过来,晕................

ztejob 发表于 2011-12-09 18:23

ok probe-scsi-all
This command may hang the system if a Stop-A or halt command
has been executed.Please type reset-all to reset the system
before executing this command.
Do you wish to continue? (y/n) y
/pci@1f,700000/scsi@2,1

/pci@1f,700000/scsi@2
Target 0
Unit 0   Disk   SEAGATE ST373207LSUN72G 045B    143374738 Blocks, 70007 MB
Target 1
Unit 0   Disk   SEAGATE ST373207LSUN72G 0458    143374738 Blocks, 70007 MB

/pci@1d,700000/scsi@2,1

/pci@1d,700000/scsi@2
Target 9
Unit 0   Disk   SEAGATE ST336704LSUN36G 032C
Target a
Unit 0   Disk   SEAGATE ST336704LSUN36G 032C

ok nvedit
   0: probe-all
   1: cd /pci@1d,700000/scsi@2
   2: 6 encode-int " scsi-initiator-id" property
   3: device-end
   4: install-console
   5:
ok nvstore
ok setenv use-nvramrc? true
use-nvramrc? =          true
ok reset-all

这是这样更改的SCSI ID,可又改不过过来,晕................
页: [1] 2
查看完整版本: 求助:mutipack磁盘柜连接两台主机,只有一台主机认得到磁盘