多节点ASMlib安装问题_第1页
多节点ASMlib安装问题_第2页
多节点ASMlib安装问题_第3页
多节点ASMlib安装问题_第4页
多节点ASMlib安装问题_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、多节点ASMlib安装问题适用于:Linux此文档的内容适用于任何平台目标:     此过程是检验一个新安装的或者已经存在的Oracle ASMLib是否正确配置,以及能否成功连接到集群中的每一个节点.在Oracle ASMLib主页中提供了一份很有用的相关技术资料以及ASMLib安装指导,MetaLink链接指向本文档后面附加的其他故障解决资源.一个正确且功能齐全的ASMLib安装过程如下:1.设置ASMlib包的最小限度.2.ASMLib系统必须首先配置,每个节点包含一个合法的文件路径d /etc/sysconfig/oracleasm.3.Orac

2、le ASMLib磁盘中的共享磁盘必须正确的分区,持久有效,并且能在每个节点中重命名(重新启动).4.oracleasm服务必须启动并且能在每个节点中正常运行.解决方案:1.检查ASMLib安装包在每个节点中,一个ASMLib安装过程需要三个包oracleasm-<kernel version>-<ASMLib version>oracleasmliboracleasm-support检查这三个包是否通过以下的命令正确安装在每个节点:# rpm -qa | grep oracleasm包的版本应该和所

3、有的节点匹配,为了能够让ASMLib运行,包的内核模块”oracleasm”必须和运行的内核精确匹配.启动自己的内核版本,然后运行一下命令验证oracleasm内核模块是否匹配以及能否正确加载:# rpm -q oracleasm-uname -r如果上面的命令没有输出,则必须安装正确的ASMLib内核版本,以下命令可以显示所需版本信息:# uname -r也可以检查已安装ASMLib包的所有版本,Oracle ASN|Mlib主页提供了Red Hat和Novell相配套的资源下载链接.ASMLib安装包中提供了Oracle Ente

4、rprise Linux安装文件和更新,这些更新可以通过up2date公用程序从已注册机器获得,也可以通过VLN手动下载.检查ASMLib安装包的完整性,在每个节点运行以下命令查看是否有丢失或更改.rpm -Vv oracleasmlib | egrep 'S.5|missing'rpm -Vv oracleasm-uname -r | egrep 'S.5|missing'rpm -Vv oracleasm-support 

5、;| egrep 'S.5|missing'An example of correct output from these commands on a single node is:rootrmvsx1:/etc/sysconfig # rpm -Vv oracleasmlib | egrep 'S.5|missing'rootrmvsx1:/etc/sy

6、sconfig # rpm -Vv oracleasm-uname -r | egrep 'S.5|missing'rootrmvsx1:/etc/sysconfig # rpm -Vv oracleasm-support | egrep 'S.5|missing'所有的包都没有输出,表明没有更改或丢失,如果发现有输出,说明该包可能被破坏或替换.2.检查ASMLib服务当安装成功后,每个节点的oracleasm服务

7、都处于休眠状态;# service oracleasm statusChecking if ASM is loaded: noChecking if /dev/oracleasm is mounted: no如果出现以上输出,请查看Oracle ASMLib安装文档中详细说明和初始化配置指导.文档中包含初始化服务的命令: "service oracleasm configure",该命令在第一个节点运行.完成配置过程后,文件/etc/syscon

8、fig/oracleasm将会被创建.默认情况下该文件为:#它是Oracle装载过程自动创建的一个配置文件.#自动存储管理内核驱动包,通过运行/etc/init.d/oracleasm configure产生该文件,也可以使用该命令修改该文件.# ORACLEASM_ENABELED: 'true' 指开机装载驱动.ORACLEASM_ENABLED=true# ORACLEASM_UID: 默认用户的 /dev/oracleasm 的挂载点.ORACLEASM_UID=oracle# ORACLEASM_GID: 默认用户组 /dev/oracleasm 的挂载点.ORACL

