Aye-aye. Will do. Kaloyan Kovachev wrote: On Thu, 17 Jun 2010 14:59:59 -0500, Dustin Henry Offutt <dhoffutt@xxxxxxxxx> wrote:Believe this issue has been resolved by altering/usr/share/cluster/ip.sh.The resulting script has added new XML for a new "device" parameter. New variable 'device' is passed to the ip_op function and then tofunctionsipv4 and ipv6. The ipv4 and ipv6 function iterate through all network devices and, upon finding a device with a configuration similar to theIPneeding to be assigned, would assign the IP there, which caused all theIPsto bunch up on one device. The added logic here will go through the iteration, and if there is a "device" variable requested it is matched against the device name in the function. Is there some way to get this put into the Cluster Suite officially sothatit may be supported? Thank you... (diff -cB)You should also modify cluster.rng and add 'device' as an optional attribute to the 'ip' element (around line 1010) or else the config won't validate why not use OSCF_RESKEY_device inside ipv4/6 directly, instead of passing it to ip_op? ip_op <family> <operation> <address> <device> [quiet] ... if device is empty, but there is quiet present it will be accepted as device*** ip.sh.original 2010-06-17 10:43:00.000000000 -0500 --- ip.sh 2010-06-17 14:42:26.000000000 -0500 *************** *** 86,91 **** --- 86,104 ---- <content type="string"/> </parameter> + <parameter name="device"> + <longdesc lang="en"> + Specify network device to bring this + IP up on. Optional. Example: "eth0" + </longdesc> + + <shortdesc lang="en"> + Network device + </shortdesc> + + <content type="string" default="auto"/> + </parameter> + <parameter name="monitor_link"> <longdesc lang="en"> Enabling this causes the status check to fail if *************** *** 571,576 **** --- 583,589 ---- declare addr_exp=$(ipv6_expand $addr) while read dev ifaddr_exp maskbits; do + if ([ -z $3 ] || [ "$3" = "auto" ]) || [ "$dev" = "$3" ]; then if [ -z "$dev" ]; then continue fi *************** *** 636,641 **** --- 649,655 ---- fi return 0 + fi done < <(ipv6_list_interfaces) return 1 *************** *** 651,656 **** --- 664,670 ---- declare addr=$2 while read dev ifaddr maskbits; do + if ([ -z $3 ] || [ "$3" = "auto" ]) || [ "$dev" = "$3" ]; then if [ -z "$dev" ]; then continue fi *************** *** 715,720 **** --- 729,735 ---- fi return 0 + fi done < <(ipv4_list_interfaces) return 1 *************** *** 813,819 **** # # Usage: ! # ip_op <family> <operation> <address> [quiet] # ip_op() { --- 827,833 ---- # # Usage: ! # ip_op <family> <operation> <address> <device> [quiet] # ip_op() { *************** *** 866,872 **** case $1 in inet) ! ipv4 $2 $3 return $? ;; inet6) --- 880,886 ---- case $1 in inet) ! ipv4 $2 $3 $4 return $? ;; inet6) *************** *** 923,929 **** ocf_log debug "${OCF_RESKEY_address} already configured" exit 0 fi ! ip_op ${OCF_RESKEY_family} add ${OCF_RESKEY_address} if [ $? -ne 0 ]; then exit $OCF_ERR_GENERIC fi --- 937,943 ---- ocf_log debug "${OCF_RESKEY_address} already configured" exit 0 fi ! ip_op ${OCF_RESKEY_family} add ${OCF_RESKEY_address} ${OCF_RESKEY_device} if [ $? -ne 0 ]; then exit $OCF_ERR_GENERIC fi On Thu, Jun 17, 2010 at 9:00 AM, Dustin Henry Offutt <dhoffutt@xxxxxxxxx>wrote:Using the node's IPs would not work. The software being made HA mustkeepits IPs the same no matter what node its running on. Could script an IP change, but then we're putting IP logic and monitoring in two places:Thecluster software and in our custom scripting. That's not a cleansolutionand is rather going backwards. We may as well just do our own HA if we were starting down that road. When we sell our product the customer must also purchase Redhat Support for their OS and cluster software. I would think Redhat should pony up to getthisdone as the product we are selling is selling well and inducing Redhat Support sales. An official feature request has been submitted to Redhat. Also, I'm working on the /usr/share/cluster/ip.sh script myself to add the feature. Hopefully it works out. On Thu, Jun 17, 2010 at 2:09 AM, Kit Gerrits <kitgerrits@xxxxxxxxx> wrote:In that case, might it be easier to simply use the host IP adressesandnot the cluster IP's? (the application will need to handle up/down events itself) Regards, Kit ------------------------------ *From:* linux-cluster-bounces@xxxxxxxxxx [mailto: linux-cluster-bounces@xxxxxxxxxx] *On Behalf Of *Dustin Henry Offutt *Sent:* dinsdag 15 juni 2010 14:40 *To:* linux clustering *Subject:* Re: Higher Grained Definition ofIP AddressAssignments I've spent the past year architecting an HA cluster with RHCS and it's working wonderfully. I have not seen anything superior. Due to a new customer-driven feature of our software, we need to addtheability for a cluster service/resource group to have up to eight distinct IPs on one particular network due to the software being made highly available via RHCS performing its own load balancing. Placing the load balancing elsewhere is not an option due to the nature of the product. Regarding "OCF_RESKEY_," will google more on this and appreciate the tip. Must work this out some way. ~ Dusty C. Handel wrote: [define interface of cluster controlled ip resource] /usr/share/cluster/ip.sh appears to perform the link-monitoring in the This is a resource agent script. What attributes a resource agent accepts can be found by calling it with the option meta-data /usr/share/cluster/ip.sh meta-data There is no attribute interface. The agent will add the additional address to the first interface that is in the same subnet. You could edit the script and add a parameter interface yourself. Add a new parameter into the XML at the beginning and access it in the script with OCF_RESKEY_... I don't understand what you are trying to do. If you are only handling network interfaces as services, then rhcs is most likely the wrong tool. If you would explain your goal we could probably suggest other solutions. Greetings Christoph -- Linux-cluster mailinglistLinux-cluster@xxxxxxxxxxxxxxx://www.redhat.com/mailman/listinfo/linux-clusterNo virus found in this incoming message. Checked by AVG - www.avg.com Version: 9.0.829 / Virus Database: 271.1.1/2939 - Release Date:06/15/1008:35:00 -- Linux-cluster mailing list Linux-cluster@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/linux-cluster-- Linux-cluster mailing list Linux-cluster@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/linux-cluster |
-- Linux-cluster mailing list Linux-cluster@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/linux-cluster