Bug 784655

Summary: interface/bindnetaddr could be optional
Product: [Retired] Corosync Cluster Engine Reporter: David Teigland <teigland>
Component: totemAssignee: Jan Friesse <jfriesse>
Status: CLOSED UPSTREAM QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: 1.4CC: asalkeld, jfriesse, sdake
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-02-16 14:27:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description David Teigland 2012-01-25 17:18:12 UTC
Description of problem:

When using the new nodelist, it seems unnecessary to have an interface/bindnetaddr setting.  One of the principles behind the nodelist idea was that when started, corosync would go through the node entries, figure out
which entry was its own, and take it's ip addr from that.  This should then tell you what the bindnetaddr would be.

If you have a config file with both an interface/bindnetaddr and a nodelist, then the startup code could use the interface/bindnetaddr as an easy method of figuring out its own node entry by matching them.

Without interface/bindnetaddr, identifying your own nodelist entry is a bit more work, but shouldn't be too difficult (cman has had code to do this reliably for a long time, so you should be able to get some ideas there.)

Also, if bindnetaddr becomes optional, then the entire interface section could also be optional.


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Jan Friesse 2012-02-15 16:12:59 UTC
Dave,
patches sent to ML. [PATCH 1/6] Add generic implementation of getifaddrs upto [PATCH 6/6] Allow autoconfiguration of interface section will allow following config file to work as expected (note cluster_name and NO interface section):

### SNIP ####
compatibility: whitetank

totem {
        version: 2
        secauth: off
        threads: 0
        cluster_name: testcluster
}

logging {
        fileline: off
        to_stderr: yes
        to_logfile: no
        logfile: /var/log/cluster/corosync.log
        to_syslog: yes
        debug: on
        timestamp: on
}

nodelist {
    node {
        ring0_addr: 10.34.38.107
        nodeid: 1
    }

    node {
        ring0_addr: 10.34.38.108
        nodeid: 2
    }

    node {
        ring0_addr: 10.34.38.109
    }
}
### - SNIP ####

Hopefully this satisfy your needs.

Comment 2 David Teigland 2012-02-15 16:24:36 UTC
Yes, it looks great, thanks.