JPPF, java, parallel computing, distributed computing, grid computing, parallel, distributed, cluster, grid, cloud, open source, android, .net
JPPF

The open source
grid computing
solution

 Home   About   Features   Download   Documentation   On Github   Forums 
June 03, 2023, 04:04:35 PM *
Welcome,
Please login or register.

Login with username, password and session length
Advanced search  
News: New users, please read this message. Thank you!
  Home Help Search Login Register  
Pages: [1]   Go Down

Author Topic: Baffled by multiple interface config  (Read 1516 times)

dnedrow

  • JPPF Padawan
  • *
  • Posts: 1
Baffled by multiple interface config
« on: August 15, 2013, 11:42:50 PM »

I have a situation in which I'm installing JPPF on three servers.

Code: [Select]
Server_1
eth0: 10.1.1.1
virbr0: 192.168.1.1

Server_2
eth0: 10.1.1.2
virbr0: 192.168.1.1

Server_3
eth0: 10.1.2.1
virbr0: 192.168.1.1

I've tried defining the servers (and nodes) by the IP address associated with eth0, as well as with the hostname associated with that IP address.

But when I launch the Admin UI, all of the servers and nodes show up as the virbr0 address, 192.168.1.1. This makes it impossible to figure out what you're looking at. I know that all the servers are reflected here, because I see status changes as I take them up and down.

I basically need to tell JPPF to bind to eth0.

With the admittedly limited info above, how would I do this in the config file(s)?

-David

Logged

lolo

  • Administrator
  • JPPF Council Member
  • *****
  • Posts: 2272
    • JPPF Web site
Re: Baffled by multiple interface config
« Reply #1 on: August 16, 2013, 07:43:41 AM »

Hi David,

From the node's perspective, there are several  ways you can restrict the node's connection to a specific on interface of the server:

1) When server discovery is enabled ("jppf.discovery.enabled = true", which is the default, in both node and server configuration).
The discovery mechanism consists in having the server broadcasting its connection information for all available network interfaces via UDP multicast. The nodes will listen to UDP datagrams sent broadcast by the server and connect to the first reachable server interface for which they receive information. JPPF offers 2 ways to restrict/filter which interfaces should be used.

a) You can specify IP filters in the node's configuration
For instance, for the node to only connect on the server's eth0 interface, you could specify in the config:
Code: [Select]
# allow only IPv4 addresses in the range [10.1.1.1 ... 10.1.1.2] or 10.1.2.1
jppf.discovery.include.ipv4 = 10.1.1.1-2, 10.1.2.1
# (alternatively) exclude undesired 192.168.1.xxx addresses
jppf.discovery.exclude.ipv4 = 192.168.1
# exclude all IPv6 addresses
jppf.discovery.exclude.ipv6 = -

b) you might also want to limit the interfaces the server is broadcasting to:
Code: [Select]
# broadcast information only for eth0 interface
jppf.discovery.broadcast.include.ipv4 = 10.1.
# (alternatively) exclude undesired 192.168.1.xxx addresses
jppf.discovery.broadcast.exclude.ipv4 = 192.168.1
# do not broadcast information for IPv6 addresses
jppf.discovery.broadcast.exclude.ipv6 = -

You may also combine a) and b) if your heart is at it :)

2) Disable server discovery ("jppf.discovery.enabled = false") in the server, the node or both.
In this case, you have to explicitely configure the host name or IP address you want the node to connect to, e.g. with  "jppf.server.host = 10.1.1.1". When discovery is enabled for the node, this configuration property is ignored

I hope this clarifies.

Sincerely,
-Laurent
« Last Edit: August 17, 2013, 07:34:29 AM by lolo »
Logged
Pages: [1]   Go Up
 
JPPF Powered by SMF 2.0 RC5 | SMF © 2006–2011, Simple Machines LLC Get JPPF at SourceForge.net. Fast, secure and Free Open Source software downloads