Petals ESB Container

The listening IP of the NIO transporter and the WS-API are not configurable and default to the configured container host

Details

  • Type: Improvement Request Improvement Request
  • Status: Resolved Resolved
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 5.0.0
  • Fix Version/s: 5.0.1
  • Component/s: Transporter, WS API
  • Security Level: Public
  • Description:
    Hide

    The NIO transporter listens to the same host as the one configured in the topology.

    It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
    The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

    This also the case for the WS-API extension.

    Concerning the Admin JMX service, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

    We should introduce thus new configurations in server.properties to specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc):

    • petals.transport.tcp.receivers.listening.interface
    • petals.ws-api.http.listening.interface

    It will default to the host of the current container as declared in the topology!

    Show
    The NIO transporter listens to the same host as the one configured in the topology. It can be problematic if we want to listen to all ips of the machine (0.0.0.0). The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one. This also the case for the WS-API extension. Concerning the Admin JMX service, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything. We should introduce thus new configurations in server.properties to specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc):
    • petals.transport.tcp.receivers.listening.interface
    • petals.ws-api.http.listening.interface
    It will default to the host of the current container as declared in the topology!
  • Environment:
    -

Activity

Victor NOËL made changes - Tue, 1 Dec 2015 - 10:52:08 +0100
Field Original Value New Value
Status New [ 10000 ] Open [ 10002 ]
Priority Minor [ 4 ]
Assignee Christophe DENEUX [ cdeneux ] Victor NOËL [ vnoel ]
Victor NOËL made changes - Tue, 1 Dec 2015 - 10:52:10 +0100
Status Open [ 10002 ] In Progress [ 10003 ]
Victor NOËL made changes - Tue, 1 Dec 2015 - 10:53:14 +0100
Summary The listening IP of the NIO transporter and WS-API are not configurable and default to the configured container host The listening IP of the NIO transporter, the JMX acces and WS-API are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the JMX access, it is a bit different because RMI is taking care of setting this up and it seems it listens to 0.0.0.0 by default.
Victor NOËL made changes - Tue, 1 Dec 2015 - 13:40:09 +0100
Summary The listening IP of the NIO transporter, the JMX acces and WS-API are not configurable and default to the configured container host The listening IP of the NIO transporter and WS-API are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the JMX access, it is a bit different because RMI is taking care of setting this up and it seems it listens to 0.0.0.0 by default.
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the JMX access, it is a bit different because it is the RMI Registry that actually listens and it is not configurable to listen to specific interfaces: it will always listen to everything.
Victor NOËL made changes - Tue, 1 Dec 2015 - 13:50:12 +0100
Summary The listening IP of the NIO transporter and WS-API are not configurable and default to the configured container host The listening IP of the NIO transporter, the WS-API and the embedded regisrty are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the JMX access, it is a bit different because it is the RMI Registry that actually listens and it is not configurable to listen to specific interfaces: it will always listen to everything.
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that altought the embedded registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the JMX access, it is a bit different because it is the RMI Registry that actually listens and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.embedded-registry-overlay.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Victor NOËL made changes - Tue, 1 Dec 2015 - 13:55:40 +0100
Summary The listening IP of the NIO transporter, the WS-API and the embedded regisrty are not configurable and default to the configured container host The listening IP of the NIO transporter and the WS-API are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that altought the embedded registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the JMX access, it is a bit different because it is the RMI Registry that actually listens and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.embedded-registry-overlay.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.

Concerning the Admin JMX service and the Embedded Registry, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Victor NOËL made changes - Tue, 1 Dec 2015 - 14:00:24 +0100
Summary The listening IP of the NIO transporter and the WS-API are not configurable and default to the configured container host The listening IP of the NIO transporter, the WS-API and the Embedded Registry are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.

Concerning the Admin JMX service and the Embedded Registry, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Victor NOËL made changes - Tue, 1 Dec 2015 - 14:40:44 +0100
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen
 - petals.embedded-registry-overlay.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Hide
Christophe DENEUX added a comment - Tue, 1 Dec 2015 - 15:02:01 +0100 - edited

To be consistent with existing properties, can you use the following property names:

  • petals.transport.tcp.receivers.listening.interface.
  • petals.ws-api.http.listening.interface.


IMO, it has no sense to introduce such a parameter for the embedded registry because the embedded registry is only available for standalone container. So, I think that we can use the interface 'localhost' as hard-coded value.

Show
Christophe DENEUX added a comment - Tue, 1 Dec 2015 - 15:02:01 +0100 - edited To be consistent with existing properties, can you use the following property names:
  • petals.transport.tcp.receivers.listening.interface.
  • petals.ws-api.http.listening.interface.

IMO, it has no sense to introduce such a parameter for the embedded registry because the embedded registry is only available for standalone container. So, I think that we can use the interface 'localhost' as hard-coded value.
Hide
Victor NOËL added a comment - Tue, 1 Dec 2015 - 15:07:26 +0100

Yes but who knows if there is some restrictions that makes it running on 127.0.0.1 a problem? It was more for consistency, and anyway, we need to do it for the registry overlay (PETALSREGOVER-8), so adding the configuration for the embedded one is cheap… I will think)

