Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ApiServer

type ApiServer struct {
	// Address defines the address of Control Plane API server.
	URL string `yaml:"url,omitempty" envconfig:"kuma_control_plane_api_server_url"`
	// Retry settings for API Server
	Retry CpRetry `yaml:"retry,omitempty"`
}

func (*ApiServer) Sanitize

func (d *ApiServer) Sanitize()

func (*ApiServer) Validate

func (d *ApiServer) Validate() (errs error)

type Config

type Config struct {
	// ControlPlane defines coordinates of the Kuma Control Plane.
	ControlPlane ControlPlane `yaml:"controlPlane,omitempty"`
	// Dataplane defines bootstrap configuration of the dataplane (Envoy).
	Dataplane Dataplane `yaml:"dataplane,omitempty"`
	// DataplaneRuntime defines the context in which dataplane (Envoy) runs.
	DataplaneRuntime DataplaneRuntime `yaml:"dataplaneRuntime,omitempty"`
}

    Config defines configuration of the Kuma Dataplane Manager.

    func DefaultConfig

    func DefaultConfig() Config

    func (*Config) Sanitize

    func (c *Config) Sanitize()

    func (*Config) Validate

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

    type ControlPlane

    type ControlPlane struct {
    	// URL defines the address of Control Plane DP server.
    	URL string `yaml:"url,omitempty" envconfig:"kuma_control_plane_url"`
    	// Retry settings for Control Plane communication
    	Retry CpRetry `yaml:"retry,omitempty"`
    	// CaCert defines Certificate Authority that will be used to verify connection to the Control Plane. It takes precedence over CaCertFile.
    	CaCert string `yaml:"caCert" envconfig:"kuma_control_plane_ca_cert"`
    	// CaCertFile defines a file for Certificate Authority that will be used to verifiy connection to the Control Plane.
    	CaCertFile string `yaml:"caCertFile" envconfig:"kuma_control_plane_ca_cert_file"`
    }

      ControlPlane defines coordinates of the Control Plane.

      func (*ControlPlane) Sanitize

      func (c *ControlPlane) Sanitize()

      func (*ControlPlane) Validate

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

      type CpRetry

      type CpRetry struct {
      	// Duration to wait between retries
      	Backoff time.Duration `yaml:"backoff,omitempty" envconfig:"kuma_control_plane_retry_backoff"`
      	// Max duration for retries (this is not exact time for execution, the check is done between retries)
      	MaxDuration time.Duration `yaml:"maxDuration,omitempty" envconfig:"kuma_control_plane_retry_max_duration"`
      }

      func (*CpRetry) Sanitize

      func (a *CpRetry) Sanitize()

      func (*CpRetry) Validate

      func (a *CpRetry) Validate() error

      type Dataplane

      type Dataplane struct {
      	// Mesh name.
      	Mesh string `yaml:"mesh,omitempty" envconfig:"kuma_dataplane_mesh"`
      	// Dataplane name.
      	Name string `yaml:"name,omitempty" envconfig:"kuma_dataplane_name"`
      	// Port (or range of ports to choose from) for Envoy Admin API to listen on.
      	// Empty value indicates that Envoy Admin API should not be exposed over TCP.
      	// Format: "9901 | 9901-9999 | 9901- | -9901".
      	AdminPort config_types.PortRange `yaml:"adminPort,omitempty" envconfig:"kuma_dataplane_admin_port"`
      	// Drain time for listeners.
      	DrainTime time.Duration `yaml:"drainTime,omitempty" envconfig:"kuma_dataplane_drain_time"`
      	// BootstrapVersion defines bootstrap version (and API version) of xDS config.
      	// If empty, default version defined in Kuma CP will be used.
      	BootstrapVersion string `yaml:"bootstrapVersion" envconfig:"kuma_dataplane_bootstrap_version"`
      }

        Dataplane defines bootstrap configuration of the dataplane (Envoy).

        func (*Dataplane) Sanitize

        func (d *Dataplane) Sanitize()

        func (*Dataplane) Validate

        func (d *Dataplane) Validate() (errs error)

        func (*Dataplane) ValidateForTemplate

        func (d *Dataplane) ValidateForTemplate() (errs error)

        type DataplaneRuntime

        type DataplaneRuntime struct {
        	// Path to Envoy binary.
        	BinaryPath string `yaml:"binaryPath,omitempty" envconfig:"kuma_dataplane_runtime_binary_path"`
        	// Dir to store auto-generated Envoy bootstrap config in.
        	ConfigDir string `yaml:"configDir,omitempty" envconfig:"kuma_dataplane_runtime_config_dir"`
        	// Path to a file with dataplane token (use 'kumactl generate dataplane-token' to get one)
        	TokenPath string `yaml:"dataplaneTokenPath,omitempty" envconfig:"kuma_dataplane_runtime_token_path"`
        	// Token is dataplane token's value provided directly, will be stored to a temporary file before applying
        	Token string `yaml:"dataplaneToken,omitempty" envconfig:"kuma_dataplane_runtime_token"`
        	// Resource is a Dataplane resource that will be applied on Kuma CP
        	Resource string `yaml:"resource,omitempty" envconfig:"kuma_dataplane_runtime_resource"`
        	// ResourcePath is a path to Dataplane resource that will be applied on Kuma CP
        	ResourcePath string `yaml:"resourcePath,omitempty" envconfig:"kuma_dataplane_runtime_resource_path"`
        	// ResourceVars are the StringToString values that can fill the Resource template
        	ResourceVars map[string]string `yaml:"resourceVars,omitempty"`
        }

          DataplaneRuntime defines the context in which dataplane (Envoy) runs.

          func (*DataplaneRuntime) Sanitize

          func (d *DataplaneRuntime) Sanitize()

          func (*DataplaneRuntime) Validate

          func (d *DataplaneRuntime) Validate() (errs error)

          Source Files