<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Oracle Clusterware on RHEL5/OEL5 with udev and multipath</title>
	<atom:link href="http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/</link>
	<description>Jeremy's Oracle Resources and Ramblings</description>
	<lastBuildDate>Wed, 03 Mar 2010 03:35:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Robert</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1575</link>
		<dc:creator>Robert</dc:creator>
		<pubDate>Tue, 19 Jan 2010 16:39:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1575</guid>
		<description>With the installation of the following package updates, I was able to get UDEV to work with device-mapper-multipath without modifying any standard UDEV rules.  This is for Red Hat 5.3 x86-64 baseline.

device-mapper-multipath.x86_64  0.4.7-30.el5_4.4
kpartx.x86_64                   0.4.7-30.el5_4.4

The key for me was to create a rule file that would run before the 40-multipath.rules as the OPTIONS=&quot;last_rule&quot; in the 40-multipath.rules file would ignore all later rules.

My rule file is /etc/udev/rules.d/39-crs.rules and contains the following.  It creates a symbolic link to the dm-X device based upon the UUID.  It then modifies the ownership and permission on the dm-X device.

&lt;code&gt;
KERNEL==&quot;dm-[0-9]*&quot;, PROGRAM=&quot;/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m&quot;, \
RESULT==&quot;part8-mpath-360060e8005aff9000000aff9000012d9&quot;, NAME=&quot;%k&quot;, SYMLINK=&quot;crs_vote_1&quot;, \
OWNER=&quot;oracle&quot;, GROUP=&quot;oinstall&quot;, MODE=&quot;0660&quot;

KERNEL==&quot;dm-[0-9]*&quot;, PROGRAM=&quot;/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m&quot;, \
RESULT==&quot;part9-mpath-360060e8005aff9000000aff9000012d9&quot;, NAME=&quot;%k&quot;, SYMLINK=&quot;crs_vote_2&quot;, \
OWNER=&quot;oracle&quot;, GROUP=&quot;oinstall&quot;, MODE=&quot;0660&quot;

KERNEL==&quot;dm-[0-9]*&quot;, PROGRAM=&quot;/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m&quot;, \
RESULT==&quot;part10-mpath-360060e8005aff9000000aff9000012d9&quot;, NAME=&quot;%k&quot;, SYMLINK=&quot;crs_vote_3&quot;, \
OWNER=&quot;oracle&quot;, GROUP=&quot;oinstall&quot;, MODE=&quot;0660&quot;

KERNEL==&quot;dm-[0-9]*&quot;, PROGRAM=&quot;/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m&quot;, \
RESULT==&quot;part11-mpath-360060e8005aff9000000aff9000012d9&quot;, NAME=&quot;%k&quot;, SYMLINK=&quot;ocr_file_1&quot;, \
OWNER=&quot;root&quot;, GROUP=&quot;oinstall&quot;, MODE=&quot;0640&quot;

KERNEL==&quot;dm-[0-9]*&quot;, PROGRAM=&quot;/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m&quot;, \
RESULT==&quot;part12-mpath-360060e8005aff9000000aff9000012d9&quot;, NAME=&quot;%k&quot;, SYMLINK=&quot;ocr_file_2&quot;, \
OWNER=&quot;root&quot;, GROUP=&quot;oinstall&quot;, MODE=&quot;0640&quot;
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>With the installation of the following package updates, I was able to get UDEV to work with device-mapper-multipath without modifying any standard UDEV rules.  This is for Red Hat 5.3 x86-64 baseline.</p>
<p>device-mapper-multipath.x86_64  0.4.7-30.el5_4.4<br />
kpartx.x86_64                   0.4.7-30.el5_4.4</p>
<p>The key for me was to create a rule file that would run before the 40-multipath.rules as the OPTIONS=&#8221;last_rule&#8221; in the 40-multipath.rules file would ignore all later rules.</p>
<p>My rule file is /etc/udev/rules.d/39-crs.rules and contains the following.  It creates a symbolic link to the dm-X device based upon the UUID.  It then modifies the ownership and permission on the dm-X device.</p>
<p><code><br />
KERNEL=="dm-[0-9]*", PROGRAM="/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m", \<br />
RESULT=="part8-mpath-360060e8005aff9000000aff9000012d9", NAME="%k", SYMLINK="crs_vote_1", \<br />
OWNER="oracle", GROUP="oinstall", MODE="0660"</p>
<p>KERNEL=="dm-[0-9]*", PROGRAM="/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m", \<br />
RESULT=="part9-mpath-360060e8005aff9000000aff9000012d9", NAME="%k", SYMLINK="crs_vote_2", \<br />
OWNER="oracle", GROUP="oinstall", MODE="0660"</p>
<p>KERNEL=="dm-[0-9]*", PROGRAM="/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m", \<br />
RESULT=="part10-mpath-360060e8005aff9000000aff9000012d9", NAME="%k", SYMLINK="crs_vote_3", \<br />
OWNER="oracle", GROUP="oinstall", MODE="0660"</p>
<p>KERNEL=="dm-[0-9]*", PROGRAM="/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m", \<br />
RESULT=="part11-mpath-360060e8005aff9000000aff9000012d9", NAME="%k", SYMLINK="ocr_file_1", \<br />
OWNER="root", GROUP="oinstall", MODE="0640"</p>
<p>KERNEL=="dm-[0-9]*", PROGRAM="/sbin/dmsetup info -c --noheadings -o UUID -j %M -m %m", \<br />
RESULT=="part12-mpath-360060e8005aff9000000aff9000012d9", NAME="%k", SYMLINK="ocr_file_2", \<br />
OWNER="root", GROUP="oinstall", MODE="0640"<br />
</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott5</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1572</link>
		<dc:creator>Scott5</dc:creator>
		<pubDate>Mon, 30 Nov 2009 16:19:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1572</guid>
		<description>@Dave - 

