configuration

package
v1.5.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2023 License: MIT Imports: 8 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
	CNIConflistScenario                  string
	EnableCNIConflistGeneration          bool
	CNIConflistFilepath                  string
	PopulateHomeAzCacheRetryIntervalSecs int
}

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