Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Alex Weirig

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

Reply | Threaded
Open this post in threaded view
|

Re: Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Christian Schneider
The Endpoint configuration is done using service properties. So you need to set it on the service you export using DS.

Christian

On 21.11.2016 08:47, Alex Weirig wrote:

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Alex Weirig

Hi Christian,

thanks for your answer ... do you mean we have to use a different port for each service? This can become complicated to manage when the number of services increases ...

Why is the address collision only showing up when I use the 3rd karaf, not when I only have 2 of them?


Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

On 21/11/2016 10:03, Christian Schneider wrote:
The Endpoint configuration is done using service properties. So you need to set it on the service you export using DS.

Christian

On 21.11.2016 08:47, Alex Weirig wrote:

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
-- 
This email was Anti Virus checked by SOPHOS UTM

Reply | Threaded
Open this post in threaded view
|

Re: Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Christian Schneider
I just looked into the source code.

It seems there is a I am not very experienced with the fastbin transport.cfg.
Where you can set the uri for the whole server.

We seem to be lacking documentation here. I will update the github README file to reflect what I found.

Christian

On 21.11.2016 10:12, Alex Weirig wrote:

Hi Christian,

thanks for your answer ... do you mean we have to use a different port for each service? This can become complicated to manage when the number of services increases ...

Why is the address collision only showing up when I use the 3rd karaf, not when I only have 2 of them?


Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

On 21/11/2016 10:03, Christian Schneider wrote:
The Endpoint configuration is done using service properties. So you need to set it on the service you export using DS.

Christian

On 21.11.2016 08:47, Alex Weirig wrote:

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
-- 
This email was Anti Virus checked by SOPHOS UTM



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Christian Schneider
I have updated the docs to reflect where you can configure fastbin.
It seems that the configuration is only done on the general transport level not on the endpoint.

See
https://github.com/apache/aries-rsa/tree/master/provider/fastbin

Christian

On 21.11.2016 10:33, Christian Schneider wrote:
I just looked into the source code.

It seems there is a I am not very experienced with the fastbin transport.cfg.
Where you can set the uri for the whole server.

We seem to be lacking documentation here. I will update the github README file to reflect what I found.

Christian

On 21.11.2016 10:12, Alex Weirig wrote:

Hi Christian,

thanks for your answer ... do you mean we have to use a different port for each service? This can become complicated to manage when the number of services increases ...

Why is the address collision only showing up when I use the 3rd karaf, not when I only have 2 of them?


Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

On 21/11/2016 10:03, Christian Schneider wrote:
The Endpoint configuration is done using service properties. So you need to set it on the service you export using DS.

Christian

On 21.11.2016 08:47, Alex Weirig wrote:

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
-- 
This email was Anti Virus checked by SOPHOS UTM



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com


-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Aries RSA with fastbin provider and 3 nodes throws Address already in use exception?

Alex Weirig

Hi Christian,

thanks again and now I can confirm that everything is working just as expected.

Thank you very much


Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

On 21/11/2016 10:53, Christian Schneider wrote:
I have updated the docs to reflect where you can configure fastbin.
It seems that the configuration is only done on the general transport level not on the endpoint.

See
https://github.com/apache/aries-rsa/tree/master/provider/fastbin

Christian

On 21.11.2016 10:33, Christian Schneider wrote:
I just looked into the source code.

It seems there is a I am not very experienced with the fastbin transport.cfg.
Where you can set the uri for the whole server.

We seem to be lacking documentation here. I will update the github README file to reflect what I found.

Christian

On 21.11.2016 10:12, Alex Weirig wrote:

Hi Christian,

thanks for your answer ... do you mean we have to use a different port for each service? This can become complicated to manage when the number of services increases ...

Why is the address collision only showing up when I use the 3rd karaf, not when I only have 2 of them?


Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu

On 21/11/2016 10:03, Christian Schneider wrote:
The Endpoint configuration is done using service properties. So you need to set it on the service you export using DS.

Christian

On 21.11.2016 08:47, Alex Weirig wrote:

Hello,

I'm facing a problem to get fastbin provider working in the following configuration:

I have

3 karaf containers (4.0.7) running on 3 different (virtual) machines, all have aries RSA (1.9.0) with zookeeper discovery and fastbin provider features installed

1 zookeeper server (3.4.9)

2 of the karaf servers provide services (declarative services) that are correctly registered in zookeeper.


On the 3rd karaf server I want to use the services in a shell command, unfortunately I'm getting an "Address already in use" exception in this karaf container.

2016-11-18 16:43:14,565 | WARN  | pool-64-thread-1 | Activator                        | 56 - org.apache.aries.rsa.provider.fastbin - 1.9.0 | Error starting activator
java.io.IOException: Failed to bind to server socket: /0.0.0.0:2543 due to: java.net.BindException: Address already in use
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:99)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:194)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.tcp.ServerInvokerImpl.start(ServerInvokerImpl.java:190)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.FastBinProvider.<init>(FastBinProvider.java:67)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.Activator.doStart(Activator.java:47)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at org.apache.aries.rsa.provider.fastbin.BaseActivator.run(BaseActivator.java:230)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_72]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_72]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_72]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_72]
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:433)[:1.8.0_72]
        at sun.nio.ch.Net.bind(Net.java:425)[:1.8.0_72]
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)[:1.8.0_72]
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)[:1.8.0_72]
        at org.apache.aries.rsa.provider.fastbin.tcp.TcpTransportServer.start(TcpTransportServer.java:97)[56:org.apache.aries.rsa.provider.fastbin:1.9.0]
        ... 10 more

When I deploy my command on one of the other karaf container everything works fine.

On the fastbin github site there is an "endpoint configuration" section:

Endpoint Configuration

service.exported.configs: aries.fastbin

Key    Default    Description
uri    tcp://0.0.0.0:2543    The bind address to use
exportAddress    looks up the hostname    The ip/hostname how remote clients can reach this server
timeout    300000    The timeout for sync calls (default 5 minutes)

I guess I'm supposed to change the "uri" value (maybe a different one on each karaf container?) in order to not get a collision.

Unfortunately there is no indication where to specify these values, a .cfg file in karaf/etc/? Is the file supposed to be named service.exported.configs.cfg? Is the syntax supposed to be aries.fastbin.uri?

Many thanks in advance for your support

--

Schéin Gréiss,
Mit freundlichen Grüßen,
Meilleures salutations,
Kind regards,

Alex Weirig
Responsable Technique
Ville de Luxembourg - Centre Technolink
2, rue Charles de Tornaco
L - 2623 LUXEMBOURG
[hidden email]
Tel: +352 4796 - 6127
Fax: +352 42 88 81
www.technolink.lu



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com
-- 
This email was Anti Virus checked by SOPHOS UTM



-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com


-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com