9、EASM_GID=dba# ORACLEASM_SCANBOOT: 'true' 指开机扫描ASM盘.ORACLEASM_SCANBOOT=true# ORACLEASM_SCANORDER: 磁盘扫描的匹配模式ORACLEASM_SCANORDER=""# ORACLEASM_SCANEXCLUDE:拒绝磁盘扫描的匹配模式ORACLEASM_SCANEXCLUDE=""如果"service oracleasm configure"显示如下:initializing the Oracle 

10、ASMLib driver: FAILED重新检查oracle 内核模块是否和运行内核版本正确匹配,例如,在以上的输出中包不正确.是因为oracleasm-2.6.18-8.el5-2.0.5-1.el5 包和正在运行的内核版本2.6.18-128.1.6.0.1.el5xen不匹配所导致:# rpm -qa | grep oracleasm-2# uname -r以下的内核模块版本是正确的而且能够正确加载:# rpm -qa | grep oraclea

11、sm-2rootrmvsx3:/etc/sysconfig # uname -r如果正确的模块不能安装,可以通过以下命令安装:up2date -i oracleasm-uname -rOryum -y install oracleasm-uname -r一旦服务正确配置,内核模块加载成功, 运行"service oracleasm start"命令如以下所示:# service oracleasm startInitializing t

12、he Oracle ASMLib driver:  OK Scanning the system for Oracle ASMLib disks:  OK 当服务启动运行之后,它的状态通过以下命令在任何时候查看:# service oracleasm statusChecking if ASM is loaded: yesChecking if /

13、dev/oracleasm is mounted: yes对于第一次安装,从已成功运行的第一个节点复制/etc/sysconfig/oracleasm,粘贴到每个节点,然后在每个节点启动服务确保内核模块正确匹配,检验/etc/sysconfig/oracleasm配置文件是否正确复制.正确配置所有的节点后,在所有的节点中运行"service oracleasm status"命令,查看oracleasm服务是否安装以及能否正常运行,确保服务能在开机后启动,在所有节点中运行以下命令:chkconfig oracleasm on

14、重新启动节点检验服务能被"service oracleasm status"命令重复启动,重复以上的操作,确保所有的节点处于正确的状态.3.检查ASMLib LUN 和命名作为集群存储服务,ASM磁盘必须共享且能被所有节点访问,要达到这项功能,底层物理磁盘必须可用并能正确映射到每个节点的磁盘名, 第一次安装时LUNs需要选中,初始化和标记ASM的空间,对于已经安装了的,跳过下面部分,不要重复标记已经存在的LUNs.警告:标记过程是一个破坏性的过程,必须慎重确定,如果LUN中包含数据或者要重新标记,使用附加的提示.为了正确初始化和标记LUNs,你必须首先确认哪些LUNs将作为

15、ASM一个节点中的磁盘空间,由于LUNs是共享的,初始化和标记过程只能在一个节点中进行,你可以使用以下命令在第一个节点中定义LUNs的scsi的ID:# cat /proc/partitions |grep sd|while read a b c d;do echo -n $d$'t'" scsi_id="(echo $d|tr -d :digit:|xargs -i scsi_i

16、d -g -s /block/)done如:# cat /proc/partitions |grep sd|while read a b c d;do echo -n $d$'t'" scsi_id="(echo $d|tr -d :digit:|xargs -i scsi_id -g -s /block/)done这个命

17、令输出的是系统的独立磁盘区,你可以使用scsi ID查找已经分配的ASM LUNs,当使用多路径时,你可以看到相同的scsi ID对于几个磁盘区,还有一些个别的SAN路径映射到聚合磁盘区,例如, 在/etc/multipath.conf中, sda中相同的scsi ID和sdb路径映射到data0 alias:multipath       alias data0多路径后台程序将位于不同路径中的相同磁盘分区映射到一个名为data0的聚集磁盘区# multipath -llsize=1.0Gfea

18、tures=1 queue_if_no_pathhwhandler=0rw_ round-robin 0 prio=2active_ 0:0:0:0  sda 8:0    activeready_ 1:0:0:0  sdb 8:16   activereadyASM磁盘分区将被创建,详细信息阅读Installing Oracle ASMLib文档,在创建这个分区之后,data0磁盘分区显示如下:#

