profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/kyleaa/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Kyle A Anderson kyleaa software developer @ zappos.com

kyleaa/Amazon-MWS 0

API binding for Amazon's Marketplace Web Services.

kyleaa/amazon-sns 0

Amazon Simple Notification Service made simpler

kyleaa/apple_stock 0

View Apple in-store stock availability in a matrix

issue commentkyleaa/libcluster_ec2

Unable to connect

That's a great callout about Docker - you would need to either run in host network mode or use port mapping to expose those. I believe that can be done in Elastic Beanstalk with the Dockerrun.aws.json file. In the past I had to use the Multicontainer Docker platform, I am not sure as this is currently the case as I have moved off Elastic Beanstalk in recent years.

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_v2config.html

JorisKok

comment created time in 8 days

issue commentkyleaa/libcluster_ec2

Unable to connect

Can you SSH into the instances and see if they have connectivity between them on the ports? I think there's a lot of other VPC configuration that can impact communication between instances. The error message is a bit vague, but this doesn't seem like a libcluster issue.

JorisKok

comment created time in 9 days

issue commentkyleaa/libcluster_ec2

I couldn't make it work (Killed)

libcluster_ec2 is a discovery strategy, to help with cluster discovery. It calls the EC2 API to find instances with defined characteristics and then attempts to connect. EPMD takes a static list of nodes, and Gossip uses UDP multicast. Gossip should definitely work just fine in EC2, I have less experience with how VPCs handle multicast.

I agree with your assessment that your instance is terminating the compile, and doesn't appear to be related to the library. Assuming your application is not resource intensive, you may try compiling it on a larger instance and then copying the compiled code to your micro instance. This should work fine if you're using the same AMI for each.

I'd recommend starting with two instances and using barebones communication (eg https://elixirschool.com/en/lessons/advanced/otp-distribution/) to confirm your VPC is set up correctly to allow communication between nodes.

I was not aware of the ElixirConf talk mentioned, but I think it is https://www.youtube.com/watch?v=gsnjstLQigQ - thanks for the tip! :-)

tiagodavi

comment created time in 12 days