v1alpha1

package
v1.29.0 Latest Latest
Warning

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

Go to latest
Published: Oct 12, 2023 License: Apache-2.0, MIT Imports: 6 Imported by: 1

Documentation

Overview

Package v1alpha1 contains the configuration of the Cilium Network Extension. +groupName=cilium.networking.extensions.gardener.cloud

Index

Constants

View Source
const GroupName = "cilium.networking.extensions.gardener.cloud"

GroupName is the group name use in this package

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Convert_cilium_BPFSocketLBHostnsOnly_To_v1alpha1_BPFSocketLBHostnsOnly added in v1.11.0

func Convert_cilium_BPFSocketLBHostnsOnly_To_v1alpha1_BPFSocketLBHostnsOnly(in *cilium.BPFSocketLBHostnsOnly, out *BPFSocketLBHostnsOnly, s conversion.Scope) error

Convert_cilium_BPFSocketLBHostnsOnly_To_v1alpha1_BPFSocketLBHostnsOnly is an autogenerated conversion function.

func Convert_cilium_CNI_To_v1alpha1_CNI added in v1.28.0

func Convert_cilium_CNI_To_v1alpha1_CNI(in *cilium.CNI, out *CNI, s conversion.Scope) error

Convert_cilium_CNI_To_v1alpha1_CNI is an autogenerated conversion function.

func Convert_cilium_EgressGateway_To_v1alpha1_EgressGateway added in v1.14.0

func Convert_cilium_EgressGateway_To_v1alpha1_EgressGateway(in *cilium.EgressGateway, out *EgressGateway, s conversion.Scope) error

Convert_cilium_EgressGateway_To_v1alpha1_EgressGateway is an autogenerated conversion function.

func Convert_cilium_Hubble_To_v1alpha1_Hubble

func Convert_cilium_Hubble_To_v1alpha1_Hubble(in *cilium.Hubble, out *Hubble, s conversion.Scope) error

Convert_cilium_Hubble_To_v1alpha1_Hubble is an autogenerated conversion function.

func Convert_cilium_IPv6_To_v1alpha1_IPv6 added in v1.6.0

func Convert_cilium_IPv6_To_v1alpha1_IPv6(in *cilium.IPv6, out *IPv6, s conversion.Scope) error

Convert_cilium_IPv6_To_v1alpha1_IPv6 is an autogenerated conversion function.

func Convert_cilium_KubeProxy_To_v1alpha1_KubeProxy

func Convert_cilium_KubeProxy_To_v1alpha1_KubeProxy(in *cilium.KubeProxy, out *KubeProxy, s conversion.Scope) error

Convert_cilium_KubeProxy_To_v1alpha1_KubeProxy is an autogenerated conversion function.

func Convert_cilium_NetworkConfig_To_v1alpha1_NetworkConfig

func Convert_cilium_NetworkConfig_To_v1alpha1_NetworkConfig(in *cilium.NetworkConfig, out *NetworkConfig, s conversion.Scope) error

Convert_cilium_NetworkConfig_To_v1alpha1_NetworkConfig is an autogenerated conversion function.

func Convert_cilium_Nodeport_To_v1alpha1_Nodeport

func Convert_cilium_Nodeport_To_v1alpha1_Nodeport(in *cilium.Nodeport, out *Nodeport, s conversion.Scope) error

Convert_cilium_Nodeport_To_v1alpha1_Nodeport is an autogenerated conversion function.

func Convert_cilium_Overlay_To_v1alpha1_Overlay added in v1.18.0

func Convert_cilium_Overlay_To_v1alpha1_Overlay(in *cilium.Overlay, out *Overlay, s conversion.Scope) error

Convert_cilium_Overlay_To_v1alpha1_Overlay is an autogenerated conversion function.

func Convert_cilium_SnatOutOfCluster_To_v1alpha1_SnatOutOfCluster added in v1.22.0

func Convert_cilium_SnatOutOfCluster_To_v1alpha1_SnatOutOfCluster(in *cilium.SnatOutOfCluster, out *SnatOutOfCluster, s conversion.Scope) error