19、0;ls /dev/mapper/data0*/dev/mapper/data0 /dev/mapper/data0p1按照以下步骤,ASM分区将被创建在p1分区:# oracleasm createdisk DATA0 /dev/mapper/data0p1Writing disk header: doneInstantiating disk: done由于LUNs是共享的.初始化和标记过程只能在一个节点进行,请查看Installing Oracle ASMLib文档和ASM分区标记

20、的详细指导文档.对于已经存在或新标记的系统,你可以通过以下命令定义和查看LUNs,  scsi ID号和ASM 分区标记:# blkid|grep sd.*oracleasm|while read a b;do echo -n $a$b" scsi_id="(echo $a|tr -d :digit:|tr -d :|cut -d"/" -f3|xargs -i sc

21、si_id -g -s /block/)done;运行命令,确保scsi的id号和标记在每个节点都是相同的:rootrmvsx1: # blkid|grep sd.*oracleasm|while read a b;do echo -n $a$b" scsi_id="(echo $a|tr -d :digit:|tr -d :|cut -d"/" -f3|x

22、args -i scsi_id -g -s /block/)done;rootrmvsx2: # blkid|grep sd.*oracleasm|while read a b;do echo -n $a$b" scsi_id="(echo $a|tr -d :digit:|tr -d :|cut -d"/" -f3|xargs 

23、;-i scsi_id -g -s /block/)done;rootrmvsx3: # blkid|grep sd.*oracleasm|while read a b;do echo -n $a$b" scsi_id="(echo $a|tr -d :digit:|tr -d :|cut -d"/" -f3|xargs -i 

24、scsi_id -g -s /block/)done;scsi的id号和磁盘标记与所有节点匹配是很重要的,记录每个多路径系统,每个聚集ASM分区包含两个物理磁盘路径,对于所有的节点,测试ASM分区在物理上是可读的,你可以使用以下命令导出ASM分区的头信息:find /dev/oracleasm/disks -type b | xargs -i sh -c "echo  dd if= count=10 2>/de

25、v/null | strings"运行在一个测试集群中的一个节点上的例子如下:rootrmvsx1: # find /dev/oracleasm/disks -type b | xargs -i sh -c "echo  dd if= count=100 2>/dev/null | strings"/dev/oracleasm/disks/DISK4ORCLDI

26、SKDISK4DATA_0004DATADATA_0004/dev/oracleasm/disks/DATA3ORCLDISKDATA3DATA_0003DATADATA_0003/dev/oracleasm/disks/DATA2ORCLDISKDATA2DATA_0002DATADATA_0002/dev/oracleasm/disks/DATA1ORCLDISKDATA1DATA_0001DATADATA_0001/dev/oracleasm/disks/DATA0ORCLDISKDATA0DATA_0000DATADATA_0000确保磁盘名字和分区名字在所有的节点上是相同的,如果他们

27、不相同,检查所有节点上的/etc/multipath.conf是否一致,映射到alias的标示符是否正确.如果oracleasm服务没有运行,分区的名字可以通过以下命令从asm磁盘中导出:# dd if=/dev/mapper/data0p1 bs=16 skip=2 count=1 | hexdump -C1+0 records in1+0 records out16 bytes (16 B) copied, 0.03782

28、1 seconds, 0.4 kB/s00000000 4f 52 43 4c 44 49 53 4b 44 41 54 41 30 00 00 00 |ORCLDISKDATA0.|未测试的多路径LUNs可以重新定义和导出以确保磁盘正确映射:# multipath -ll | grep -A 4 data0size=1.0Gf

29、eatures=1 queue_if_no_pathhwhandler=0rw_ round-robin 0 prio=2active_ 1:0:0:0 sdb 8:16 activeready_ 0:0:0:0 sda 8:0 activeready然后在asm磁盘分区运行以下命令:# dd if=/dev/sda1 bs=16 skip=2 count=1 | hexdump -C1+0 records in1+0 records out16 bytes (16 B) copied, 0.00071 seconds, 22.5 kB/s00000000 4f 52 43 4c 44 49 53 4b 44 41 54 41 30 0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论