标签:
一、设备的层次关系
AIX系统将设备的层次结构分成三层,如图:
1)顶层是功能分类(Functional Class),就是按照设备的基本功能分组,表示设备可以做什么,例如,所有的适配器都属于adapter类,adapter就是一个功能分类;所有的打印机都属于printer功能分类;所有的总线都属于bus功能分类;所有的磁带机都属于tape功能分类。
2)第二层是功能子类(Functional Subclasses),是按某一个具体的性质划分,表示设备以什么样的方式连接到系统上。将一个功能分类划分成多个功能子类,例如,ISA的标准输入输出适配器属于isa_sio功能子类,而PCI适配器属于pci功能子类;有如打印机有串口和并口之分,串口打印机属于rs232功能子类,二并口打印机属于parallel功能子类。
3)最底层的是设备类型(Device Type),它是按照型号和制造商来分类,表示设备具体是什么型号,例如,同属于SCSI功能子类的磁带机可分为8mm和4mm两种型号。
通常预定义设备数据库对内部设备提供了相当完备的支持,而对外部设备的支持是“按需”的。用户定义设备数据库包含着当前已经存在系统中并被定义和配置的设备,当前与系统所连接的每一个设备就是一条记录,都被保存在用户定义设备数据库中。
二、逻辑设备文件
应用程序是通过逻辑设备来操作物理设备的,逻辑设备是应用程序操作物理设备的接口,应用程序把数据从逻辑设备读入到内存进行处理,处理完毕以后,将结果又写到逻辑设备,操作系统处理逻辑设备和物理设备之间具体的数据传输。
当用户程序从逻辑设备读数据时,操作系统通过设备驱动程序从物理设备活的数据交给逻辑设备;当应用程序向逻辑设备写数据时,操作系统通过设备驱动程序把逻辑设备上接收来的数据送给物理设备。
在Unix系统中,逻辑设备常常表现为设备文件,设备文件是一种特殊的文件,它存在于/dev目录下,用户可以通过直接访问这些设备文件夹来实现对逻辑设备的读写操作。用户程序是通过设备文件来访问设备的,但是对实际设备的读、写操作则是由设备驱动程序来完成的。
Unix系统中设备分为两种:
1)块设备(Block Device),具有一定结构的随机存取设备,例如硬盘,文件系统等
2)字符设备(Character Device),这是一个顺序的数据流设备,对这种设备的读写是按字符进行的,而且这些字符是连续地形成一个数据流。它不具备缓冲区,对这种设备的读写是实时的,例如:终端,磁带机等。
三、设备的状态(共4种)
1)Undefined(未定义):表示系统无法识别该设备,也就是说在系统中找不到该设备。实际上这个状态并不存在,只是概念上针对预定义设备而言,有这样一种状态。
2)Defined(已定义):表示系统可以识别该设备,该设备的信息也保存在用户定义设备数据库中,但是系统不能使用它。处于这种状态的设备,系统已经分配了一个逻辑设备名和一个设备端口,并且存储了与之相关的属性,只是设备不能由系统来使用,用户也不能访问它。
3)Available(可用):表示该设备在系统中可以使用,用户也可以访问。
4)Stopped(停用):表示设备不能被使用,但是操作系统可以通过驱动程序识别到它
四、RS6000和pSeries服务器的机器类型
通过#bootinfo -p查看
标识
含义
rs6k
微通道的单处理器类型
rs6ksmp
微通道的多处理器类型
rspc
ISA总线类型
chrp
PCI总线类型
五、设备的位置编号
位置编号分为两种,一种是物理位置编号(Physical Location Code),描述物理设备的连接;一种是AIX系统位置编号,描述物理设备在操作系统中的逻辑连接。不同的机器类型,其位置编码也不同。但格式相同。
AIX系统的位置编号格式按是否为SCSI设备来区分,分为两种:非scsi设备位置编号格式为:AB-CD-EF-GH,scsi设备位置编号格式为:AB-CD-EF-G,H。对于这两种设备,位置编号AB-CD-EF含义都是相同的,不同的只有最后两位字符。
1)AB:表示总线类型,也就是适配器所在的系统主板。AB为00时,表示是适配器在CPU板卡或者系统单元(因机器类型不同)中。AB为其他值时,表示适配器在I/O扩展板卡中,因此,AB就是指I/O总线和CPU板卡上的插槽。其中A表示I/O总线,也就是总线类型,A为0时,表示标准I/O总线,A为1时,表示可选择的总线。B为指定I/O总线上的插槽号,也就是在总线上的位置。
2)CD:表示插槽,适配器号,其中C表示包含适配器的I/O主板。如果适配器在CPU板卡或系统单元中,C为0时,则表示标准I/O总线,C为1时,表示可选择的I/O总线。如果适配器在扩展I/O板卡中,C也为0。D表示适配器在标准I/O总线中的插槽号(或者是扩展I/O总线中的插槽号)。
对于基于PCI的RS6000来说,CD中的C表示总线类型,当C为0时,表示PCI总线,当C为1时,为ISA总线。D指定了插槽号,D为1时,表示第一个指定的适配器,它和SCSI集成在一起。D为2时,表示低端的PCI插槽,D为3时,表示高端的PCI插槽,对于集成适配器,D总是0.
任何一个适配器,都用AB-CD来定义。对于SSA(串行存储结构)适配器来说,它是系统I/O总线的标识。
因此,00-00的位置编号用于表示系统单元或CPU板卡中的标准I/O主板。下边举例:
00-00:系统单元或CPU板卡汇中的标准I/O主板。
00-06:适配器在标准I/O主板上的第6个插槽中,而标准主板在CPU板卡上的系统单元中(因机器类型不同而不同)
00-15:标识在CPU板卡中,适配器位于可选择I/O总线的第5个插槽中。
3)EF:标识连接器号,在适配器上可能有过个连接器,EF用于标识与设备相连的连接器。对于SSA设备,EF表示物理硬盘驱动器模块和逻辑硬盘驱动器模块。对于基于PCI的RS6000来说,EF为OD,OM,OK时,分别代表磁盘,鼠标和键盘的连接器。
对于SCSI适配器来说,位置编号是以00-00-XX格式表示时,表明SCSI控制器集成在系统主板上,没有插槽号。
4)GH、G,H:对于非SCSI设备来说,GH表示一个端口号、地址、DIMM和FRU等,他有多个含义。对于SCSI设备来说,“G,H”中的G表示设备的控制单元号,也就是SCSI ID,H表设备的逻辑单元号(LUN),例如:00-00-S1-00和00-00-S2-00是指连接在标准I/O串口S1和S2上的终端设备。
六、PCI设备的安装
当使用PCI适配器时,它所在的插槽号(slot Number)与在微通道设备中的插槽号一样重要,不要随意移动适配器的插槽。如果配置管理器不能自动配置某个新设备或者用户想要改变某个新设备属性值,就必须以手工的方式配置该新设备。
下边两条命令用来在AIX系统中管理可热插拔的PCI插槽
1)#lsslot:显示插槽列表及其属性
2)#drslot:动态地重新配置插槽。
此外,还可以用SMIT工具或基于Web方式的系统管理器来管理可热插拔的PCI插槽。
要添加一个可热插拔的PCI适配器,首先用drslot命令把插槽的状态设置为Identify(识别)状态来核实选择的插槽是正确的。按Enter键之后,那个插槽状态就改为Action状态。然后把设配器安装到机器中,当安装完之后,再按Enter键即打开插槽的电源。这样,此适配器安装完毕,可以用cfgmgr来识别它。
在从系统中移走适配器之前,必须在AIX系统中反配置它们,必须使适配器处在已定义(Defined)状态或者是从ODM数据库中删除它。
七、多路径I/O(MPIO)
AIX5.2提供多路径I/O(MPIO)技术,它允许单个设备(如磁盘,LUN)连接不通的适配器使它具有多条I/O路径。MPIO是基本内核的一部分,这些I/O路径必须位于同一台机器上或同一个逻辑分区(LPAR)上。但是如果多台机器连接到同一个设备上,这种情况是群集,而不是多路径I/O(MPIO)。
MPIO的好处:
1)改善设备性能
2)提高设备的可靠性和可用性
3)使系统管理变得更加容易
路径管理功能由两个模块组成:内核扩展(PCMKE)和运行时可加载配置模块(PCMRTL)。
在一个多路径I/O的子系统中,任何设备可能会有一条或多条访问它的路径。PCMKE的路径选择是根据设备的配置来检测路径和传递信息到设备驱动程序。每一个具有MPIO能力的设备驱动程序都能添加一个设备的路径,这条路径是从这个设备的直接父设备到它本身。当向设备发送一个I/O请求时,设备驱动程序必须决定使用那一条路径来传送请求。PCMKE依据多项标准来选择最佳路径:负载均衡,连接速率,线路故障情况等。
通过设备厂商提供的模块,通过不同的适配器访问单个设备,但不使用MPIO技术已经成为可能。像ESS(IBM storage)的子系统设备器驱动程序(Subsystem Device Driver,简称SDD),但是需要为每一条路径创建一个hdisk逻辑设备,同时由SDD负责路径管理。
由SDD(没有使用MPIO技术)负责路径管理,存在一下缺点:
1)它们对固件有依赖性
2)对每个子系统必须采用有差别的管理
3)在ODM中,每一条路径对应一个逻辑设备记录
4)必须使用一个专用的命令来建立一个操作系统卷组
如果使用了MPIO技术,一个MPIO设备或hdisk可以有多条路径到它的父设备(适配器),而在ODM数据库中这个设备只有一条记录。这样对一个包含着MPIO设备的卷组来说,可以使用普通的AIX命令来管理它,为了实现这个新特色,在AIX设备驱动程序中已经作了修改。
唯一设备标识符(UDID)
每一个具有MPIO功能的设备都有一个唯一的标识符,MPIO设备用这个唯一的标识符来区分系统中所有其他设备。一个具体设备的UDID值可以作为一个设备的属性保存在ODM的设备配置数据库中。
当cfgmgr运行时或者一个父设备的配置放方法在执行时,它会为子设备申请UDID。然后把这个UDID与保存在ODM数据库中的UDID来比较来决定所要采取的行动:
1)在系统中需要定义一个新发现的设备
2)设备已经存在,只需要定义一条路径
设备预定义策略
1、NO_RESERVE 在这种模式下,MPIO的路径算法能够支持I/O在单路径上传送(Fail_Over失效接管模式)和I/O分布在多路径上传送(负载均衡模式)。最好使用在并发模式(Concurrent Mode)的群集中。不应该使用在没有使用群集软件的群集(Cluster)中。
2、SINGLE_PATH 在这种模式下,MPIO的路径算法只支持I/O在单路径上传送(Fail_Over失效接管模式)。最好使用在设备只被一个节点所拥有的群集中。如果如果拥有节点的设备失效了,那么备用节点接管这种方式。
3、PR_EXCLUSTER 在这种模式下,MPIO的路径算法能够支持I/O在单路径上传送(Fail_Over失效接管模式)和I/O分布在多路径上传送(负载均衡模式)。最好使用在设备只被一个节点所拥有的群集中。如果如果拥有节点的设备失效了,那么备用节点接管这种方式。
4、PR_SHARED 在这种模式下,,MPIO的路径算法能够支持I/O在单路径上传送(Fail_Over失效接管模式)和I/O分布在多路径上传送(负载均衡模式)。这种方式最好使用在设备只被一个或多个节点所拥有的群集中。
检测一个具有MPIO能力的设备
为了把一个SCSI设备作为一个具有MPIO能力的设备来检测,需要在ODM预定义设备数据库(PdAt)中添加一些附加的属性。具有MPIO能力的所有设备都需要UDID,UDID是ODM中的一个属性。
此外,在ODM预定义设备数据库(PdAt)需要添加一个PCM(Path Control Module,多路径控制模块)属性,PCM属性指向一个ODM助手,它定义了PCMKE模块,这个模块给MPIO设备的驱动程序提供路径控制管理功能。PCM属性包含着PCMKE的名称,这个PCMKE可以使厂商提供的,也可以是AIX系统提供的。
如下SCSI磁盘只拥有一条路径,但是它被认为是具有MPIO能力的设备——
MPIO命令相关:lspath、mkpath、chpath、rmpath
标签:
原文地址:http://www.cnblogs.com/lqdflying/p/4840637.html