On Wed, Aug 28, 2013 at 4:26 PM, Christopher <[email protected]> wrote:
> Ah, you're right, of course. > > In that case, I'm also wondering about NAT situations and other > strange networking situations. For those especially, it seems what we > need to do is treat the bind address differently from the advertised > address. > > Perhaps attempting to use $(hostname -i) and falling back to > $(hostname -I | head -1) would be best? > I just noticed one wrinkle with "hostname -I", it may return IPV6 addresses. When I first looked at the man page, I thought it would exclude IPV6. But on closes inspection I noticed it excludes "IPv6 link-local addresses". So hostname -I will probably cause problems if the first thing it returns is a IPV6 addr. > > -- > Christopher L Tubbs II > http://gravatar.com/ctubbsii > > > On Wed, Aug 28, 2013 at 3:03 PM, John Vines <[email protected]> wrote: > > Christopher, > > > > It's not a matter of determining which port to bind to. It's for > recording > > it's location in zookeeper so other nodes can find it. > > > > > > On Wed, Aug 28, 2013 at 3:00 PM, Christopher <[email protected]> > wrote: > >> > >> I'm not sure this is even very portable. It relies on a specific > >> ifconfig display format intended for human-readability, and I'm not > >> sure that's entirely guaranteed to be static over time. It also won't > >> work if there are multiple public interfaces. It also don't think it > >> works for infiniband or other interface types that have issues in > >> ifconfig. > >> > >> I think we have to make *some* assumptions that things like > >> "networking" is properly configured using standard utilities for > >> name-mapping (like DNS or /etc/hosts). I think it's more confusing for > >> sysadmins if we have these sorts of automatic behaviors that are > >> non-standard and unexpected (like automatically binding to a single, > >> arbitrarily chosen, public IP out of the box). > >> > >> Honestly, though, I'm not sure why we need to be resolving public IP > >> addresses *at all*. It should be configured explicitly, and bind to > >> either 127.0.0.1 or 0.0.0.0 by default (to satisfy the ease for > >> first-time users). > >> > >> > >> -- > >> Christopher L Tubbs II > >> http://gravatar.com/ctubbsii > >> > >> > >> On Wed, Aug 28, 2013 at 1:54 PM, John Vines <[email protected]> wrote: > >> > We use this similar logic throughout a lot of our scripts for > >> > determining > >> > the external facing IP address in a portable manner, it's just that > the > >> > init.d scripts are a bit more strict about it. This is the equivalent > of > >> > using the name defined in the slaves/masters/tracers/etc. files to > >> > determine > >> > which port to report as. > >> > > >> > Switching to a system that depends on DNS to succeed will fail for all > >> > first > >> > time users, which is a penalty that will not be worth it. If someone > can > >> > find a better way to determine outward facing IP address I would love > to > >> > have it, but unfortunately networks are hard. > >> > > >> > > >> > On Wed, Aug 28, 2013 at 1:44 PM, Billie Rinaldi > >> > <[email protected]> > >> > wrote: > >> >> > >> >> Good point. I don't care if the init.d scripts work on a Mac. I do > >> >> care > >> >> about the other scripts, though. > >> >> > >> >> > >> >> On Wed, Aug 28, 2013 at 10:32 AM, Christopher <[email protected]> > >> >> wrote: > >> >>> > >> >>> But... it shouldn't be a supported platform for init scripts... I > >> >>> imagine. > >> >>> > >> >>> -- > >> >>> Christopher L Tubbs II > >> >>> http://gravatar.com/ctubbsii > >> >>> > >> >>> > >> >>> On Wed, Aug 28, 2013 at 1:03 PM, Billie Rinaldi > >> >>> <[email protected]> wrote: > >> >>> > It's a supported development platform. =) > >> >>> > > >> >>> > > >> >>> > On Wed, Aug 28, 2013 at 9:59 AM, Sean Busbey <[email protected] > > > >> >>> > wrote: > >> >>> >> > >> >>> >> hostname -i does not work on a Mac ( 10.8.4 ) > >> >>> >> > >> >>> >> Is Mac a supported platform? > >> >>> >> > >> >>> >> > >> >>> >> On Wed, Aug 28, 2013 at 11:53 AM, Eric Newton > >> >>> >> <[email protected]> > >> >>> >> wrote: > >> >>> >>> > >> >>> >>> Does "hostname -i" work on a mac? Not being a mac user, I can't > >> >>> >>> check. > >> >>> >>> > >> >>> >>> -Eric > >> >>> >>> > >> >>> >>> > >> >>> >>> > >> >>> >>> On Wed, Aug 28, 2013 at 11:38 AM, Ravi Mutyala > >> >>> >>> <[email protected]> > >> >>> >>> wrote: > >> >>> >>>> > >> >>> >>>> Hi, > >> >>> >>>> > >> >>> >>>> I see from the accumulo-tracer init.d script that IP is > >> >>> >>>> determined > >> >>> >>>> by > >> >>> >>>> this logic. > >> >>> >>>> > >> >>> >>>> ifconfig | grep inet[^6] | awk '{print $2}' | sed 's/addr://' | > >> >>> >>>> grep > >> >>> >>>> -v > >> >>> >>>> 0.0.0.0 | grep -v 127.0.0.1 | head -n 1 > >> >>> >>>> > >> >>> >>>> > >> >>> >>>> Any reason for using this logic instead of a hostname -i and > >> >>> >>>> using > >> >>> >>>> reverse dns lookup? I have a cluster where the order of nics on > >> >>> >>>> one > >> >>> >>>> of the > >> >>> >>>> nodes is in a different order and ifconfig returns a IP from a > >> >>> >>>> different > >> >>> >>>> subnet than for other nodes. But DNS and reverse DNS are > properly > >> >>> >>>> configured. > >> >>> >>>> > >> >>> >>>> Thanks > >> >>> >>>> > >> >>> >>>> CONFIDENTIALITY NOTICE > >> >>> >>>> NOTICE: This message is intended for the use of the individual > or > >> >>> >>>> entity > >> >>> >>>> to which it is addressed and may contain information that is > >> >>> >>>> confidential, > >> >>> >>>> privileged and exempt from disclosure under applicable law. If > >> >>> >>>> the > >> >>> >>>> reader of > >> >>> >>>> this message is not the intended recipient, you are hereby > >> >>> >>>> notified > >> >>> >>>> that any > >> >>> >>>> printing, copying, dissemination, distribution, disclosure or > >> >>> >>>> forwarding of > >> >>> >>>> this communication is strictly prohibited. If you have received > >> >>> >>>> this > >> >>> >>>> communication in error, please contact the sender immediately > and > >> >>> >>>> delete it > >> >>> >>>> from your system. Thank You. > >> >>> >>> > >> >>> >>> > >> >>> >> > >> >>> >> > >> >>> >> > >> >>> >> -- > >> >>> >> Sean > >> >>> > > >> >>> > > >> >> > >> >> > >> > > > > > >
