Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Cluster ¶
type Cluster interface {
Zone() string
SetZone(z string) Cluster
Endpoints() []string
SetEndpoints(endpoints []string) Cluster
KeepAliveOptions() KeepAliveOptions
SetKeepAliveOptions(value KeepAliveOptions) Cluster
TLSOptions() TLSOptions
SetTLSOptions(TLSOptions) Cluster
}
Cluster defines the configuration for a etcd cluster.
type ClusterConfig ¶
type ClusterConfig struct {
Zone string `yaml:"zone"`
Endpoints []string `yaml:"endpoints"`
KeepAlive *keepAliveConfig `yaml:"keepAlive"`
TLS *TLSConfig `yaml:"tls"`
}
ClusterConfig is the config for a zoned etcd cluster.
func (ClusterConfig) NewCluster ¶
func (c ClusterConfig) NewCluster() Cluster
NewCluster creates a new Cluster.
type Configuration ¶
type Configuration struct {
Zone string `yaml:"zone"`
Env string `yaml:"env"`
Service string `yaml:"service" validate:"nonzero"`
CacheDir string `yaml:"cacheDir"`
ETCDClusters []ClusterConfig `yaml:"etcdClusters"`
SDConfig services.Configuration `yaml:"m3sd"`
WatchWithRevision int64 `yaml:"watchWithRevision"`
}
Configuration is for config service client.
func (Configuration) NewClient ¶
func (cfg Configuration) NewClient(iopts instrument.Options) (client.Client, error)
NewClient creates a new config service client.
func (Configuration) NewOptions ¶
func (cfg Configuration) NewOptions() Options
NewOptions returns a new Options.
type KeepAliveOptions ¶
type KeepAliveOptions interface {
// KeepAliveEnabled determines whether keepAlives are enabled.
KeepAliveEnabled() bool
// SetKeepAliveEnabled sets whether keepAlives are enabled.
SetKeepAliveEnabled(value bool) KeepAliveOptions
// KeepAlivePeriod is the duration of time after which if the client doesn't see
// any activity the client pings the server to see if transport is alive.
KeepAlivePeriod() time.Duration
// SetKeepAlivePeriod sets the duration of time after which if the client doesn't see
// any activity the client pings the server to see if transport is alive.
SetKeepAlivePeriod(value time.Duration) KeepAliveOptions
// KeepAlivePeriodMaxJitter is used to add some jittering to keep alive period
// to avoid a large number of clients all sending keepalive probes at the
// same time.
KeepAlivePeriodMaxJitter() time.Duration
// SetKeepAlivePeriodMaxJitter sets the maximum jittering to keep alive period
// to avoid a large number of clients all sending keepalive probes at the
// same time.
SetKeepAlivePeriodMaxJitter(value time.Duration) KeepAliveOptions
// KeepAliveTimeout is the time that the client waits for a response for the
// keep-alive probe. If the response is not received in this time, the connection is closed.
KeepAliveTimeout() time.Duration
// SetKeepAliveTimeout sets the time that the client waits for a response for the
// keep-alive probe. If the response is not received in this time, the connection is closed.
SetKeepAliveTimeout(value time.Duration) KeepAliveOptions
}
KeepAliveOptions provide a set of client-side keepAlive options.
func NewKeepAliveOptions ¶
func NewKeepAliveOptions() KeepAliveOptions
NewKeepAliveOptions provide a set of keepAlive options.
type Options ¶
type Options interface {
Env() string
SetEnv(e string) Options
Zone() string
SetZone(z string) Options
Service() string
SetService(id string) Options
CacheDir() string
SetCacheDir(dir string) Options
ServicesOptions() services.Options
SetServicesOptions(opts services.Options) Options
Clusters() []Cluster
SetClusters(clusters []Cluster) Options
ClusterForZone(z string) (Cluster, bool)
InstrumentOptions() instrument.Options
SetInstrumentOptions(iopts instrument.Options) Options
RetryOptions() retry.Options
SetRetryOptions(retryOpts retry.Options) Options
WatchWithRevision() int64
SetWatchWithRevision(rev int64) Options
Validate() error
}
Options is the Options to create a config service client.
type TLSConfig ¶
type TLSConfig struct {
CrtPath string `yaml:"crtPath"`
CACrtPath string `yaml:"caCrtPath"`
KeyPath string `yaml:"keyPath"`
}
TLSConfig is the config for TLS.
type TLSOptions ¶
type TLSOptions interface {
CrtPath() string
SetCrtPath(string) TLSOptions
KeyPath() string
SetKeyPath(string) TLSOptions
CACrtPath() string
SetCACrtPath(string) TLSOptions
Config() (*tls.Config, error)
}
TLSOptions defines the options for TLS.
Click to show internal directories.
Click to hide internal directories.