|
|
@ -381,7 +381,7 @@ func (s *Server) Leave() error { |
|
|
|
ch := make(chan error, 1) |
|
|
|
ch := make(chan error, 1) |
|
|
|
go func() { |
|
|
|
go func() { |
|
|
|
var out struct{} |
|
|
|
var out struct{} |
|
|
|
peer := s.rpcListener.Addr().String() |
|
|
|
peer := s.raftTransport.LocalAddr().String() |
|
|
|
err := s.connPool.RPC(leader, "Raft.RemovePeer", peer, &out) |
|
|
|
err := s.connPool.RPC(leader, "Raft.RemovePeer", peer, &out) |
|
|
|
ch <- err |
|
|
|
ch <- err |
|
|
|
}() |
|
|
|
}() |
|
|
@ -404,14 +404,14 @@ AFTER_LEAVE: |
|
|
|
// The target address should be another node inside the DC
|
|
|
|
// The target address should be another node inside the DC
|
|
|
|
// listening on the Serf LAN address
|
|
|
|
// listening on the Serf LAN address
|
|
|
|
func (s *Server) JoinLAN(addrs []string) (int, error) { |
|
|
|
func (s *Server) JoinLAN(addrs []string) (int, error) { |
|
|
|
return s.serfLAN.Join(addrs, false) |
|
|
|
return s.serfLAN.Join(addrs, true) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// JoinWAN is used to have Consul join the cross-WAN Consul ring
|
|
|
|
// JoinWAN is used to have Consul join the cross-WAN Consul ring
|
|
|
|
// The target address should be another node listening on the
|
|
|
|
// The target address should be another node listening on the
|
|
|
|
// Serf WAN address
|
|
|
|
// Serf WAN address
|
|
|
|
func (s *Server) JoinWAN(addrs []string) (int, error) { |
|
|
|
func (s *Server) JoinWAN(addrs []string) (int, error) { |
|
|
|
return s.serfWAN.Join(addrs, false) |
|
|
|
return s.serfWAN.Join(addrs, true) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// LANMembers is used to return the members of the LAN cluster
|
|
|
|
// LANMembers is used to return the members of the LAN cluster
|
|
|
|