k8sconfig

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BasicFirewallConfig

type BasicFirewallConfig struct {
	// HetznerPublic is used to describe firewall attached to public k8s api endpoint.
	HetznerPublic *HetnzerBasicFirewallConfig `json:"hetzner-public" yaml:"hetzner-public" mapstructure:"hetzner-public"`
}

type Config

type Config struct {
	KubeAPIEndpoint *K8SEndpointConfig    `json:"kube-api-endpoint" yaml:"kube-api-endpoint" mapstructure:"kube-api-endpoint"`
	AuditLog        *audit.AuditLogConfig `json:"audit-log" yaml:"audit-log" mapstructure:"audit-log"`
	Addons          *addons.Config
}

func (*Config) WithInited

func (k *Config) WithInited() *Config

type HetnzerBasicFirewallConfig

type HetnzerBasicFirewallConfig struct {
	// DisallowOwnIP is a security setting that, when enabled, prevents access to the server from deployer own public IP address.
	DisallowOwnIP bool `json:"disallow-own-ip" yaml:"disallow-own-ip" mapstructure:"disallow-own-ip"`

	// AllowedIps specifies a list of IP addresses that are permitted to access the k8s api endpoint.
	// Only traffic from these IPs will be allowed if this list is configured.
	// Default is 0.0.0.0/0 (all ipv4 addresses).
	AllowedIps []string `json:"allowed-ips" yaml:"allowed-ips" mapstructure:"allowed-ips"`
}

type K8SEndpointConfig

type K8SEndpointConfig struct {
	// Type of k8s endpoint: public or private.
	// Default is public.
	Type string
	// Firewall defines configuration for the firewall attached to api access.
	// This is used only for public type since private network considered to be secure.
	Firewall *BasicFirewallConfig
}

type NodeConfig

type NodeConfig struct {
	// NodeLabels are used to label the node with key=value.
	NodeLabels []string `json:"node-label" yaml:"node-label,omitempty" mapstructure:"node-label"`
	// NodeTaints configures taint node manager.
	NodeTaints *TaintConfig `json:"node-taint" yaml:"node-taint,omitempty" mapstructure:"node-taint"`
}

type TaintConfig added in v0.0.12

type TaintConfig struct {
	// Enable or disable taint management.
	// Default is false.
	Enabled *bool
	// Do not add default taints to the server node.
	// Default is false.
	DisableDefaultsTaints *bool `json:"disable-default-taints" yaml:"disable-default-taints,omitempty" mapstructure:"disable-default-taints"`
	// Taints are used to taint the node with key=value:effect.
	// Default is server node is tainted with a couple of taints if number of agents nodes more than 0.
	// But only if disable-default-taints set to false.
	Taints []string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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