diff --git a/etcdserver/config.go b/etcdserver/config.go index 249e8d5fc131..0583699581f9 100644 --- a/etcdserver/config.go +++ b/etcdserver/config.go @@ -156,9 +156,16 @@ func (c *ServerConfig) advertiseMatchesCluster() error { missing = append(missing, url) } } - mstr := strings.Join(missing, ",") + if len(missing) > 0 { + mstr := strings.Join(missing, ",") + umap := types.URLsMap(map[string]types.URLs{c.Name: c.PeerURLs}) + return fmt.Errorf("--initial-advertise-peer-urls has %s but missing from --initial-cluster=%s", mstr, umap.String()) + } + + // resolved URLs from "--initial-advertise-peer-urls" and "--initial-cluster" did not match or failed + apStr := strings.Join(apurls, ",") umap := types.URLsMap(map[string]types.URLs{c.Name: c.PeerURLs}) - return fmt.Errorf("--initial-advertise-peer-urls has %s but missing from --initial-cluster=%s", mstr, umap.String()) + return fmt.Errorf("failed to resolve %s to match --initial-cluster=%s", apStr, umap.String()) } func (c *ServerConfig) MemberDir() string { return filepath.Join(c.DataDir, "member") }