configuration

package
v1.4.39 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 14, 2022 License: MIT Imports: 7 Imported by: 1

Documentation

Overview

Copyright Microsoft. All rights reserved.

Index

Constants

View Source
const (
	// EnvNodeName is the NODENAME env var string key.
	EnvNodeName = "NODENAME"
	// EnvNodeIP is the IP of the node running this CNS binary
	EnvNodeIP = "NODE_IP"
)
View Source
const (
	// EnvCNSConfig is the CNS_CONFIGURATION_PATH env var key
	EnvCNSConfig = "CNS_CONFIGURATION_PATH"
)

Variables

View Source
var ErrNodeNameUnset = errors.Errorf("must declare %s environment variable", EnvNodeName)

ErrNodeNameUnset indicates the the $EnvNodeName variable is unset in the environment.

Functions

func NodeIP

func NodeIP() string

NodeIP returns the value of the NODE_IP environment variable, or empty string if unset.

func NodeName

func NodeName() (string, error)

NodeName checks the environment variables for the NODENAME and returns it or an error if unset.

func SetCNSConfigDefaults

func SetCNSConfigDefaults(config *CNSConfig)

SetCNSConfigDefaults set default values of CNS config if not specified

Types

type CNSConfig

type CNSConfig struct {
	ChannelMode                 string
	EnablePprof                 bool
	EnableSubnetScarcity        bool
	InitializeFromCNI           bool
	ManagedSettings             ManagedSettings
	MetricsBindAddress          string
	SyncHostNCTimeoutMs         int
	SyncHostNCVersionIntervalMs int
	TLSCertificatePath          string
	TLSEndpoint                 string
	TLSPort                     string
	TLSSubjectName              string
	TelemetrySettings           TelemetrySettings
	UseHTTPS                    bool
	WireserverIP                string
	KeyVaultSettings            KeyVaultSettings
	MSISettings                 MSISettings
	ProgramSNATIPTables         bool
	ManageEndpointState         bool
}

func ReadConfig

func ReadConfig(cmdLineConfigPath string) (*CNSConfig, error)

ReadConfig returns a CNS config from file or an error.

type KeyVaultSettings

type KeyVaultSettings struct {
	URL                  string
	CertificateName      string
	RefreshIntervalInHrs int
}

type MSISettings

type MSISettings struct {
	ResourceID string
}

type ManagedSettings

type ManagedSettings struct {
	PrivateEndpoint           string
	InfrastructureNetworkID   string
	NodeID                    string
	NodeSyncIntervalInSeconds int
}

type TelemetrySettings

type TelemetrySettings struct {
	// Flag to disable the telemetry.
	DisableAll bool
	// Flag to Disable sending trace.
	DisableTrace bool
	// Flag to Disable sending metric.
	DisableMetric bool
	// Flag to Disable sending events.
	DisableEvent bool
	// Configure how many bytes can be sent in one call to the data collector
	TelemetryBatchSizeBytes int
	// Configure the maximum delay before sending queued telemetry in milliseconds
	TelemetryBatchIntervalInSecs int
	// Heartbeat interval for sending heartbeat metric
	HeartBeatIntervalInMins int
	// Enable thread for getting metadata from wireserver
	DisableMetadataRefreshThread bool
	// Refresh interval in milliseconds for metadata thread
	RefreshIntervalInSecs int
	// Disable debug logging for telemetry messages
	DebugMode bool
	// Interval for sending snapshot events.
	SnapshotIntervalInMins int
	// AppInsightsInstrumentationKey allows the user to override the default appinsights ikey
	AppInsightsInstrumentationKey string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL