Back to godoc.org
github.com/kumahq/kuma / pkg / config / multicluster

Package multicluster

v0.0.0-...-3a28be1
Latest Go to latest

The latest major version is .

Published: Oct 12, 2020 | License: Apache-2.0 | Module: github.com/kumahq/kuma

Index

type GlobalConfig

type GlobalConfig struct {
	PollTimeout time.Duration `yaml:"pollTimeout,omitempty" envconfig:"kuma_multicluster_global_poll_timeout"`
	// KDS Configuration
	KDS *KdsServerConfig `yaml:"kds,omitempty"`
}

Global configuration

func DefaultGlobalConfig

func DefaultGlobalConfig() *GlobalConfig

func (*GlobalConfig) Sanitize

func (g *GlobalConfig) Sanitize()

func (*GlobalConfig) Validate

func (g *GlobalConfig) Validate() error

type KdsClientConfig

type KdsClientConfig struct {
	// Interval for refreshing state of the world
	RefreshInterval time.Duration `yaml:"refreshInterval" envconfig:"kuma_multicluster_remote_kds_refresh_interval"`
	// RootCAFile defines a path to a file with PEM-encoded Root CA. Client will verify server by using it.
	RootCAFile string `yaml:"rootCaFile" envconfig:"kuma_multicluster_remote_kds_root_ca_file"`
}

func (KdsClientConfig) Sanitize

func (k KdsClientConfig) Sanitize()

func (KdsClientConfig) Validate

func (k KdsClientConfig) Validate() error

type KdsServerConfig

type KdsServerConfig struct {
	// Port of a gRPC server that serves Kuma Discovery Service (KDS).
	GrpcPort uint32 `yaml:"grpcPort" envconfig:"kuma_multicluster_global_kds_grpc_port"`
	// Interval for refreshing state of the world
	RefreshInterval time.Duration `yaml:"refreshInterval" envconfig:"kuma_multicluster_global_kds_refresh_interval"`
	// TlsCertFile defines a path to a file with PEM-encoded TLS cert.
	TlsCertFile string `yaml:"tlsCertFile" envconfig:"kuma_multicluster_global_kds_tls_cert_file"`
	// TlsKeyFile defines a path to a file with PEM-encoded TLS key.
	TlsKeyFile string `yaml:"tlsKeyFile" envconfig:"kuma_multicluster_global_kds_tls_key_file"`
}

func (*KdsServerConfig) Sanitize

func (c *KdsServerConfig) Sanitize()

func (*KdsServerConfig) Validate

func (c *KdsServerConfig) Validate() (errs error)

type MulticlusterConfig

type MulticlusterConfig struct {
	Global *GlobalConfig `yaml:"global,omitempty"`
	Remote *RemoteConfig `yaml:"remote,omitempty"`
}

Multicluster configuration

func DefaultMulticlusterConfig

func DefaultMulticlusterConfig() *MulticlusterConfig

func (*MulticlusterConfig) Sanitize

func (m *MulticlusterConfig) Sanitize()

func (*MulticlusterConfig) Validate

func (m *MulticlusterConfig) Validate() error

type RemoteConfig

type RemoteConfig struct {
	// Kuma Zone name used to mark the remote dataplane resources
	Zone string `yaml:"zone,omitempty" envconfig:"kuma_multicluster_remote_zone"`
	// GlobalAddress URL of Global Kuma CP
	GlobalAddress string `yaml:"globalAddress,omitempty" envconfig:"kuma_multicluster_remote_global_address"`
	// KDS Configuration
	KDS *KdsClientConfig `yaml:"kds,omitempty"`
}

Remote configuration

func DefaultRemoteConfig

func DefaultRemoteConfig() *RemoteConfig

func (*RemoteConfig) Sanitize

func (r *RemoteConfig) Sanitize()

func (*RemoteConfig) Validate

func (r *RemoteConfig) Validate() error

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier