Axon Server behind AWS load balancer


Has anybody ever setup axon to run in an ECS cluster, I’ve got a scenario im working on and could do with some pointers.

I’m trying to setup a development / developer axon server that all developers connect to which sits and which our staging backend will eventually connect to. I’m running into issues with spring throwing INTERNAL: http2 exception and First received frame was not SETTINGS errors. I’ve setup two targets with the port 8124 set to gRPC.

Hi Raoul,

Could you please provide some additional information? What kind of load balancer do you use, and now is it configured? Something that sometimes goes wrong is that a load balancer is used that doesn’t work with gRPC, hence my question. Also, each client should be able to connect ‘directly’ to a certain Axon Server instance.

Thanks for the quick reply Gerard.

I was playing around with a Axon being run as a ECS Task on an EC2 Instance, I set the task to use awsvpc which assigns each task its own private ip.

I setup an application load balancer listening to port 8024 and 8124 each pointing to its own target group. The target group for 8124 was setup as follows.

The health checks for the ports were both returning healthy.

Also, each client should be able to connect ‘directly’ to a certain Axon Server instance.

Does that mean that the EC2 instance also needs to be accessible directly in order for it to work instead of just through the load balancer?

The awsvpc seems fine to me, but I have little experience with it.

You could work with a load balancer to connect ‘directly’ but there should be a unique URL for each instance, which should be configured correctly, such that it can connect to a specific instance.

Thanks Gerard, I’ve parked this for now and have just given the instance an IP I assign to the correct route manually instead automatically doing it through the CDK

1 Like