# Packages
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Package types contains slimmer versions of k8s types.
No description provided by the author
Package version keeps track of the Kubernetes version the client is connected to.
# Functions
CiliumClient returns the default Cilium Kubernetes client.
Client returns the default Kubernetes client.
Configure sets the parameters of the Kubernetes package.
ConvertToCiliumEndpoint converts a *cilium_v2.CiliumEndpoint into a *types.CiliumEndpoint or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.CiliumEndpoint in its Obj.
ConvertToCiliumNode converts a *cilium_v2.CiliumNode into a *cilium_v2.CiliumNode or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *cilium_v2.CiliumNode in its Obj.
ConvertToCNP converts a *cilium_v2.CiliumNetworkPolicy into a *types.SlimCNP without the Status field of the given CNP, or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.SlimCNP, also without the Status field of the given CNP, in its Obj.
ConvertToCNPWithStatus converts a *cilium_v2.CiliumNetworkPolicy into a *types.SlimCNP or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.SlimCNP in its Obj.
ConvertToIngress converts a *v1beta1.Ingress into a *types.Ingress or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Ingress in its Obj.
ConvertToK8sEndpoints converts a *v1.Endpoints into a *types.Endpoints or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Endpoints in its Obj.
ConvertToK8sService converts a *v1.Service into a *types.Service or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Service in its Obj.
ConvertToNamespace converts a *v1.Namespace into a *types.Namespace or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Namespace in its Obj.
ConvertToNetworkPolicy converts a *networkingv1.NetworkPolicy into a *types.NetworkPolicy or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.NetworkPolicy in its Obj.
ConvertToNode converts a *v1.Node into a *types.Node or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Node in its Obj.
ConvertToPod converts a *v1.Pod into a *types.Pod or a cache.DeletedFinalStateUnknown into a cache.DeletedFinalStateUnknown with a *types.Pod in its Obj.
CopyObjToCiliumEndpoint attempts to cast object to a CiliumEndpoint object and returns a deep copy if the castin succeeds.
CopyObjToCiliumNode attempts to cast object to a CiliumNode object and returns a deep copy if the castin succeeds.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
CreateClient creates a new client to access the Kubernetes API.
CreateConfig creates a client configuration based on the configured API server and Kubeconfig path.
CreateConfigFromAgentResponse creates a client configuration from a models.DaemonConfigurationResponse.
CreateCustomDialer returns a custom dialer that picks a random backend IP, from the given BackendIPGetter, if the address the used to dial is a k8s service.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetAPIServer returns the configured API server address.
GetBurst gets the burst limit of the K8s configuration.
GetKubeconfigPath returns the configured path to the kubeconfig configuration file.
GetNode returns the kubernetes nodeName's node information from the kubernetes api server.
GetPodLabels returns the labels of a pod.
GetPolicyLabelsv1 extracts the name of np.
GetQPS gets the QPS of the K8s configuration.
Init initializes the Kubernetes package.
IsEnabled checks if Cilium is being used in tandem with Kubernetes.
IsErrParse returns true if the error is a ErrParse.
K8sErrorHandler handles the error messages in a non verbose way by omitting repeated instances of the same error message for a timeout defined with k8sErrLogTimeout.
NewClusterService returns the service.ClusterService representing a Kubernetes Service.
NewK8sTranslator returns RuleTranslator.
NewService returns a new Service with the Ports map initialized.
NewServiceCache returns a new ServiceCache.
ParseEndpoints parses a Kubernetes Endpoints resource.
ParseEndpointsID parses a Kubernetes endpoints and returns the ServiceID.
ParseIngress parses an ingress resources and returns the Service definition.
ParseIngressID parses the service ID from the ingress resource.
ParseNetworkPolicy parses a k8s NetworkPolicy.
ParseNode parses a kubernetes node to a cilium node.
ParseNodeAddressType converts a Kubernetes NodeAddressType to a Cilium NodeAddressType.
ParseService parses a Kubernetes service and returns a Service.
ParseServiceID parses a Kubernetes service and returns the ServiceID.
ParseServiceIDFrom returns a ServiceID derived from the given kubernetes service FQDN.
PreprocessRules translates rules that apply to headless services.
RegisterCRDs registers all CRDs.
SetNodeNetworkUnavailableFalse sets Kubernetes NodeNetworkUnavailable to false as Cilium is managing the network connectivity.
# Constants
AnnotationIstioSidecarStatus is the annotation added by Istio into a pod when it is injected with a sidecar proxy.
BackOffLoopTimeout is the default duration when trying to reach the kube-apiserver.
DefaultSidecarIstioProxyImageRegexp is the default regexp compiled into SidecarIstioProxyImageRegexp.
DeleteIngress reflects that the ingress was deleted.
DeleteService reflects that the service was deleted.
EnvNodeNameSpec is the environment label used by Kubernetes to specify the node's name.
maximum number of operations a single json patch may contain.
UpdateIngress reflects that the ingress was updated or added.
UpdateService reflects that the service was updated or added.
# Variables
ErrNilNode is returned when the Kubernetes API server has returned a nil node.
SidecarIstioProxyImageRegexp is the regular expression matching compatible Istio sidecar istio-proxy container image names.
# Structs
CNPStatusUpdateContext is the context required to update the status of a CNP.
Endpoints is an abstraction for the Kubernetes endpoints object.
ErrParse is an error to describe where policy fails to parse due any invalid rule.
JSONPatch structure based on the RFC 6902.
K8sCiliumClient is a wrapper around clientset.Interface.
K8sClient is a wrapper around kubernetes.Interface.
RuleTranslator implements pkg/policy.Translator interface Translate populates/depopulates given rule with ToCIDR rules Based on provided service/endpoint.
Service is an abstraction for a k8s service that is composed by the frontend IP address (FEIP) and the map of the frontend ports (Ports).
ServiceCache is a list of services and ingresses correlated with the matching endpoints.
ServiceEvent is emitted via the Events channel of ServiceCache and describes the change that occurred in the cache.
ServiceID identities the Kubernetes service.
# Interfaces
No description provided by the author
# Type aliases
CacheAction is the type of action that was performed on the cache.
FrontendList is the list of all k8s service frontends.