HDLM提供了以下一些工具,以方便HDLM多路径管理。

1. dlmgetras

hdlm信息收集工具,用来收集hdlm相关的各种日志、trace、配置等文件,以方便进行hdlm故障分析。

命令格式


DLMgetras {Collection_information_output_point_directory [-f Collection_information_definition_file_name] | -h}

Collection_information_output_point_directory: 输出目录,dlmgetras收集的信息存储在此目录下

-f Collection_information_definition_file_name:指定需要收集的目录和文件

-h:显示命令帮助信息

-f参数的示例文件

# HDLM manager core file
/opt/DynamicLinkManager/bin/core
#
# Oracle initial parameter
/var/app/oracle/admin/sandb/pfile/init.ora
#
# Oracle Alert Directory
/var/app/oracle/rdbms/log

2. dlmcfgmgr

此工具的作用是让/kernel/drv/dlmfdrv.conf文件的配置不需要重启主机而立即生效。

命令格式

dlmcfgmgr {-a|-h}

-a: 将/kernel/drv/dlmfdrv.conf中的配置信息应用到HDLM driver, 即让配置立即生效

-h: 显示帮助信息

3. dlmsetconf

从OS上获得设备信息,生成HDLM driver配置定义文件dlmfdrv.conf和HDLM nexus driver配置定义文件dlmndrv.conf。

命令格式

dlmsetconf [-d output-directory-name] [-r|-u]

-d: 指定dlmfdrv.conf和dlmndrv.conf文件的生成目录

-r: 此参数使当前已经存在的配置定义文件失效, 并重新生成一个新的配置定义文件. 如果不指定-r参数, 新生成的配置定义文件会继承已存在的配置定义文件信息.  二者的区别在于: 如果使用-r参数, 则所有的LUN都要重配置, 这有可能会改变已配置LUN的instance number/ minor number, 造成SVM设备不可用; 如果不使用-r参数, 则HDLM只重配置改变的LUN, 没改变的LUN不重新配置. 如果系统上有些LUN还在使用, 应尽量避免使用-r参数

-u: 使用此参数只更新配置定义文件中LUN是否由HDLM管理这个属性(unconf 0表示由HDLM管理; 1表示从HDLM管理中移除). 此参数不会更新LUN的其它属性. 文件/opt/DynamicLinkManager/config/dlmfdrv.unconf中定义了希望从HDLM管理中移除的LUN信息.

示例:

dlmsetconf -u命令执行前的dlmfdrv.conf中的信息. 配置文件中有2个LUN, 每个LUN有4条路径. unconf属性为0, 表示LUN由HDLM管理.

