alertmanager down with "create memberlist: Failed to get final advertise address: Failed to parse advertise address \"<nil>\""
Summary
When starting GitLab in an LXD container with netmask set to 255.255.255.255, alertmanager fails to start.
Steps to reproduce
$ sudo apt-get install -t xenial-backports lxd lxd-client
$ sudo lxc launch ubuntu:16.04 c1
$ sudo lxc exec c1 /bin/bash
$ sudo cat >/etc/network/interfaces.d/eth0.cfg <<EOF
auto eth0
iface eth0 inet static
address X.Y.W.Z
netmask 255.255.255.255
gateway X.Y.W.1
EOF
$ exit
$ sudo lxc restart c1
$ sudo lxc exec c1 /bin/bash
$ # Install GitLab CE according to https://about.gitlab.com/installation/#ubuntu
$ sudo gitlab-ctl status
down: alertmanager: 0s, normally up, want up; run: log: (pid 209) 2428s
run: crond: (pid 192) 2428s; run: log: (pid 190) 2428s
run: gitaly: (pid 206) 2428s; run: log: (pid 203) 2428s
run: gitlab-monitor: (pid 222) 2428s; run: log: (pid 220) 2428s
run: gitlab-workhorse: (pid 201) 2428s; run: log: (pid 196) 2428s
run: logrotate: (pid 212) 2428s; run: log: (pid 211) 2428s
run: nginx: (pid 205) 2428s; run: log: (pid 200) 2428s
run: node-exporter: (pid 226) 2428s; run: log: (pid 215) 2428s
run: postgres-exporter: (pid 225) 2428s; run: log: (pid 210) 2428s
run: postgresql: (pid 224) 2428s; run: log: (pid 202) 2428s
run: prometheus: (pid 9300) 518s; run: log: (pid 188) 2428s
run: redis: (pid 197) 2428s; run: log: (pid 193) 2428s
run: redis-exporter: (pid 208) 2428s; run: log: (pid 207) 2428s
run: sidekiq: (pid 9061) 530s; run: log: (pid 198) 2428s
run: unicorn: (pid 9553) 511s; run: log: (pid 194) 2428s
What is the current bug behavior?
alertmanager fails to start and infinitely tries to restart.
What is the expected correct behavior?
alertmanager should start and stay in up state
Relevant logs and/or screenshots
2018-07-27_11:19:17.43890 level=info ts=2018-07-27T11:19:17.438801901Z caller=main.go:174 msg="Starting Alertmanager" version="(version=0.15.0, branch=master, revision=8a7fce686f9208a1c146a3ff6e937f4ba4a2678b)"
2018-07-27_11:19:17.43896 level=info ts=2018-07-27T11:19:17.43886827Z caller=main.go:175 build_context="(go=go1.10.3, user=GitLab-Omnibus, date=2018-07-26T01:08:31+00:00)"
2018-07-27_11:19:17.44422 level=info ts=2018-07-27T11:19:17.444135113Z caller=cluster.go:155 component=cluster msg="setting advertise address explicitly" addr=<nil> port=9094
2018-07-27_11:19:17.44463 level=error ts=2018-07-27T11:19:17.444578438Z caller=main.go:201 msg="Unable to initialize gossip mesh" err="create memberlist: Failed to get final advertise address: Failed to parse advertise address \"<nil>\""
Results of GitLab environment info
Expand for output related to GitLab environment info
System information System: Ubuntu 16.04 Current User: git Using RVM: no Ruby Version: 2.4.4p296 Gem Version: 2.7.6 Bundler Version:1.16.2 Rake Version: 12.3.1 Redis Version: 3.2.11 Git Version: 2.17.1 Sidekiq Version:5.1.3 Go Version: unknownGitLab information Version: 11.1.2 Revision: 35936b0 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: postgresql URL: https://git.example.com HTTP Clone URL: https://git.example.com/some-group/some-project.git SSH Clone URL: git@git.example.com:some-group/some-project.git Using LDAP: no Using Omniauth: no
GitLab Shell Version: 7.1.4 Repository storage paths: ‐ default: /var/opt/gitlab/git-data/repositories Hooks: /opt/gitlab/embedded/service/gitlab-shell/hooks Git: /opt/gitlab/embedded/bin/git
Results of GitLab application Check
Expand for output related to the GitLab application check
Checking GitLab Shell ...GitLab Shell version >= 7.1.4 ? ... OK (7.1.4) Repo base directory exists? default... yes Repo storage directories are symlinks? default... no Repo paths owned by git:root, or git:git? default... yes Repo paths access is drwxrws---? default... yes hooks directories in repos are links: ... ... 90/660 ... yes Redis version >= 2.8.0? ... yes Ruby version >= 2.3.5 ? ... yes (2.4.4) Git version >= 2.9.5 ? ... yes (2.17.1) Git user has default SSH configuration? ... yes Active users: ... 7
Checking GitLab ... Finished