JPPF Issue Tracker
star_faded.png
Please log in to bookmark issues
feature_request_small.png
CLOSED  Feature request JPPF-341  -  Allow Monitoring and Administration Tool to display either HostName or IP
Posted Oct 21, 2014 - updated Oct 28, 2014
action_vote_minus_faded.png
0
Votes
action_vote_plus_faded.png
icon_info.png This issue has been closed with status "Closed" and resolution "RESOLVED".
Issue details
  • Type of issue
    Feature request
  • Status
     
    Closed
  • Assigned to
     lolo4j
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
  • Posted by
     Daniel Widdis
  • Owned by
    Not owned by anyone
  • Category
    GUI
  • Resolution
    RESOLVED
  • Priority
    Normal
  • Targetted for
    icon_milestones.png JPPF 5.0
Issue description
When running a JPPF grid on the Rackspace cloud, it is sometimes necessary to perform actions on the cloud server control panel (e.g., shutdown or reboot a server) based on indications available from JPPF program logs.

On the monitoring GUI, one can click on a node and call up its information, which will include the network configuration. For example, if I want to take action on a node I can gather its information and get
ipv4.addresses = jppf-node-4c0|10.208.200.111 127.0.0.1|127.0.0.1
However, this doesn't work for nodes which are inaccessible (usually the ones I need to do something on!)

Unfortunately, the Rackspace control panel only offers a listing by server name, with a corresponding display of Public IP address, and my network is connected on the private IP address. It requires clicking on the server and waiting for the API response to obtain the corresponding private IP. While finding a "dead" node by process of elimination is reasonable for a very small grid, it's completely impractical for a larger grid.

Presently the GUI displays nodes by their IP address (based on (JPPFManagementInfo info).getHost() method) which is also the second half of the ipv4.addresses property (10.208.200.111 in the example above). It would be extremely helpful to have a toggle option to display nodes by the first hostname in the ipv4.address property. (jppf-node-4c0 in the example above, which could be (JPPFManagementInfo info).getSystemInfo().getNetwork().getString("ipv4.addresses"), truncated to the index of the first | character.

This is no doubt a Milestone 4.3 (or 5.0) rather than 4.2.4 but that option's not available in the dropdown.

#2
Comment posted by
 lolo4j
Oct 25, 14:04
A file was uploaded.
Screenshot with toggle button and host names displayed
Screenshot with toggle button and host names displayedicon_open_new.png
#3
Comment posted by
 lolo4j
Oct 25, 14:05
A file was uploaded.
Screenshot with toggle button and ip addresses displayed
Screenshot with toggle button and ip addresses displayedicon_open_new.png
#4
Comment posted by
 lolo4j
Oct 25, 14:14
I implemented it a differently from the suggested way, but I now have something that works. See attached screenshots. There's a toggle button that switches between host names and ip addresses for all the related views in the console (server chooser, tree view, graph view, jvm health and job data view).

The icon for the toggle button will change once I find a suitable one. Indeed, what I came up with is functional but ugly, I'm definitely no Picasso.

The resolution of driver names is done in the client, that of the node names in the server. I also added a configuration property "org.jppf.resolve.addresses" that defaults to true (set in the driver and/or client/console), to turn off DNS name resolution in case it is too slow. For instance, I have observed times of 4.5s up to 15s for the DNS lookup to fail when the IP address is unreachable.
#5
Comment posted by
 lolo4j
Oct 25, 14:23
implemented in trunk revision 3455
#7
Comment posted by
 Daniel Widdis
icon_reply.pngOct 27, 01:34, in reply to comment #4
lolo4j wrote:
I implemented it a differently from the suggested way, but I now have
something that works. See attached screenshots.


They look great! I'll see if I can locate a suitable icon as well.
 
The resolution of driver names is done in the client, that of the node
names in the server.


I'm not quite sure what this means. Is it still looking in essentially the same place or is it pinging the node to get DNS that way?

#8
Comment posted by
 lolo4j
icon_reply.pngOct 28, 06:15, in reply to comment #7
I'm not quite sure what this means. Is it still looking in essentially the
same place or is it pinging the node to get DNS that way?


It means it's taking the IP address from the remote endpoint of the socket connection and doing a DNS lookup on it.