jdj_dk
My app does not pick up the changed hostname on my VPS
Hi everyone.
I’m trying to setup a small cluster with three nodes. I’m using libcluster as I have before. But my nodes doesn’t have a usable hostname. The VPS came with a hostname like this: ip-123-123-123-123. I’ve changed the hostname on the VPS but it doesn’t get picked up in the app when I restart it. I’ve restarted the server. And i can see that the hostname has changed on the server it self.
I’m seeing in the logs when it starts that it’s using the old hostname, which included the IP of the vps. So I get this error:
21:36:48.538 [error] ** System running to use fully qualified hostnames **
: ** Hostname ip-x-x-x-x is illegal **
The app is built using Mix release. From the docs I can see that I should be able to set RELEASE_DISTRIBUTION and RELEASE_NODE env variables. I’ve set them to the following:
RELEASE_DISTRIBUTION=name
RELEASE_NODE=app_name@host.url.com
I would assume doing so would force change the hostname in the app as well. But it doesn’t seem to be the case. What am I missing. Thanks in advance ![]()
Most Liked
LostKobrakai
This is what I found when looking for what makes an hostname valid as opposed to illegal. Maybe you’re missing the resolvable and reachable part.
Long names need the hostname to be resolvable and reachable, in other words it needs to either be an IP address or a valid DNS name. In the case of an IP address, it is already resolved so it only needs to be reachable from the current host. In the case of a DNS name, it needs to be resolvable by any one of the DNS resolution mechanisms on the host (
/etc/hosts,/etc/resolve.conf, etc.) to an IP address which is reachable from the current host.
https://github.com/bitwalker/distillery/issues/338#issuecomment-334848537
NobbZ
No, the s in sname is for “short”. Some check in the BEAM will even error if there is a dot in a sname.
fsa
More straw grasping - you can try to put this at the top/start of some/any scripts you would like to debug:
set -x
it echoes results of the commands in the script file as it executes…
( you can also run it as:
sh -x scriptname
if you can’t/don’t want to edit the scripts themselves)
Best of luck.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #hex