-bash-3.2# more /kernel/drv/dlmfdrv.conf
......
################## Admin Device(Do not change this field) ##################
name="dlmfdrv" parent="pseudo" instance=0 AdminDevice; #
################## T131328 D0(AMS.75040975.0049) ##################
name="dlmfdrv" parent="dlmndrv" instance=1
FilterPath="/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f0,0"
major=0x76 minor=0x2 target=131328 lun=0 first=1
node-type="ddi_block:fabric" port-wwn="50060e80102a00f0"
unconf=0 LDEV="AMS.75040975.0049"
device-id="6964000100060014737364004849544143484920373530343039373530303439"
device-name="c4t50060E80102A00F0d0"
......
name="dlmfdrv" parent="dlmndrv" instance=3
FilterPath="/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f3,0"
major=0x76 minor=0x1a target=131072 lun=0 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f3"
unconf=0 LDEV="AMS.75040975.0049"
device-id="6964000100060014737364004849544143484920373530343039373530303439"
device-name="c4t50060E80102A00F0d0"
......
name="dlmfdrv" parent="dlmndrv" instance=4
FilterPath="/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f1,0"
major=0x76 minor=0x12 target=131072 lun=0 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f1"
unconf=0 LDEV="AMS.75040975.0049"
device-id="6964000100060014737364004849544143484920373530343039373530303439"
device-name="c4t50060E80102A00F0d0"
......
name="dlmfdrv" parent="dlmndrv" instance=2
FilterPath="/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f2,0"
major=0x76 minor=0xa target=131328 lun=0 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f2"
unconf=0 LDEV="AMS.75040975.0049"
device-id="6964000100060014737364004849544143484920373530343039373530303439"
device-name="c4t50060E80102A00F0d0"
......
################## T131328 D1(AMS.75040975.0050) ##################
name="dlmfdrv" parent="dlmndrv" instance=5
FilterPath="/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f0,1"
major=0x76 minor=0x22 target=131328 lun=1 first=1
node-type="ddi_block:fabric" port-wwn="50060e80102a00f0"
unconf=0 LDEV="AMS.75040975.0050"
device-id="6964000100060014737364004849544143484920373530343039373530303530"
device-name="c5t50060E80102A00F0d1"
......
name="dlmfdrv" parent="dlmndrv" instance=6
FilterPath="/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f3,1"
major=0x76 minor=0x2a target=131072 lun=1 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f3"
unconf=0 LDEV="AMS.75040975.0050"
device-id="6964000100060014737364004849544143484920373530343039373530303530"
device-name="c5t50060E80102A00F0d1"
......
name="dlmfdrv" parent="dlmndrv" instance=7
FilterPath="/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f1,1"
major=0x76 minor=0x32 target=131072 lun=1 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f1"
unconf=0 LDEV="AMS.75040975.0050"
device-id="6964000100060014737364004849544143484920373530343039373530303530"
device-name="c5t50060E80102A00F0d1"
......
name="dlmfdrv" parent="dlmndrv" instance=8
FilterPath="/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f2,1"
major=0x76 minor=0x3a target=131328 lun=1 first=0
node-type="ddi_block:fabric" port-wwn="50060e80102a00f2"
unconf=0 LDEV="AMS.75040975.0050"
device-id="6964000100060014737364004849544143484920373530343039373530303530"
device-name="c5t50060E80102A00F0d1"
......
################## End of dlmfdrv.conf ################## 修改/opt/DynamicLinkManager/config/dlmfdrv.unconf文件, 将LUN50从HDLM管理中移除
-bash-3.2# more /opt/DynamicLinkManager/config/dlmfdrv.unconf
#
# All Rights Reserved. Copyright (C) 2003, 2012, Hitachi, Ltd.
#
# dlmfdrv.unconf by dlmsetconf 7.31.0 2012/05/17
#
# Usage: To Unconfigure a LU from HDLM, remove only the character '#'
# in front of the "LDEV" property line corresponding to the LU,
# and then execute "dlmsetconf -u" and "reboot -- -r" commands.
# Note1: "LDEV" property represents logical unit (LU) in storage subsystem.
# Note2: Do not edit other character except for the character '#'
# in front of the "LDEV" property lines.
#
##################### HDLM unconfiguration definition file ##################### #
################## T131328 D0(AMS.75040975.0049) ##################
### Device=ssd0 target=131328 lun=0
### Path=/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f0,0
### Device=ssd3 target=131072 lun=0
### Path=/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f3,0
### Device=ssd2 target=131072 lun=0
### Path=/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f1,0
### Device=ssd1 target=131328 lun=0
### Path=/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f2,0
#LDEV=AMS.75040975.0049;
################## T131328 D1(AMS.75040975.0050) ##################
### Device=ssd4 target=131328 lun=1
### Path=/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f0,1
### Device=ssd5 target=131072 lun=1
### Path=/pci@0/pci@0/pci@8/pci@0/pci@1/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f3,1
### Device=ssd6 target=131072 lun=1
### Path=/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f1,1
### Device=ssd7 target=131328 lun=1
### Path=/pci@0/pci@0/pci@9/QLGC,qlc@0/fp@0,0/ssd@w50060e80102a00f2,1
LDEV=AMS.75040975.0050; ##################### End of dlmfdrv.unconf ##################### 执行dlmsetconf -u:
-bash-3.2# dlmsetconf -u
KAPL10204-I dlmsetconf completed successfully. dlmfdrv.conf文件中LUN50的unconf值变为1
-bash-3.2# grep -i unconf /kernel/drv/dlmfdrv.conf
unconf=0 LDEV="AMS.75040975.0049"
unconf=0 LDEV="AMS.75040975.0049"
unconf=0 LDEV="AMS.75040975.0049"
unconf=0 LDEV="AMS.75040975.0049"
unconf=1 LDEV="AMS.75040975.0050"
unconf=1 LDEV="AMS.75040975.0050"
unconf=1 LDEV="AMS.75040975.0050"
unconf=1 LDEV="AMS.75040975.0050"

