Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶ added in v0.18.0
Client describes a ETCD configuration client
func NewClient ¶ added in v0.18.0
NewClient creates a new ETCD client connection to ETCD servers
func NewClientFromConfig ¶ added in v0.18.0
NewClientFromConfig creates a new ETCD client from configuration
func (*Client) GetInt64 ¶ added in v0.18.0
GetInt64 returns an int64 value from the configuration key
func (*Client) SetInt64 ¶ added in v0.18.0
SetInt64 set an int64 value to the configuration key
type EmbeddedEtcd ¶
type EmbeddedEtcd struct { Port int // contains filtered or unexported fields }
EmbeddedEtcd provides a single node etcd server.
func NewEmbeddedEtcd ¶
func NewEmbeddedEtcd(name string, listen string, dataDir string, maxWalFiles, maxSnapFiles uint, debug bool) (*EmbeddedEtcd, error)
NewEmbeddedEtcd creates a new embedded ETCD server
func NewEmbeddedEtcdFromConfig ¶
func NewEmbeddedEtcdFromConfig() (*EmbeddedEtcd, error)
NewEmbeddedEtcdFromConfig creates a new embedded ETCD server from configuration
type MasterElectionListener ¶ added in v0.18.0
type MasterElectionListener interface { OnStartAsMaster() OnStartAsSlave() OnSwitchToMaster() OnSwitchToSlave() }
MasterElectionListener describes the multi ETCD election mechanism
type MasterElector ¶ added in v0.18.0
type MasterElector struct { common.RWMutex EtcdKeyAPI etcd.KeysAPI Host string // contains filtered or unexported fields }
MasterElector describes an ETCD master elector
func NewMasterElector ¶ added in v0.18.0
func NewMasterElector(host string, serviceType common.ServiceType, key string, etcdClient *Client) *MasterElector
NewMasterElector creates a new ETCD master elector
func NewMasterElectorFromConfig ¶ added in v0.18.0
func NewMasterElectorFromConfig(serviceType common.ServiceType, key string, etcdClient *Client) *MasterElector
NewMasterElectorFromConfig creates a new ETCD master elector from configuration
func (*MasterElector) AddEventListener ¶ added in v0.18.0
func (le *MasterElector) AddEventListener(listener MasterElectionListener)
AddEventListener registers a new listener
func (*MasterElector) IsMaster ¶ added in v0.18.0
func (le *MasterElector) IsMaster() bool
IsMaster returns true if the current instance is master
func (*MasterElector) Start ¶ added in v0.18.0
func (le *MasterElector) Start()
Start the master election mechanism
func (*MasterElector) StartAndWait ¶ added in v0.18.0
func (le *MasterElector) StartAndWait()
StartAndWait starts the election mechanism and wait for the first election before returning
func (*MasterElector) Stop ¶ added in v0.18.0
func (le *MasterElector) Stop()
Stop the election mechanism
func (*MasterElector) TTL ¶ added in v0.18.0
func (le *MasterElector) TTL() time.Duration
TTL time to live
Source Files
¶
- client.go
- election.go
- server.go