Convert_cilium_SnatOutOfCluster_To_v1alpha1_SnatOutOfCluster is an autogenerated conversion function.

func Convert_cilium_SnatToUpstreamDNS_To_v1alpha1_SnatToUpstreamDNS added in v1.20.0

func Convert_cilium_SnatToUpstreamDNS_To_v1alpha1_SnatToUpstreamDNS(in *cilium.SnatToUpstreamDNS, out *SnatToUpstreamDNS, s conversion.Scope) error

Convert_cilium_SnatToUpstreamDNS_To_v1alpha1_SnatToUpstreamDNS is an autogenerated conversion function.

func Convert_v1alpha1_BPFSocketLBHostnsOnly_To_cilium_BPFSocketLBHostnsOnly added in v1.11.0

func Convert_v1alpha1_BPFSocketLBHostnsOnly_To_cilium_BPFSocketLBHostnsOnly(in *BPFSocketLBHostnsOnly, out *cilium.BPFSocketLBHostnsOnly, s conversion.Scope) error

Convert_v1alpha1_BPFSocketLBHostnsOnly_To_cilium_BPFSocketLBHostnsOnly is an autogenerated conversion function.

func Convert_v1alpha1_CNI_To_cilium_CNI added in v1.28.0

func Convert_v1alpha1_CNI_To_cilium_CNI(in *CNI, out *cilium.CNI, s conversion.Scope) error

Convert_v1alpha1_CNI_To_cilium_CNI is an autogenerated conversion function.

func Convert_v1alpha1_EgressGateway_To_cilium_EgressGateway added in v1.14.0

func Convert_v1alpha1_EgressGateway_To_cilium_EgressGateway(in *EgressGateway, out *cilium.EgressGateway, s conversion.Scope) error

Convert_v1alpha1_EgressGateway_To_cilium_EgressGateway is an autogenerated conversion function.

func Convert_v1alpha1_Hubble_To_cilium_Hubble

func Convert_v1alpha1_Hubble_To_cilium_Hubble(in *Hubble, out *cilium.Hubble, s conversion.Scope) error

Convert_v1alpha1_Hubble_To_cilium_Hubble is an autogenerated conversion function.

func Convert_v1alpha1_IPv6_To_cilium_IPv6 added in v1.6.0

func Convert_v1alpha1_IPv6_To_cilium_IPv6(in *IPv6, out *cilium.IPv6, s conversion.Scope) error

Convert_v1alpha1_IPv6_To_cilium_IPv6 is an autogenerated conversion function.

func Convert_v1alpha1_KubeProxy_To_cilium_KubeProxy

func Convert_v1alpha1_KubeProxy_To_cilium_KubeProxy(in *KubeProxy, out *cilium.KubeProxy, s conversion.Scope) error

Convert_v1alpha1_KubeProxy_To_cilium_KubeProxy is an autogenerated conversion function.

func Convert_v1alpha1_NetworkConfig_To_cilium_NetworkConfig

func Convert_v1alpha1_NetworkConfig_To_cilium_NetworkConfig(in *NetworkConfig, out *cilium.NetworkConfig, s conversion.Scope) error

Convert_v1alpha1_NetworkConfig_To_cilium_NetworkConfig is an autogenerated conversion function.

func Convert_v1alpha1_Nodeport_To_cilium_Nodeport

func Convert_v1alpha1_Nodeport_To_cilium_Nodeport(in *Nodeport, out *cilium.Nodeport, s conversion.Scope) error

Convert_v1alpha1_Nodeport_To_cilium_Nodeport is an autogenerated conversion function.

func Convert_v1alpha1_Overlay_To_cilium_Overlay added in v1.18.0

func Convert_v1alpha1_Overlay_To_cilium_Overlay(in *Overlay, out *cilium.Overlay, s conversion.Scope) error

Convert_v1alpha1_Overlay_To_cilium_Overlay is an autogenerated conversion function.

func Convert_v1alpha1_SnatOutOfCluster_To_cilium_SnatOutOfCluster added in v1.22.0

func Convert_v1alpha1_SnatOutOfCluster_To_cilium_SnatOutOfCluster(in *SnatOutOfCluster, out *cilium.SnatOutOfCluster, s conversion.Scope) error

Convert_v1alpha1_SnatOutOfCluster_To_cilium_SnatOutOfCluster is an autogenerated conversion function.

func Convert_v1alpha1_SnatToUpstreamDNS_To_cilium_SnatToUpstreamDNS added in v1.20.0

func Convert_v1alpha1_SnatToUpstreamDNS_To_cilium_SnatToUpstreamDNS(in *SnatToUpstreamDNS, out *cilium.SnatToUpstreamDNS, s conversion.Scope) error

Convert_v1alpha1_SnatToUpstreamDNS_To_cilium_SnatToUpstreamDNS is an autogenerated conversion function.

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func RegisterConversions

func RegisterConversions(s *runtime.Scheme) error

RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type BPFSocketLBHostnsOnly added in v1.11.0

type BPFSocketLBHostnsOnly struct {
	Enabled bool `json:"enabled"`
}

BPFSocketLBHostnsOnly enablement for cilium

func (*BPFSocketLBHostnsOnly) DeepCopy added in v1.11.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BPFSocketLBHostnsOnly.

func (*BPFSocketLBHostnsOnly) DeepCopyInto added in v1.11.0

func (in *BPFSocketLBHostnsOnly) DeepCopyInto(out *BPFSocketLBHostnsOnly)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CNI added in v1.28.0

type CNI struct {
	// false indicates that cilium will not overwrite its CNI configuration.
	Exclusive bool `json:"exclusive"`
}

CNI configuration for cilium

func (*CNI) DeepCopy added in v1.28.0

func (in *CNI) DeepCopy() *CNI

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNI.

func (*CNI) DeepCopyInto added in v1.28.0

func (in *CNI) DeepCopyInto(out *CNI)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EgressGateway added in v1.14.0

type EgressGateway struct {
	Enabled bool `json:"enabled"`
}

EgressGateway enablement for cilium

func (*EgressGateway) DeepCopy added in v1.14.0

func (in *EgressGateway) DeepCopy() *EgressGateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressGateway.

func (*EgressGateway) DeepCopyInto added in v1.14.0

