On Sep 28, 2010, at 7:26 AM, Andy wrote: > On 28.09.2010 13:07, Kevan Miller wrote: >> On Sep 22, 2010, at 8:53 AM, Rick McGuire wrote: >> >>> The axis2 and activemq releases that we've been waiting on for a 2.2.1 >>> Geronimo server release are finally available, but I didn't realize that >>> the 2.2 branch was still building with the 3.1.3-SNAPSHOT version of >>> openejb3. Is that branch ready to be released and can it be released soon? >>> I'd like to get the server release voting started by the end of next week, >>> if I can. >> I created a 2.2.x Geronimo Jira, yesterday, which will have OpenEJB >> implications. If the server socket bind ip address is 0.0.0.0, we'll >> advertise the server's ip address as 0.0.0.0 to any multicast discovery >> clients. We'll need to support a separate "remote" ip address (separate from >> the server socket ip address). >> >> --kevan >> > +1 > > Any multicast architecture should be sending/advertising 'all' IP-addresses > and host-names of the server if bind is set to 0.0.0.0, clients can then loop > through the list and keep track of successful connections - With a preference > for host name connections rather than IP. Currently the config files need to > be manually edited to contain the public IP address. In fact, 'discovery' > should be a list rather than a single value - For supporting a multi-homed > machines.
That would be nice. > The server should be making a best guess ordered 'discovery' list of it's own > public addresses for all network cards on start-up. When a multicast client > gets this list then it should see if it's own host-name is in this list, and > if it is then first attempt to use localhost. The 'discovery' parameter > should act as an override if specified. Yep. Looks like on the Geronimo side we're missing the 'discovery' property in Geronimo's EjbDaemonGBean. Here is what that defaults to currently: server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd Specifying that solves the problem. A nice improvement might be to, on the OpenEJB side, look specifically for 0.0.0.0 in the URI and auto-expand it. We could do the same if the port is 0, so a URI like "ejb:ejbd://0.0.0.0:0" would still work. In a real world scenario that might even be very attractive since in a true discovery scenario you don't care about the host/port, you really just want your server online with any available port. -David
