Documentation ¶
Index ¶
- Constants
- type Config
- func (c *Config) ClusterConfig() *server.ClusterConfig
- func (c *Config) DataDirFromName()
- func (c *Config) EtcdTLSInfo() *server.TLSInfo
- func (c *Config) Load(arguments []string) error
- func (c *Config) LoadEnv() error
- func (c *Config) LoadFile(path string) error
- func (c *Config) LoadFlags(arguments []string) error
- func (c *Config) LoadPeersFile() error
- func (c *Config) LoadSystemFile() error
- func (c *Config) MetricsBucketName() string
- func (c *Config) NameFromHostname()
- func (c *Config) PeerTLSInfo() *server.TLSInfo
- func (c *Config) Reset() error
- func (c *Config) Sanitize() error
- func (c *Config) Trace() bool
Constants ¶
const DefaultSystemConfigPath = "/etc/etcd/etcd.conf"
The default location for the etcd configuration file.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { SystemPath string Addr string `toml:"addr" env:"ETCD_ADDR"` BindAddr string `toml:"bind_addr" env:"ETCD_BIND_ADDR"` CAFile string `toml:"ca_file" env:"ETCD_CA_FILE"` CertFile string `toml:"cert_file" env:"ETCD_CERT_FILE"` CPUProfileFile string CorsOrigins []string `toml:"cors" env:"ETCD_CORS"` DataDir string `toml:"data_dir" env:"ETCD_DATA_DIR"` Discovery string `toml:"discovery" env:"ETCD_DISCOVERY"` Force bool KeyFile string `toml:"key_file" env:"ETCD_KEY_FILE"` HTTPReadTimeout float64 `toml:"http_read_timeout" env:"ETCD_HTTP_READ_TIMEOUT"` HTTPWriteTimeout float64 `toml:"http_write_timeout" env:"ETCD_HTTP_WRITE_TIMEOUT"` Peers []string `toml:"peers" env:"ETCD_PEERS"` PeersFile string `toml:"peers_file" env:"ETCD_PEERS_FILE"` MaxResultBuffer int `toml:"max_result_buffer" env:"ETCD_MAX_RESULT_BUFFER"` MaxRetryAttempts int `toml:"max_retry_attempts" env:"ETCD_MAX_RETRY_ATTEMPTS"` RetryInterval float64 `toml:"retry_interval" env:"ETCD_RETRY_INTERVAL"` Name string `toml:"name" env:"ETCD_NAME"` Snapshot bool `toml:"snapshot" env:"ETCD_SNAPSHOT"` SnapshotCount int `toml:"snapshot_count" env:"ETCD_SNAPSHOTCOUNT"` ShowHelp bool ShowVersion bool Verbose bool `toml:"verbose" env:"ETCD_VERBOSE"` VeryVerbose bool `toml:"very_verbose" env:"ETCD_VERY_VERBOSE"` VeryVeryVerbose bool `toml:"very_very_verbose" env:"ETCD_VERY_VERY_VERBOSE"` Peer struct { Addr string `toml:"addr" env:"ETCD_PEER_ADDR"` BindAddr string `toml:"bind_addr" env:"ETCD_PEER_BIND_ADDR"` CAFile string `toml:"ca_file" env:"ETCD_PEER_CA_FILE"` CertFile string `toml:"cert_file" env:"ETCD_PEER_CERT_FILE"` KeyFile string `toml:"key_file" env:"ETCD_PEER_KEY_FILE"` HeartbeatInterval int `toml:"heartbeat_interval" env:"ETCD_PEER_HEARTBEAT_INTERVAL"` ElectionTimeout int `toml:"election_timeout" env:"ETCD_PEER_ELECTION_TIMEOUT"` } StrTrace string `toml:"trace" env:"ETCD_TRACE"` GraphiteHost string `toml:"graphite_host" env:"ETCD_GRAPHITE_HOST"` Cluster struct { ActiveSize int `toml:"active_size" env:"ETCD_CLUSTER_ACTIVE_SIZE"` RemoveDelay float64 `toml:"remove_delay" env:"ETCD_CLUSTER_REMOVE_DELAY"` SyncInterval float64 `toml:"sync_interval" env:"ETCD_CLUSTER_SYNC_INTERVAL"` } }
Config represents the server configuration.
func (*Config) ClusterConfig ¶ added in v0.4.0
func (c *Config) ClusterConfig() *server.ClusterConfig
func (*Config) DataDirFromName ¶
func (c *Config) DataDirFromName()
DataDirFromName sets the data dir from a machine name and issue a warning that etcd is guessing.
func (*Config) EtcdTLSInfo ¶
EtcdTLSInfo retrieves a TLSInfo object for the etcd server
func (*Config) Load ¶
Loads the configuration from the system config, command line config, environment variables, and finally command line arguments.
func (*Config) LoadPeersFile ¶
LoadPeersFile loads the peers listed in the peers file.
func (*Config) LoadSystemFile ¶
Loads from the system etcd configuration file if it exists.
func (*Config) MetricsBucketName ¶
MetricsBucketName generates the name that should be used for a corresponding MetricsBucket object
func (*Config) NameFromHostname ¶
func (c *Config) NameFromHostname()
NameFromHostname sets the machine name from the hostname. This is to help people get started without thinking up a name.
func (*Config) PeerTLSInfo ¶
PeerRaftInfo retrieves a TLSInfo object for the peer server.