[erlang-questions] Erlang in Amazon AWS cloud

Ciprian Dorin Craciun <>
Thu Nov 3 23:34:54 CET 2011


On Thu, Nov 3, 2011 at 19:30, Daniel Dormont <> wrote:
> One issue I've run into is that at least with the setup my company is using
> now, any time we restart an instance it gets a different host name, which
> means the Erlang node name changes, which means the existing Mnesia tables
> are no good. I'm not familiar enough with AWS to know if there's something
> different to be done.
> dan

    I think a few weeks ago something similar was discussed, and a
mention of `inetrc` was made.
        http://www.erlang.org/doc/apps/erts/inet_cfg.html

    It seems that you can "trick" Erlang to resolve a name to a
certain IP by manipulating the `inetrc` configuration. Thus all you
need to do is makeup a valid DNS name for each server -- e.g.
"server-1.myapplication.vnet", etc. -- and each time you restart an
Amazon VM you just update the file on all the other instances and
restart the Erlang processes.

    Of course it would be even easier if you would just make all the
VM register themselves under fixed DNS name exposed by a real DNS
(public or not) server. You could achieve this by either:
    * using Amazon Route53 (this is how the DNS service is named?) and
just mapping a CNAME to the instance A record; (they must have some
CLI tools;)
    * using a dynamic DNS client with an existing hosted DNS service;
(I think all the "big" ones support this;)

    Hope this helps,
    Ciprian.

    P.S.: I haven't tried this myself, but I was in a similar situation.



More information about the erlang-questions mailing list