Show
Victor NOËL added a comment - Tue, 1 Dec 2015 - 15:07:26 +0100 Yes but who knows if there is some restrictions that makes it running on 127.0.0.1 a problem? It was more for consistency, and anyway, we need to do it for the registry overlay (PETALSREGOVER-8), so adding the configuration for the embedded one is cheap… I will think)
Victor NOËL made changes - Tue, 1 Dec 2015 - 15:08:04 +0100
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.listen
 - petals.ws-api.http.listen
 - petals.embedded-registry-overlay.listen

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.receivers.listening.interface
 - petals.ws-api.http.listening.interface
 - petals.embedded-registry-overlay.listening.interface

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Hide
Christophe DENEUX added a comment - Tue, 1 Dec 2015 - 15:08:11 +0100

You can find here (http://vafer.org/blog/20061010091658/) some inputs to introduce such a parameter for the JMX API.

Show
Christophe DENEUX added a comment - Tue, 1 Dec 2015 - 15:08:11 +0100 You can find here (http://vafer.org/blog/20061010091658/) some inputs to introduce such a parameter for the JMX API.
Hide
Victor NOËL added a comment - Tue, 1 Dec 2015 - 15:20:09 +0100

Ok, removed the embedded registry, it makes no real sense.

Show
Victor NOËL added a comment - Tue, 1 Dec 2015 - 15:20:09 +0100 Ok, removed the embedded registry, it makes no real sense.
Victor NOËL made changes - Tue, 1 Dec 2015 - 15:20:09 +0100
Summary The listening IP of the NIO transporter, the WS-API and the Embedded Registry are not configurable and default to the configured container host The listening IP of the NIO transporter and the WS-API are not configurable and default to the configured container host
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension and the embedded registry.
Note that although the Embedded Registry is normally meant to be used only by the current container, there could be situations where it can't be running on localhost.

Concerning the Admin JMX service (of petals as well as of the registry), it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.receivers.listening.interface
 - petals.ws-api.http.listening.interface
 - petals.embedded-registry-overlay.listening.interface

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the Admin JMX service, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.receivers.listening.interface
 - petals.ws-api.http.listening.interface

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
Hide
Victor NOËL added a comment - Tue, 1 Dec 2015 - 16:30:45 +0100

Committed and documentation updated too

Show
Victor NOËL added a comment - Tue, 1 Dec 2015 - 16:30:45 +0100 Committed and documentation updated too
Victor NOËL made changes - Tue, 1 Dec 2015 - 16:30:45 +0100
Status In Progress [ 10003 ] Resolved [ 10004 ]
Fix Version/s 5.0.1 [ 10579 ]
Resolution Fixed [ 1 ]
Victor NOËL made changes - Wed, 2 Dec 2015 - 10:36:51 +0100
Description The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the Admin JMX service, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties:
 - petals.transport.tcp.receivers.listening.interface
 - petals.ws-api.http.listening.interface

To specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc).
It will default to localhost (or should it default to the host of the current container as declared in the topology?)
The NIO transporter listens to the same host as the one configured in the topology.

It can be problematic if we want to listen to all ips of the machine (0.0.0.0).
The bottom of the issue is that we should differentiate between the listening ip and the host/ip used by other container to contact another one.

This also the case for the WS-API extension.

Concerning the Admin JMX service, it is a bit different because it is the RMI Registry that actually listens for both of them and it is not configurable to listen to specific interfaces: it will always listen to everything.

We should introduce thus new configurations in server.properties to specify the address to listen to (localhost, 0.0.0.0, 192.160.1.1, etc):
 - petals.transport.tcp.receivers.listening.interface
 - petals.ws-api.http.listening.interface



It will default to the host of the current container as declared in the topology!
Hide
Christophe DENEUX added a comment - Tue, 1 Mar 2016 - 10:33:19 +0100

To be more user-friendly, the default value of the NIO transporter has been moved to "0.0.0.0" (all network interface). In this way, we can install easily a distributed topology without having to update 'server.properties'.

Show
Christophe DENEUX added a comment - Tue, 1 Mar 2016 - 10:33:19 +0100 To be more user-friendly, the default value of the NIO transporter has been moved to "0.0.0.0" (all network interface). In this way, we can install easily a distributed topology without having to update 'server.properties'.
Transition Status Change Time Execution Times Last Executer Last Execution Date
New New Open Open
11s
1
Victor NOËL
Tue, 1 Dec 2015 - 10:52:08 +0100
Open Open In Progress In Progress
2s
1
Victor NOËL
Tue, 1 Dec 2015 - 10:52:10 +0100
In Progress In Progress Resolved Resolved
5h 38m
1
Victor NOËL
Tue, 1 Dec 2015 - 16:30:45 +0100



People

Dates

  • Created:
    Tue, 1 Dec 2015 - 10:51:57 +0100
    Updated:
    Tue, 1 Mar 2016 - 10:33:19 +0100
    Resolved:
    Tue, 1 Dec 2015 - 16:30:45 +0100