Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientOverrides ¶ added in v0.14.1
type ClientOverrides struct { HostQueueFlushInterval *time.Duration `yaml:"hostQueueFlushInterval"` TargetHostQueueFlushSize *int `yaml:"targetHostQueueFlushSize"` }
ClientOverrides represents M3DB client overrides for a given cluster.
type Configuration ¶
type Configuration struct { // Services is used when a topology initializer is not supplied. Services DynamicConfiguration `yaml:"services"` // StaticConfiguration is used for running M3DB with static configs Statics StaticConfiguration `yaml:"statics"` // Presence of a (etcd) server in this config denotes an embedded cluster SeedNodes *SeedNodesConfig `yaml:"seedNodes"` }
Configuration is a configuration that can be used to create namespaces, a topology, and kv store
func (Configuration) Configure ¶
func (c Configuration) Configure(cfgParams ConfigurationParameters) (ConfigureResults, error)
Configure creates a new ConfigureResults
func (*Configuration) UnmarshalYAML ¶ added in v0.13.0
func (c *Configuration) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML normalizes the config into a list of services.
func (*Configuration) Validate ¶ added in v0.13.0
func (c *Configuration) Validate() error
Validate validates the configuration.
type ConfigurationParameters ¶
type ConfigurationParameters struct { InterruptedCh <-chan struct{} InstrumentOpts instrument.Options HashingSeed uint32 HostID string NewDirectoryMode os.FileMode ForceColdWritesEnabled bool // AllowEmptyInitialNamespaceRegistry determines whether to allow the initial // namespace update to be empty or to wait indefinitely until namespaces are received. // This is used when configuring the namespaceInitializer. AllowEmptyInitialNamespaceRegistry bool }
ConfigurationParameters are options used to create new ConfigureResults
type ConfigureResult ¶ added in v0.13.0
type ConfigureResult struct { NamespaceInitializer namespace.Initializer TopologyInitializer topology.Initializer ClusterClient clusterclient.Client KVStore kv.Store Async bool ClientOverrides ClientOverrides }
ConfigureResult stores initializers and kv store for dynamic and static configs
type ConfigureResults ¶
type ConfigureResults []ConfigureResult
ConfigureResults stores initializers and kv store for dynamic and static configs
func (ConfigureResults) SyncCluster ¶ added in v0.13.0
func (c ConfigureResults) SyncCluster() (ConfigureResult, error)
SyncCluster returns the synchronous cluster in the ConfigureResults
type DynamicCluster ¶ added in v0.13.0
type DynamicCluster struct { Async bool `yaml:"async"` ClientOverrides ClientOverrides `yaml:"clientOverrides"` Service *etcdclient.Configuration `yaml:"service"` }
DynamicCluster is a single cluster in a dynamic configuration
type DynamicConfiguration ¶ added in v0.13.0
type DynamicConfiguration []*DynamicCluster
DynamicConfiguration is used for running M3DB with a dynamic config
func (DynamicConfiguration) SyncCluster ¶ added in v0.13.0
func (c DynamicConfiguration) SyncCluster() (*DynamicCluster, error)
SyncCluster returns the synchronous cluster in the DynamicConfiguration
func (DynamicConfiguration) Validate ¶ added in v0.13.0
func (c DynamicConfiguration) Validate() error
Validate validates the DynamicConfiguration.
type SeedNode ¶
type SeedNode struct { HostID string `yaml:"hostID"` Endpoint string `yaml:"endpoint"` ClusterState string `yaml:"clusterState"` }
SeedNode represents a seed node for the cluster
type SeedNodeSecurityConfig ¶
type SeedNodeSecurityConfig struct { CAFile string `yaml:"caFile"` CertFile string `yaml:"certFile"` KeyFile string `yaml:"keyFile"` TrustedCAFile string `yaml:"trustedCaFile"` CertAuth bool `yaml:"clientCertAuth"` AutoTLS bool `yaml:"autoTls"` }
SeedNodeSecurityConfig contains the data used for security in seed nodes
type SeedNodesConfig ¶
type SeedNodesConfig struct { RootDir string `yaml:"rootDir"` InitialAdvertisePeerUrls []string `yaml:"initialAdvertisePeerUrls"` AdvertiseClientUrls []string `yaml:"advertiseClientUrls"` ListenPeerUrls []string `yaml:"listenPeerUrls"` ListenClientUrls []string `yaml:"listenClientUrls"` InitialCluster []SeedNode `yaml:"initialCluster"` ClientTransportSecurity SeedNodeSecurityConfig `yaml:"clientTransportSecurity"` PeerTransportSecurity SeedNodeSecurityConfig `yaml:"peerTransportSecurity"` }
SeedNodesConfig defines fields for seed node
type StaticCluster ¶ added in v0.13.0
type StaticCluster struct { Async bool `yaml:"async"` ClientOverrides ClientOverrides `yaml:"clientOverrides"` Namespaces []namespace.MetadataConfiguration `yaml:"namespaces"` TopologyConfig *topology.StaticConfiguration `yaml:"topology"` ListenAddress string `yaml:"listenAddress"` }
StaticCluster is a single cluster in a static configuration
type StaticConfiguration ¶
type StaticConfiguration []*StaticCluster
StaticConfiguration is used for running M3DB with a static config
func (StaticConfiguration) Validate ¶ added in v0.13.0
func (c StaticConfiguration) Validate() error
Validate validates the StaticConfiguration