为什么RHEL 6上没有oracle asmlibB

创建ASMLib磁盘
本文所属图书&>&
本书从硬件和软件两个维度系统且全面地讲解了Oracle 11gR2 RAC的架构、工作原理、管理及维护的系统理论和方法,以及性能优化的技巧和最佳实践,能为构建最高可用的Oracle数据库系统提供有价值的指导。它的实践...&&
ASMLib磁盘是ASM磁盘的一种表现形式,执行以下步骤创建ASMLib磁盘。&
步骤1&& 共享磁盘分区。&
将每个共享磁盘划分为一个主分区,只需要在任一节点执行分区即可。操作如下:&
[root@rhel1 soft]# fdisk /dev/sda&
The number of cylinders for this disk is set to 30976.&
There is nothing wrong with that, but this is larger than 1024,&
and could in certain setups cause problems with:&
1) software that runs at boot time (e.g., old versions of LILO)&
2) booting and partitioning software from other OSs&
&& (e.g., DOS FDISK, OS/2 FDISK)&
Command (m for help): n&
Command action&
&& e&& extended&
&& p&& primary partition (1-4)&
Partition number (1-4): 1&
First cylinder (1-30976, default 1):&
Using default value 1&
Last cylinder or +size or +sizeM or +sizeK (1-30976, default 30976):&
Using default value 30976&
Command (m for help): w&
The partition table has been altered!&
Calling ioctl () to re-read partition table.&
Syncing disks.&
[root@rhel1 soft]#partprobe&
其他的节点服务器需要重启才能生成分区设备文件。&
注意 挂载到本地的iSCSI磁盘一定要分区后再使用,而且分区一定要是主分区。如果挂载的单张磁盘大于2TB,使用parted工具创建分区(fdisk不支持在大于2.2TB的磁盘上创建分区)。&
前面讨论过由于服务器对挂载的iSCSI扫描顺序的不同,不同节点相同设备文件可能对应不同的存储设备,通过udev解决了这个问题。执行上一步对iSCSI分区以后,udev创建的链接设备文件也会发生相应的变化。变化如下:&
[root@rhel1 iscsi]# cd /dev/iscsi&
[root@rhel1 iscsi]# tree&
|-- dbfile1&
|&& |-- part -& ../../sdf&
|&& `-- part1 -& ../../sdf1&
6 directories, 12 files&
从上面的输出可以看出,分区创建之后,udev也新创建了一个链接文件指向分区设备文件,part1链接到sdf1,完整的链接路径是/dev/iscsi/dbfile1/part1链接到设备文件/dev/sdf1。使用/dev/iscsi/dbfile1/part1作为ASM磁盘能够帮助区分具体的iSCSI磁盘。&
用同样的方法将其他磁盘都划分一个主磁盘分区。完成后在分区的节点执行partprobe命令,将分区信息写入磁盘分区表,然后在另一个节点执行fdisk -l就可以看到相同的分区信息。如果在另外的节点看不到分区信息,请重启服务器。&
在生产环境中,存储设备都有多条路径,对应挂载到节点服务器就有多个设备文件,所以需要在节点服务器安装多路径软件,然后对聚合后的多路径设备文件进行分区;分区完成后应重启其他服务器,确保系统创建了相应的分区设备文件。多路径软件相关的内容将在第15章详细讨论。&
步骤2&& 创建ASMLib磁盘。&
ASMLib驱动的安装和磁盘分区完成之后,就可以创建ASMLib磁盘。&
使用ASMLib驱动中的oracleasm工具创建ASMLib磁盘:&
[root@rhel1 soft]# /etc/init.d/oracleasm createdisk OCRVDISK1 /dev/iscsi/ocrvdisk1/part1&
Marking disk &OCRVDISK1& as an ASM disk:&&&&&&&&&&&&&&&&&&& [& OK& ]&
[root@rhel1 soft]# /etc/init.d/oracleasm createdisk OCRVDISK2 /dev/iscsi/ocrvdisk2/part1&
Marking disk &OCRVDISK2& as an ASM disk:&&&&&&&&&&&&&&&&&&& [& OK& ]&
[root@rhel1 soft]# /etc/init.d/oracleasm createdisk OCRVDISK3 /dev/iscsi/ocrvdisk3/part1&
Marking disk &OCRVDISK3& as an ASM disk:&&&&&&&&&&&&&&&&&&& [& OK& ]&
[root@rhel1 soft]# /etc/init.d/oracleasm createdisk DBFILE1 /dev/iscsi/dbfile1/part1&
Marking disk &DBFILE1& as an ASM disk:&&&&&&&&&&&&&&&&&&&& [& OK& ]&
[root@rhel1 soft]# /etc/init.d/oracleasm createdisk FRA1 /dev/iscsi/fra1/part1&
Marking disk &FRA1& as an ASM disk:&&&&&&&&&&&&&&&&&&&&&&& [& OK& ]&
[root@rhel1 asmlib]#&
[root@rhel1 init.d]# ./oracleasm listdisks&
DATAFILE1&
OCRVDISK1&
OCRVDISK2&
OCRVDISK3&
注意&& 这里创建ASMLib磁盘使用的是udev工具生成的磁盘设备文件的链接文件。&
ASMLib磁盘不需要在多个节点重复创建,在一个节点创建成功,只需要在其他节点使用oracleasm工具扫描一次,就可以在其他节点看到所有的ASMLib磁盘。这步是必须的,如果没有在其他磁盘扫描创建的ASMLib磁盘,那么在该节点磁盘组则无法加载。在其他节点执行以下命令来扫描配置成功的ASMLib磁盘:&
[root@rhel2 asmlib]# /etc/init.d/oracleasm scandisks&
Scanning the system for Oracle ASMLib disks:&&&&&&&&&&&&&& [& OK& ]&
[root@rhel2 init.d]# ./oracleasm listdisks&
DATAFILE1&
OCRVDISK1&
OCRVDISK2&
OCRVDISK3&
ASMLib磁盘创建成功之后,会在/dev/oracleasm目录下产生相应的设备文件,在创建ASMLib磁盘组的时候同样可以使用这些设备文件。执行以下命令,查看/etc/oracleasm/disks目录下的ASM磁盘设备文件:&
[root@rhel1 oracleasm]# pwd&
/dev/oracleasm&
[root@rhel1 oracleasm]# tree disks&
|-- OCRVDISK1&
|-- OCRVDISK2&
|-- OCRVDISK3&
|-- DBFILE1&
确保这些文件的所有者都是grid:oinstall。&
注意&& ASMLib驱动只存在于Linux平台,强烈推荐在Linux平台使用ASMLib来管理ASM磁盘。Oracle不仅限于使用ASMLib作为ASM磁盘,在Linux平台和其他UNIX平台同样可以使用分区的设备文件作为ASM磁盘。需要注意的是,分区设备文件分为块设备文件和字符设备文件,应使用字符设备文件作为ASM磁盘,字符设备文件也就是通常所说的裸设备文件。&
步骤3&& 使用oracleasm工具。&
oracleasm工具是安装ASMLib驱动之后配套的ASMLib管理工具,使用它能够完成ASMLib的配置和管理工作。oracleasm不只在/etc/init.d/目录下存在,系统默认找到的是/usr/sbin/位置下的oracleasm,通过执行/usr/sbin/oracleasm能够获得更为详细的帮助信息。下面是两个不同位置的oracleasm工具的帮助信息:&
[root@rhel1 bin]# which oracleasm&
/usr/sbin/oracleasm&
[root@rhel1 bin]# /usr/sbin/oracleasm&
Usage: oracleasm [--exec-path=&exec_path&] &command& [ &args& ]&
&&&&&& oracleasm --exec-path&
&&&&&& oracleasm -h&
&&&&&& oracleasm -V&
The basic oracleasm commands are:&
&&& configure&&&&&&& Configure the Oracle Linux ASMLib driver&
&&& init&&&&&&&&&&&& Load and initialize the ASMLib driver&
&&& exit&&&&&&&&&&&& Stop the ASMLib driver&
&&& scandisks&&&&&&& Scan the system for Oracle ASMLib disks&
&&& status&&&&&&&&&& Display the status of the Oracle ASMLib driver&
&&& listdisks&&&&&&& List known Oracle ASMLib disks&
&&& querydisk&&&&&&& Determine if a disk belongs to Oracle ASMlib&
&&& createdisk&&&&&& Allocate a device for Oracle ASMLib use&
&&& deletedisk&&&&&& Return a device to the operating system&
&&& renamedisk&&&&&& Change the label of an Oracle ASMlib disk&
update-driver&&& Download the latest ASMLib driver&
[root@rhel1 bin]# /etc/init.d/oracleasm -h&
/etc/init.d/oracleasm&
{start|stop|restart|enable|disable|configure|createdisk|deletedisk|&
querydisk|listdisks|scandisks|status}&
从上面输出的帮助信息可以看出,不同位置的oracleasm提供的功能是不完全相同的。其中/usr/sbin下的oracleasm能够加载(init)/卸载(exit)ASMLib驱动、重命名ASMLib磁盘标签(renamedisk),以及最新的ASMLib驱动(update-driver);而/etc/init.d/下面的oracleasm包含日常维护中的启动、停止、重启、启用、禁用和配置的功能。&
两个位置的oracleasm工具实现的功能不完全相同,因此在实际的使用过程中可以配合使用。&
(1)查看ASM磁盘对应的磁盘设备文件&
通过oracleasm querydisk -p可以查看创建的ASM磁盘对应的设备文件名称。&
[root@rhel2 init.d]# ./oracleasm querydisk -p OCRVDISK1&
Disk &OCRVDISK1& is a valid ASM disk&
/dev/sda1: LABEL=&OCRVDISK1& TYPE=&oracleasm&&
(2)查看ASMLib的配置信息&
配置信息如下:&
[root@rhel1 bin]# /usr/sbin/oracleasm configure&
ORACLEASM_ENABLED=true&
ORACLEASM_UID=grid&
ORACLEASM_GID=asmadmin&
ORACLEASM_SCANBOOT=true&
ORACLEASM_SCANORDER=&&&
ORACLEASM_SCANEXCLUDE=&&&
如上所示,可以了解ASMLib驱动所属的用户、组和是否自动启动等信息。这与/etc/init. d/oracleasm的执行效果完全不同。&
另外,执行/usr/sbin/oracleasm configure-i启动的ASMLib配置向导,同执行/etc/init.d/oracleasm configure命令启动的配置向导是相同的:&
[root@rhel1 bin]# /usr/sbin/oracleasm configure -i&
Configuring the
ASM library driver.&
This will configure the on-boot properties of the
ASM library&
driver.& The following questions will determine whether the driver is&
loaded on boot and what permissions it will have.& The current values&
will be shown in brackets ('[]').& Hitting &ENTER& without typing an&
answer will keep that current value.& Ctrl-C will abort.&
Default user to own the driver interface [grid]:
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。为什么RHEL 6上没有ASMLIB_百度知道
为什么RHEL 6上没有ASMLIB
我有更好的答案
按默认排序
红帽公司从redhat6开始从内核中移除了 asmlib,如果你购买了oraclesupport支持的话,还是可以使用的。
其他类似问题
rhel的相关知识
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁oracle11gr2 linux6.3 rac asm manual asmlib_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
喜欢此文档的还喜欢
oracle11gr2 linux6.3 rac asm manual asmlib
o​r​a​c​l​e1​g​r ​l​i​n​u​x. ​r​a​c​ ​a​s​m​ ​安​装​过​程​全​记​录​,​实​际​测​试​可​用​。​用​的​是​a​s​m​l​i​b​的​方​式​,​实​际​使​用​时​发​现​直​接​使​用​裸​设​备​会​更​简​单​和​高​效​,​只​做​参​考​。​这​次​测​试​都​是​一​些​较​老​的​方​式​,​没​有​用​到​y​u​m​,​是​一​个​一​个​的​安​装​的​软​件​包​,​顺​序​都​是​测​试​出​来​的​。​呵​呵​。​之​后​的​测​试​都​会​用​到​y​u​m​,​方​便​了​许​多​。​d​n​s​使​用​的​是​w​i​n​d​o​w​s​的​d​n​s​,​在​集​群​测​试​时​,​会​报​错​,​报​延​时​的​问​题​,​联​系​o​r​a​c​l​e​后​也​没​有​发​现​原​因​。​后​来​使​用​l​i​n​u​x​的​b​i​n​d​,​没​有​这​种​错​误​。
阅读已结束,如果下载本文需要使用
想免费下载本文?
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢candon123 的BLOG
用户名:candon123
文章数:268
评论数:493
访问量:1245722
注册日期:
51CTO推荐博文
本文包含以下几个知识点:
1、rhel6中配置Oracle ASM。
2、KVM中安装配置RHCS。
3、RHCS中注册oracle资源。
4、禁用IPV6。
环境介绍:
这里的共享存储使用的是KVM的共享存储功能,分别使用了三个10G大小的虚拟磁盘。
192.168.1.10
/dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘
DNS服务器,管理RHCS节点,KVM
192.168.2.11
/dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘
192.168.2.12
/dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘
192.168.2.20
/dev/vda系统盘,/dev/vd{b,c,d}共享磁盘,用于创建ASM磁盘
oracle逻辑主机名
一、KVM的配置:
具体的KVM安装配置过程请参考我的另一篇博文:。这里操作系统使用的是rhel6.1系统。这里具体描述下创建共享存储以及虚拟网络。
1、创建共享存储:
首先在虚拟系统管理器界面,右键点击localhost(QEMU),选择详情,会出现物理主机详情的界面:
然后,点击存储,在存储池中创建卷,如图所示创建了三个ASM卷,接着打开任意一个虚拟机,在虚拟硬件详情里点击&添加硬件&,将上述的三个卷添加进去,如图:
点完成之后,在新添加的磁盘选项中,在&可共享&选项中打勾。在另外一台上,按照上述方法添加新硬盘,点完成后,会弹出以下对话框:
选择&是&即可,完成之后,共享存储就设置完毕,两节点开机后,就可以看到新加的三块虚拟硬盘。
在KVM虚拟机中,可以在线添加硬盘,添加完毕后,不用重启系统就可以立即被识别。
2、创建虚拟网络:
在上图中点击&+&,出现创建新的虚拟网络画面:
最后,点击完成即可。
最后,ifconfig下会出现新的虚拟网络接口:
3、禁用IPV6:
首先编辑/etc/sysconfig/network文件,加入以下内容:
IPV6INIT=no
接着在/etc/modprobe.d目录下,创建disable-ipv6.conf文件,加入以下内容:
最后重启系统使其生效即可。关于上述几个语句的具体含义,请参考/usr/share/doc/initscripts-9.03.23/sysconfig.txt文件。
二、RHCS的安装:
在rhel6.1中,安装luci之后,不用再使用luci_admin命令执行初始化操作了,默认的访问地址还是,直接使用root帐号登录即可。这里先建个cluster框架,暂时不注册oracle资源,待oracle安装完了之后,再向rhcs中注册oracle资源。
1、server上安装luci软件:
这个组里就一个luci软件包,所以在cs01和cs02上不需要安装。
2、cs01和cs02上安装集群软件:
3、编辑hosts文件,将三个节点的名称及IP加进去:
4、如果防火墙启用,则需要启用以下端口:
5、使用luci创建一个cluster:
(1)、构建cluster框架:
启动luci并登录rhcs的web管理界面,开始配置rhcs:
点击上图中的Create按钮,创建集群:
在点击Create Cluster之前,确保两个节点上的ricci处于运行状态,否则会出现以下报错:
还有就是在初次使用的时候,必须在集群节点上设置ricci用户的密码,否则会出现以下错误:
经过一系列的配置重启节点后,如下图所示:
点击任意一个节点,就可以看到所有的cluster服务已经启动:
(2)、创建Failover Domain:
点击&Failover Domain&选项卡,然后点击&Add&按钮:
Failover domain name:定义Failover域名称。
Prioritized:是否在Failover domain 中启用域成员优先级设置。
Restrict Failover to this domain&s member:是否在失败转移域成员中启用服务故障切换限制。
Do not fail back services in this domain:表示在这个域中使用故障切回功能,也就是说,主节点故障时,备用节点会自动接管主节点服务和资源,当主节点恢复正常时,集群的服务和资源会从备用节点自动切换到主节点。最后,在Failover domain membership的Member复选框中,选择加入此域的节点,在&priority&处将cs01的优先级设置为1,cs02的优先级设置为5。对于&priority&的值设置为1代表优先级最高的,随着数值的增加,节点优先级也依次降低。
(3),配置Fence设备:
点击Fence Devices选项卡再点击Add,如图:
这里使用的是SCSI_Fence,使用的是裸设备。
接着在各个节点中关联fence设备:
点击节点名称,然后选择Add Fence Method,设置名称,完成之后,再添加fence实例:
使用命令行查看fence设备信息:
(4)、使用命令查看rhcs相关信息:
三、Oracle的安装:
1、RHEL6中ASMlib的安装:
对于rhel6,oracle已经不提供ASMlib支持了。oracle只对自己的Oracle Enterprise Linux提供Oracle支持。在oracle linux中,默认已经将ASM模块编译进内核了,只需安装oracleasm-support软件即可使用。由于oracle提供的Unbreakable Enterprise Kernel内核与rhel6的内核完全兼容,所以在rhel6中只需安装kernel-uek开头的内核文件,然后再安装oracleasm-support软件即可使用ASM。
Oracle ASM软件以及Unbreakable Enterprise Kernel内核下载站点:,主要下载下图中的几个软件包,两个节点都进行安装:
对/dev/vd{b,c,d}进行分区操作:
完成之后,在其中一个节点上使用oracleasm进行初始化并创建ASM磁盘:
最后,在另外一个点上扫描下asm磁盘即可:
2、Oracle数据库软件的安装:
这里不使用ASM磁盘组,安装的数据库版本是11.2.0.2。共享存储使用的是LVM。Oracle软件安装过程、监听创建过程以及建库过程全省略,请参考其他博文。
3、创建共享文件系统:
使用/dev/vd{b,c,d}三个虚拟硬盘创建LVM卷组oradata。
接着,创建了一个逻辑卷组u02用于存放oracle数据。
四、注册oracle资源:
1、创建IP资源:
这个IP就是Oracle监听器的地址,对应的主机名是.
2、创建LVM HA资源:
对这个做个解释:用于LVM HA的vg是oradata,其中划分了一个15G大小的u02用于存放oracle数据文件。
LVM的HA切换是这样的,当前oradata存在于cs02上面,首先系统卸载u02文件系统,接着将/dev/oradata/u02设置为未激活状态,然后执行vgexport将oradata导出。在cs01上面,首先执行vgimport将oradata导入,接着将/dev/oradata/u02设置为激活状态,最后挂载到指定点。
3、创建文件系统资源:
这个资源依赖于上面的LVM-HA资源。
4、创建监听器资源:
这个agent调用的是/usr/share/cluster/oralistener.sh脚本。
5、oracle数据库实例资源:
这个agent调用的是/usr/share/cluster/orainstance.sh。
6、创建服务组:
这里创建了一个oracle服务组,上述创建的5个资源将其添加到oracle组里构成一个服务组。这个不好截取web界面,所以使用命令行界面:
上述的资源所调用的脚本都位于/usr/share/cluster目录下。创建完服务组之后,系统会自动启动它。当前oracle服务组已处于online状态:
针对于这个IP地址,不能使用ifconfig查看,要使用下面的ip命令进行查看:
五、RHCS的命令行管理:
1、查看RHCS服务组状态:
2、切换服务组:
当前oracle运行于cs02上,将其切换至cs01上:
3、ccs命令的相关使用:
查看资源以及服务组信息:
查看当前的cluster配置信息:
这个命令实质上就是查看cluster.conf文件。
查看Failoverdomain信息:
查看fence信息:
查看节点信息:
ccs这个命令也可以创建cluster,增加节点,创建资源、删除资源、修改资源等操作,其类似于在web管理界面的操作。
参考文献:
&&&&&&&&&&&&&&& 本文出自 “” 博客,谢绝转载!
了这篇文章
类别:┆阅读(0)┆评论(0)
11:24:21 13:31:43 14:55:55 08:32:10

我要回帖

更多关于 udev asmlib 的文章

 

随机推荐