Steve-
He he I have scars from all the times I've banged my head against this.
I've come to the conclusion you should pretty much always use:
cluster.getInstanceMatching(RolePredicates.role("cmserver")).getPublicHostname()
which is the *public* hostname admittedly -- but should normally resolve
within a private subnet to the private IP if the public IP is not
accessible. In a good network anyway. Failing that you should just be
able to use the private IP. If you're feeling ambitious, fix /etc/hosts
/ DNS for the boxes you manage so that public hostnames do work
everywhere in your universe. Otherwise you end up hacking different
things for different target clouds.
I think private hostname is a nebulous concept ... good that
Instance.getPrivateHostname is deprecated. (Private to whom? --
localhost is quite a reliable private hostname but probably not what you
are after!)
So can you somehow use public hostname or private IP ?
--A
On 04/10/2012 19:11, Steve Loughran wrote:
I have a need to get the in-cluster FQDN of a node, in the Java code that
runs whirr-side so that I can generate some files there.
- I've seen the WHIRR-602 discussion on private hostnames, but they
appear to be about having a private hostname in the installation scripts.
- Instance.getPrivateAddress().getCanonicalHostName() returns the short
hostname, at least for the EC2 instances I've created.
Any suggestions?