[英]hostname for creating erlang cluster
我正在嘗試使用amazon EC2實例構建一個集群。
我是否必須將每個節點的主機名設置為.hosts.erlang
文件中列出的主機名?
目前,每個節點的.hosts.erlang
都有:
'ip-10-0-23-186.eu-central-1.compute.internal'.
'ip-10-0-5-10.eu-central-1.compute.internal'.
這是節點的私有DNS。
在節點的vm.args
中,我有這樣的東西:
-name api@ip-10-0-5-10.eu-central-1.compute.internal
我試圖將主機名更改為完整的私有dns,但它只更改為:
ip-10-0-5-10
我檢查了群集,空了:
$ erl
Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:4:4] [async-threads:10] [kernel-poll:false]
Eshell V8.0 (abort with ^G)
1> nodes().
[]
我使用edliver部署我的應用程序,如何調試為什么erlang不會創建預期的集群?
我試過iex:
iex(3)> hosts_path = Path.expand("/home/admin/.hosts.erlang")
"/home/admin/.hosts.erlang"
iex(4)> :net_adm.world(:verbose)
[]
編輯
我可以確認可以讀取.hosts.erlang
:
iex(2)> File.read("/home/admin/.hosts.erlang")
{:ok,
"'ip-10-0-23-186.eu-central-1.compute.internal'.\n'ip-10-0-5-10.eu-central-1.compute.internal'.\n\n"}
是否有一個特定的文件夾,我必須運行erl?
在瀏覽器中,我可以看到應用程序正常工作,但我不確定群集..請幫忙!
當我使用AWS時,這是我目前所在的安全組:
好的,我找到了解決方案,我必須在每個節點的/etc/hosts
的hosts文件中定義節點的ip地址
10.0.23.186 ip-10-0-23-186.eu-central-1.compute.internal
10.0.5.10 ip-10-0-5-10.eu-central-1.compute.internal
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.