vios上的virtual scsi server adapter一般叫vhostn,如果系统上只有一个lpar,也就是vios所在的lpar,那么有时候会发现vhostn设备文件并不存在(最早的时候我曾一度以为应该用mkvdev来创建),其实此时如果再创建一个lpar,vhostn文件就会出现,比如在vios环境里执行:

$mksyscfg -r lpar -i"name=nim,lpar_env=aixlinux,auto_start=1,boot_mode=norm,mem_mode=ded,min_mem=1024,desired_mem=2048,max_mem=2048,proc_mode=shared,sharing_mode=uncap,uncap_weight=128,min_procs=1,desired_procs=1,max_procs=2,min_proc_units=0.25,desired_proc_units=0.5,max_proc_units=2,\"virtual_eth_adapters=4/0/3//0/0,5/0/4//0/0\""

成功之后执行:

-bash-3.2$ lshwres -r virtualio --rsubtype scsi
lpar_name=vios,lpar_id=1,slot_num=11,state=1,adapter_type=server,remote_lpar_id=2,remote_lpar_name=dnim,remote_slot_num=2,is_required=0
lpar_name=dnim,lpar_id=2,slot_num=2,state=0,adapter_type=client,remote_lpar_id=1,remote_lpar_name=06-8B7E4,remote_slot_num=11,is_required=1

看看上面加了颜色的部分很诡异,其实我们在第一条命令mksyscfg时根本没指定与scsi设备相关的任何参数,显然是vios/ivm帮着建立了vios与新建的lapr nim的virtual scsi adapter的map关系,slot num与adapterid是一个意思,用来在server与client partition之间建立virtual scsi adapter间的绑定关系。

另外,可以通过以下命令来查看一下vios上的vhost0的slot number:
-bash-3.2$ lsdev -vpd | grep vhost
  vhost0           U8204.E8A.068B7E4-V1-C11    Virtual SCSI Server Adapter

C11--表明该virtual SCSI server adapter所在的slot num为11
,这个信息也和lshwres命令显示的线索相符合。

注意,上面的步骤只是在client LPAR与VIOS之间建立了一个SCSI类型的map关系,如果client LPAR需要通过该map使用某一存储设备,显然需要在vios中将virtual scsi server adapter“落实”到一个实际的存储介质上。相关的步骤参见早先的一篇博文:http://blog.chinaunix.net/uid-23769728-id-3307836.html. 这个过程简单总结一下就是 a. 创建对应virtual scsi server adapter的一个VTD (Virtual Target Device) b. 给a中的VTD创建一个Backing device.

重温这些,是因为接下来我打算通过FC HBA的NPIV来给一个LPAR挂载一个SAN设备中的LUN.
02-05 19:50