HDLM工具介绍的更多相关文章

  1. 《连载 | 物联网框架ServerSuperIO教程》- 14.配制工具介绍,以及设备驱动、视图驱动、服务实例的挂载

    注:ServerSuperIO二次开发套件授权码申请---截止到:2016-12-09 1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架Server ...

  2. json、javaBean、xml互转的几种工具介绍

    json.javaBean.xml互转的几种工具介绍 转载至:http://blog.csdn.net/sdyy321/article/details/7024236 工作中经常要用到Json.Jav ...

  3. Linux性能工具介绍

    l  Linux性能工具介绍 p  CPU高 p  磁盘I/O p  网络 p  内存 p  应用程序跟踪 l  操作系统与应用程序的关系比喻为“唇亡齿寒”一点不为过 l  应用程序的性能问题/功能问 ...

  4. Android APP压力测试(一)之Monkey工具介绍

    Android APP压力测试(一) 之Monkey工具介绍 前言 本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动. ...

  5. Android系统性能调优工具介绍

    http://blog.csdn.net/innost/article/details/9008691 经作者授权,发表Tieto某青年牛的一篇<程序员>大作. Android系统性能调优 ...

  6. 简要介绍Apache、php、mysql安装和工具介绍

    1 安装Apache 网站:www.Apache.org下载相应的Apache,目前下载了近期的:httpd-2.2.15-win32-x86-openssl-0.9.8msi 安装简要步骤如下图: ...

  7. [原创]Java静态代码检查工具介绍

    [原创]Java静态代码检查工具介绍 一  什么是静态代码检查? 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法.结构.过程.接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数 ...

  8. RUF MVC5 Repositories Framework Generator代码生成工具介绍和使用

    RUF MVC5 Repositories Framework Generator代码生成工具介绍和使用 功能介绍 这个项目经过了大半年的持续更新到目前的阶段基本稳定 所有源代码都是开源的,在gith ...

  9. 用户管理 之 Linux 用户管理工具介绍

    Linux是一个多用户的操作系统,她有完美的用户管理工具,这些工具包括用户的查询.添加.修改,以及用户之间相互切换的工具等:通过这些工具,我们能安全.轻松的完成用户管理: 在这里我们要引入用户控制工具 ...

随机推荐

  1. Hadoop学习1(初识hadoop)

    Hadoop生态系统的特点 1)源代码开源 2)社区活跃,参与者多 3)涉及分布式存储和计算的各方面 4)已得到企业界的验证 Hadoop构成 1) 分布式文件系统HDFS(Hadoop Distri ...

  2. java学习小笔记(三.socket通信)【转】

    三,socket通信1.http://blog.csdn.net/kongxx/article/details/7288896这个人写的关于socket通信不错,循序渐进式的讲解,用代码示例说明,运用 ...

  3. java 读取src下的配置文件

    很多时候,我们都将配置文件放在eclipse的src目录下,这个位置,相当于,当导出可执行jar包后,配置文件放在和jar同级的目录中,比如jar包放在/opt目录下,则配置文件放在/opt下,则ja ...

  4. java导包

    下载响应的zip文件,就可以导入了,导入src目录也是可以的.

  5. Jedis分片连接池

    [http://blog.csdn.net/lang_man_xing/article/details/38405269]   一下内容来自网络,但是很多细节没有写出来,所以我经过自己琢磨,终于找到原 ...

  6. 去除sql中不可见字符的n种方法

    CREATE TABLE [ASCII0127] ( Bin          INT, Dec          INT, Hex          VARCHAR(128), Abbr       ...

  7. uva 10917 最短路+dp

    https://vjudge.net/problem/UVA-10917 给出N点M边的无向图,没重边.对于点A,B,当且仅当从B到终点的最短路小于任何一条从A到终点的最短路时,才考虑从A走到B,否则 ...

  8. python 实现一个TwoSum的例子

    今天无意中看到一个题目,也不是很难,就想着用python实现以下: 题目是数组中的两个数相加等于输入的一个target,然后输出数组的下标. 比如: [1,2,3,4,5,6] target=7  返 ...

  9. Intellij IDEA导入Github中的MAVEN多模块项目【保持项目样式】

    刚上手用IntelliJ IDEA导入github项目,我尝试了多种导入方式.因为我的有父子模块,导入后整个项目的格式就变了. 然后我多次尝试,找到了一个更好的导入方式,可以保持MAVEN项目的格式. ...

  10. nyoj-158-省赛来了(组合数)

    题目链接 /* Name:nyoj-158-省赛来了 Copyright: Author: Date: 2018/4/25 17:07:22 Description: 暴力,秒天秒地 */ #incl ...