Thanks for sharing.  You bring up a good point RE: PowerPath.  No intention of using it ATM, but will consider the additional R&amp;D we&#039;ll need to go through if it becomes part of the stack.  

Could udev rules supplant printing as the most painful SA responsibility?  I was certain it would be PAM configuration.  :P</description>
		<content:encoded><![CDATA[<p>@Dave &#8211; </p>
<p>Thanks for sharing.  You bring up a good point RE: PowerPath.  No intention of using it ATM, but will consider the additional R&amp;D we&#8217;ll need to go through if it becomes part of the stack.  </p>
<p>Could udev rules supplant printing as the most painful SA responsibility?  I was certain it would be PAM configuration.  :P</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1571</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Mon, 30 Nov 2009 15:13:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1571</guid>
		<description>You *can* use one or the other, but since you mentioned EMC arrays, look at it this way: If you are using pow&quot;r&quot;path instead of mpath, you almost have to use udev rules of some kind. If you are using mpath the *implied* recommended way to ensure device naming consistency accross reboots is with multipath.conf tying the wwid to some sort of alias, and that subsequent alias which is created under /dev/mapper must be used by the volume manager whatever it is. It&#039;s all there in the man pages and in the RHN articles relating to multipathing. It&#039;s not really that confusing but I agree, there is little consistency out there for concrete configuration info in RAC environments.  
If your storage vendor does not support native multipathing then you have to use what you got, and setting the bits can be done with the rules or by some other sequence of events at boot. With more vendors supporting native multipathing, seems like a no brainer to us and a pretty solid solution too. Just no big red easy button to push.</description>
		<content:encoded><![CDATA[<p>You *can* use one or the other, but since you mentioned EMC arrays, look at it this way: If you are using pow&#8221;r&#8221;path instead of mpath, you almost have to use udev rules of some kind. If you are using mpath the *implied* recommended way to ensure device naming consistency accross reboots is with multipath.conf tying the wwid to some sort of alias, and that subsequent alias which is created under /dev/mapper must be used by the volume manager whatever it is. It&#8217;s all there in the man pages and in the RHN articles relating to multipathing. It&#8217;s not really that confusing but I agree, there is little consistency out there for concrete configuration info in RAC environments.<br />
If your storage vendor does not support native multipathing then you have to use what you got, and setting the bits can be done with the rules or by some other sequence of events at boot. With more vendors supporting native multipathing, seems like a no brainer to us and a pretty solid solution too. Just no big red easy button to push.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott5</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1570</link>
		<dc:creator>Scott5</dc:creator>
		<pubDate>Wed, 25 Nov 2009 21:16:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1570</guid>
		<description>Heh - a blog post from almost two years ago becomes the best online source for udev/multipath support.

Seriously, I&#039;ve had a number of RAC clusters set up for 6 months or so now; 11gR1 on OEL 5.3, various types of SAN disk; Symmetrix, Clariion, EVA, and I have stayed away from udev modifications like they smell.  (don&#039;t they?)  I don&#039;t understand what or why to modify the udev rules.  With aliases mapped to wwids in the multipath.conf file I *think* I&#039;m covered, but no matter how much I research this udev stuff, I just do not understand it at all.  I get the concept, but knowing whether I&#039;m at risk for devices changing arbitrarily at boot is another story.  

Like what John mentioned on the 20th, it *seems* like you can use one or the other.  How to tell if devices are at risk?</description>
		<content:encoded><![CDATA[<p>Heh &#8211; a blog post from almost two years ago becomes the best online source for udev/multipath support.</p>
<p>Seriously, I&#8217;ve had a number of RAC clusters set up for 6 months or so now; 11gR1 on OEL 5.3, various types of SAN disk; Symmetrix, Clariion, EVA, and I have stayed away from udev modifications like they smell.  (don&#8217;t they?)  I don&#8217;t understand what or why to modify the udev rules.  With aliases mapped to wwids in the multipath.conf file I *think* I&#8217;m covered, but no matter how much I research this udev stuff, I just do not understand it at all.  I get the concept, but knowing whether I&#8217;m at risk for devices changing arbitrarily at boot is another story.  </p>
<p>Like what John mentioned on the 20th, it *seems* like you can use one or the other.  How to tell if devices are at risk?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1569</link>
		<dc:creator>John</dc:creator>
		<pubDate>Mon, 23 Nov 2009 17:55:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1569</guid>
		<description>OK, got everything running correctly now, and persistent across reboots. I was having my ASM disks get the correct permissions, but the OCR and Voting disks were not. I re-applied the patch from RH, apparently something didn&#039;t go correctly the first time, and now it&#039;s working. Thanks a ton for all the help here, great resource, and specifically to Dave.

As an aside, the srvctl problem ended up being a line added for a RHEL 3 bug to set LD_ASSUME_KERNEL=2.4.xxx, along with a trailing &quot;/&quot; in an ORACLE_HOME= line that made the path read as /u01/app/oracle/product/10//lib (extra / before lib). Once I found and removed those errors, srvctl found the correct libraries and ran great.

PEBKAC error once again. :-)</description>
		<content:encoded><![CDATA[<p>OK, got everything running correctly now, and persistent across reboots. I was having my ASM disks get the correct permissions, but the OCR and Voting disks were not. I re-applied the patch from RH, apparently something didn&#8217;t go correctly the first time, and now it&#8217;s working. Thanks a ton for all the help here, great resource, and specifically to Dave.</p>
<p>As an aside, the srvctl problem ended up being a line added for a RHEL 3 bug to set LD_ASSUME_KERNEL=2.4.xxx, along with a trailing &#8220;/&#8221; in an ORACLE_HOME= line that made the path read as /u01/app/oracle/product/10//lib (extra / before lib). Once I found and removed those errors, srvctl found the correct libraries and ran great.</p>
<p>PEBKAC error once again. :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1568</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Fri, 20 Nov 2009 18:56:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1568</guid>
		<description>What I was told was that you don&#039;t need udev &quot;if you don&#039;t need it&quot; and if multipath.conf does all you need, it is way simpler to administer IMO. udev is pretty ugly to us and we used that in our RHEL4 10 g cluster and it sucks. This cluster is RHEL5.3 and 11g. I think if you are using yum and updated to the latest greatest, it should work for you. Remember to to do a multipath -f and then -r to apply your changes. Oh yeah, and the formatting of that file is touchy, and if the formatting is &quot;off&quot; you won&#039;t get aliases and wierdness will surround you. Good luck.</description>
		<content:encoded><![CDATA[<p>What I was told was that you don&#8217;t need udev &#8220;if you don&#8217;t need it&#8221; and if multipath.conf does all you need, it is way simpler to administer IMO. udev is pretty ugly to us and we used that in our RHEL4 10 g cluster and it sucks. This cluster is RHEL5.3 and 11g. I think if you are using yum and updated to the latest greatest, it should work for you. Remember to to do a multipath -f and then -r to apply your changes. Oh yeah, and the formatting of that file is touchy, and if the formatting is &#8220;off&#8221; you won&#8217;t get aliases and wierdness will surround you. Good luck.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1567</link>
		<dc:creator>John</dc:creator>
		<pubDate>Fri, 20 Nov 2009 18:48:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1567</guid>
		<description>Thanks a lot for getting back to me. I thought that was what you were saying, so I went ahead and applied the patch. So far, it hasn&#039;t worked. I still have had to manually chown and chmod the /dev/mapper files in order for certain parts of the RAC install process to continue or pass. 

If they&#039;re defined in /etc/multipath.conf, do I still need to have udev rules? I haven&#039;t set any up because I thought that it was one place or the other, not both.

I&#039;ve also run into problems after the install with srvctl complaining that it can&#039;t load libpthread.so.0. I&#039;m hoping that&#039;s fixed in the 10.2.0.4 patch (10.2.0.1 might have problems using the i686 version of glibc-2.5 rather than the i386 version it replaced?), found the error when I tried to shut down ASM using srvctl to apply the patch.

We&#039;re still way ahead of our first RAC on Linux adventure, which threw IA64 into the mix just for fun, about 3.5 years ago. I wasn&#039;t around for that one, but I hear it took nearly 3 months of calls between our DBAs, Oracle, Redhat, and HP before they could even get the installer to complete. Not certain who to blame for that one. :-)

Thanks again for the great article and comments!</description>
		<content:encoded><![CDATA[<p>Thanks a lot for getting back to me. I thought that was what you were saying, so I went ahead and applied the patch. So far, it hasn&#8217;t worked. I still have had to manually chown and chmod the /dev/mapper files in order for certain parts of the RAC install process to continue or pass. </p>
<p>If they&#8217;re defined in /etc/multipath.conf, do I still need to have udev rules? I haven&#8217;t set any up because I thought that it was one place or the other, not both.</p>
<p>I&#8217;ve also run into problems after the install with srvctl complaining that it can&#8217;t load libpthread.so.0. I&#8217;m hoping that&#8217;s fixed in the 10.2.0.4 patch (10.2.0.1 might have problems using the i686 version of glibc-2.5 rather than the i386 version it replaced?), found the error when I tried to shut down ASM using srvctl to apply the patch.</p>
<p>We&#8217;re still way ahead of our first RAC on Linux adventure, which threw IA64 into the mix just for fun, about 3.5 years ago. I wasn&#8217;t around for that one, but I hear it took nearly 3 months of calls between our DBAs, Oracle, Redhat, and HP before they could even get the installer to complete. Not certain who to blame for that one. :-)</p>
<p>Thanks again for the great article and comments!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1566</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Fri, 20 Nov 2009 18:35:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1566</guid>
		<description>Yeah, when we patched we now can dynamically bring in new devices, set the uid, mode, gid from within multipath.conf, and it works slick. The DBAs then scan for new disks in /dev/mapper and no problems at all (at least for adding them). Now, the only problem we have seen is removing LUNs on the fly from ASM is easy. But when trying to remove and cleanup the OS, it gets pi$$y and usually requires a reboot. But who shrinks storage? We do, and we discovered this the hard way a year or so back in our production RAC. Sometimes you over allocate and want to remove a couple LUNs and give to another RAC or something. Adding them is a piece of cake. Removing them is a piece of carp.</description>
		<content:encoded><![CDATA[<p>Yeah, when we patched we now can dynamically bring in new devices, set the uid, mode, gid from within multipath.conf, and it works slick. The DBAs then scan for new disks in /dev/mapper and no problems at all (at least for adding them). Now, the only problem we have seen is removing LUNs on the fly from ASM is easy. But when trying to remove and cleanup the OS, it gets pi$$y and usually requires a reboot. But who shrinks storage? We do, and we discovered this the hard way a year or so back in our production RAC. Sometimes you over allocate and want to remove a couple LUNs and give to another RAC or something. Adding them is a piece of cake. Removing them is a piece of carp.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1565</link>
		<dc:creator>John</dc:creator>
		<pubDate>Thu, 19 Nov 2009 17:19:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1565</guid>
		<description>@Dave:
Are you saying you applied the patch in the linked RH Bugzilla bug, and that cleared up the issues?

We&#039;re trying to get RAC set up today, and I&#039;m hoping that&#039;s the case.</description>
		<content:encoded><![CDATA[<p>@Dave:<br />
Are you saying you applied the patch in the linked RH Bugzilla bug, and that cleared up the issues?</p>
<p>We&#8217;re trying to get RAC set up today, and I&#8217;m hoping that&#8217;s the case.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/comment-page-1/#comment-1558</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Tue, 29 Sep 2009 13:30:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.ardentperf.com/2008/02/13/oracle-clusterware-on-rhel5oel5-with-udev-and-multipath/#comment-1558</guid>
		<description>Fred - the problem was not the multipath settings, the problem was the DBA not using pattern match or looking to the right directory for the devices. We applied the latest errata for multipath and it fixed the problems for the most part of not being able to apply mode, uid, gid to new devices. The point is not that it is &quot;required&quot; to set the right mode on /dev/mapper devices, the point is that others have tried and seen intermittent results. The documentation for multipath.conf explicitly says you should be able to set mode/gid/uid among other settings on the fly and using this configuration file. It works for us on RHEL5.3 doing &quot;multipath -f&quot; and &quot;multipath -r&quot; after modifying the file. You can easily set these persistenantly rather than using udev rules, especially if alot of the devices need a custom alias, etc.</description>
		<content:encoded><![CDATA[<p>Fred &#8211; the problem was not the multipath settings, the problem was the DBA not using pattern match or looking to the right directory for the devices. We applied the latest errata for multipath and it fixed the problems for the most part of not being able to apply mode, uid, gid to new devices. The point is not that it is &#8220;required&#8221; to set the right mode on /dev/mapper devices, the point is that others have tried and seen intermittent results. The documentation for multipath.conf explicitly says you should be able to set mode/gid/uid among other settings on the fly and using this configuration file. It works for us on RHEL5.3 doing &#8220;multipath -f&#8221; and &#8220;multipath -r&#8221; after modifying the file. You can easily set these persistenantly rather than using udev rules, especially if alot of the devices need a custom alias, etc.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