func (in *EgressGateway) DeepCopyInto(out *EgressGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Hubble

type Hubble struct {
	// Enabled indicates whether hubble is enabled or not.
	Enabled bool `json:"enabled"`
}

Hubble enablement for cilium

func (*Hubble) DeepCopy

func (in *Hubble) DeepCopy() *Hubble

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hubble.

func (*Hubble) DeepCopyInto

func (in *Hubble) DeepCopyInto(out *Hubble)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IPv6 added in v1.6.0

type IPv6 struct {
	// Enabled indicates whether IPv6 is enabled or not.
	Enabled bool `json:"enabled"`
}

IPv6 enablement for cilium

func (*IPv6) DeepCopy added in v1.6.0

func (in *IPv6) DeepCopy() *IPv6

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPv6.

func (*IPv6) DeepCopyInto added in v1.6.0

func (in *IPv6) DeepCopyInto(out *IPv6)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IdentityAllocationMode

type IdentityAllocationMode string

IdentityAllocationMode selects how identities are shared between cilium nodes by setting how they are stored. The options are "crd" or "kvstore".

const (
	// CRD defines the crd IdentityAllocationMode type.
	CRD IdentityAllocationMode = "crd"
	// KVStore defines the kvstore IdentityAllocationMode type.
	KVStore IdentityAllocationMode = "kvstore"
)

type KubeProxy

type KubeProxy struct {
	// ServiceHost specify the controlplane node IP Address.
	// +optional
	ServiceHost *string `json:"k8sServiceHost,omitempty"`
	// ServicePort specify the kube-apiserver port number.
	// +optional
	ServicePort *int32 `json:"k8sServicePort,omitempty"`
}

KubeProxy configuration for cilium

func (*KubeProxy) DeepCopy

func (in *KubeProxy) DeepCopy() *KubeProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeProxy.

func (*KubeProxy) DeepCopyInto

func (in *KubeProxy) DeepCopyInto(out *KubeProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubeProxyReplacementMode

type KubeProxyReplacementMode string

KubeProxyReplacementMode defines which mode should kube-proxy run in. More infromation here: https://docs.cilium.io/en/v1.7/gettingstarted/kubeproxy-free/

const (
	// Strict defines the strict kube-proxy replacement mode
	Strict KubeProxyReplacementMode = "strict"
	// Probe defines the probe kube-proxy replacement mode
	Probe KubeProxyReplacementMode = "probe"
	// Partial defines the partial kube-proxy replacement mode
	Partial KubeProxyReplacementMode = "partial"
	// Disabled defines the disabled kube-proxy replacement mode
	KubeProxyReplacementDisabled KubeProxyReplacementMode = "disabled"
	// KubeProxyReplacementTrue defines the true kube-proxy replacement mode
	KubeProxyReplacementTrue KubeProxyReplacementMode = "true"
	// KubeProxyReplacementFalse defines the false kube-proxy replacement mode
	KubeProxyReplacementFalse KubeProxyReplacementMode = "false"
)

type LoadBalancingMode added in v1.18.0

type LoadBalancingMode string

LoadBalancingMode defines what load balancing mode to use for Cilium.

const (
	// SNAT defines the snat load balancing mode
	SNAT LoadBalancingMode = "snat"
	// DSR defines the dsr load balancing mode
	DSR LoadBalancingMode = "dsr"
	// Hybrid defines the hybrid load balancing mode
	Hybrid LoadBalancingMode = "hybrid"
)

type NetworkConfig

type NetworkConfig struct {
	metav1.TypeMeta `json:",inline"`
	// Debug configuration to be enabled or not
	// +optional
	Debug *bool `json:"debug,omitempty"`
	// PSPEnabled configuration
	// +optional
	PSPEnabled *bool `json:"psp,omitempty"`
	// KubeProxy configuration to be enabled or not
	// +optional
	KubeProxy *KubeProxy `json:"kubeproxy,omitempty"`
	// Hubble configuration to be enabled or not
	// +optional
	Hubble *Hubble `json:"hubble,omitempty"`
	// TunnelMode configuration, it should be 'vxlan', 'geneve' or 'disabled'
	// +optional
	TunnelMode *TunnelMode `json:"tunnel,omitempty"`
	// Store can be either Kubernetes or etcd.
	// +optional
	Store *Store `json:"store,omitempty"`
	// Enable IPv6
	// +optional
	IPv6 *IPv6 `json:"ipv6,omitempty"`
	// BPFSocketLBHostnsOnly flag to be enabled or not
	// +optional
	BPFSocketLBHostnsOnly *BPFSocketLBHostnsOnly `json:"bpfSocketLBHostnsOnly,omitempty"`
	// CNI configuration for cilium
	// +optional
	CNI *CNI `json:"cni,omitempty"`
	// EgressGateway enablement for cilium
	// +optional
	EgressGateway *EgressGateway `json:"egressGateway,omitempty"`
	// MTU overwrites the auto-detected MTU of the underlying network
	// +optional
	MTU *int `json:"mtu,omitempty"`
	// Devices is the list of devices facing cluster/external network
	// +optional
	Devices []string `json:"devices,omitempty"`
	// LoadBalancingMode configuration, it should be 'snat', 'dsr' or 'hybrid'
	// +optional
	LoadBalancingMode *LoadBalancingMode `json:"loadBalancingMode,omitempty"`
	// IPv4NativeRoutingCIDRMode will set the ipv4 native routing cidr from the network configs node's cidr if enabled.
	// +optional
	IPv4NativeRoutingCIDREnabled *bool `json:"ipv4NativeRoutingCIDREnabled,omitempty"`
	// Overlay enables the network overlay
	// +optional
	Overlay *Overlay `json:"overlay,omitempty"`
	// SnatToUpstreamDNS enables the masquerading of packets to the upstream dns server
	// +optional
	SnatToUpstreamDNS *SnatToUpstreamDNS `json:"snatToUpstreamDNS,omitempty"`
	// SnatOutOfCluster enables the masquerading of packets outside of the cluster
	// +optional
	SnatOutOfCluster *SnatOutOfCluster `json:"snatOutOfCluster,omitempty"`
}

NetworkConfig is a struct representing the configmap for the cilium networking plugin

func (*NetworkConfig) DeepCopy

func (in *NetworkConfig) DeepCopy() *NetworkConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkConfig.

func (*NetworkConfig) DeepCopyInto

func (in *NetworkConfig) DeepCopyInto(out *NetworkConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkConfig) DeepCopyObject

func (in *NetworkConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodePortMode

type NodePortMode string

NodePortMode defines how NodePort services are enabled.

const (
	// Hybrid defines the hybrid nodeport mode.
	Hybird NodePortMode = "hybrid"
)

type Nodeport

type Nodeport struct {
	// Enabled is used to define whether Nodeport is required or not.
	Enabled bool `json:"nodePortEnabled"`
	// Mode is the mode of NodePort feature
	Mode NodePortMode `json:"nodePortMode"`
}

Nodeport enablement for cilium

func (*Nodeport) DeepCopy

func (in *Nodeport) DeepCopy() *Nodeport

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nodeport.

func (*Nodeport) DeepCopyInto

func (in *Nodeport) DeepCopyInto(out *Nodeport)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Overlay added in v1.18.0

type Overlay struct {
	// Enabled enables the network overlay.
	Enabled bool `json:"enabled"`
	// CreatePodRoutes installs routes to pods on all cluster nodes.
	// This will only work if the cluster nodes share a single L2 network.
	// +optional
	CreatePodRoutes *bool `json:"createPodRoutes,omitempty"`
}

Overlay configuration for cilium

func (*Overlay) DeepCopy added in v1.18.0

func (in *Overlay) DeepCopy() *Overlay

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overlay.

func (*Overlay) DeepCopyInto added in v1.18.0

func (in *Overlay) DeepCopyInto(out *Overlay)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnatOutOfCluster added in v1.22.0

type SnatOutOfCluster struct {
	Enabled bool `json:"enabled"`
}

SnatOutOfCluster enables the masquerading of packets outside of the cluster

func (*SnatOutOfCluster) DeepCopy added in v1.22.0

func (in *SnatOutOfCluster) DeepCopy() *SnatOutOfCluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnatOutOfCluster.

func (*SnatOutOfCluster) DeepCopyInto added in v1.22.0

func (in *SnatOutOfCluster) DeepCopyInto(out *SnatOutOfCluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnatToUpstreamDNS added in v1.20.0

type SnatToUpstreamDNS struct {
	Enabled bool `json:"enabled"`
}

SnatToUpstreamDNS enables the masquerading of packets to the upstream dns server

func (*SnatToUpstreamDNS) DeepCopy added in v1.20.0

func (in *SnatToUpstreamDNS) DeepCopy() *SnatToUpstreamDNS

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnatToUpstreamDNS.

func (*SnatToUpstreamDNS) DeepCopyInto added in v1.20.0

func (in *SnatToUpstreamDNS) DeepCopyInto(out *SnatToUpstreamDNS)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Store

type Store string

Store defines the kubernetes storage backend

const (
	// Kubernetes defines the kubernetes CRD store type
	Kubernetes Store = "kubernetes"
)

type TunnelMode

type TunnelMode string

TunnelMode defines what tunnel mode to use for Cilium.

const (
	// VXLan defines the vxlan tunnel mode
	VXLan TunnelMode = "vxlan"
	// Geneve defines the geneve tunnel mode.
	Geneve TunnelMode = "geneve"
	// Disabled defines the disabled tunnel mode.
	Disabled TunnelMode = "disabled"
)

Jump to

Keyboard shortcuts

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