Documentation ¶
Overview ¶
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
GetWindowsNodes returns Windows nodes, optionally filtering the list of nodes with the given filter functions.
Index ¶
- Constants
- Variables
- func GetExpectedTyphaScale(nodes int) int
- func GetNodeVariantAndVersion(n *corev1.Node) (bool, operatorv1.ProductVariant, string)
- func MapExistsOrInitialize(m map[string]string) map[string]string
- func MergeMaps(current, desired map[string]string) map[string]string
- func OperatorNamespace() string
- func OperatorServiceAccount() string
- type VersionInfo
Constants ¶
const ( CalicoNamespace = "calico-system" TyphaDeploymentName = "calico-typha" NodeDaemonSetName = "calico-node" KubeControllersDeploymentName = "calico-kube-controllers" // Monitor + Prometheus related const TigeraPrometheusNamespace = "tigera-prometheus" // ComplianceFeature name ComplianceFeature = "compliance-reports" // ThreatDefenseFeature feature name ThreatDefenseFeature = "threat-defense" // ExportLogsFeature to 3rd party systems feature name ExportLogsFeature = "export-logs" // TiersFeature enables creation/update of Tiers TiersFeature = "tiers" // EgressAccessControl enables creation/update of NetworkPolicy with Domains EgressAccessControlFeature = "egress-access-control" )
const ( CalicoWindowsUpgradeResourceName = "calico-windows-upgrade" CalicoWindowsUpgradeVolumePath = `c:\CalicoUpgrade` CalicoWindowsUpgradeLabel = "projectcalico.org/windows-upgrade" CalicoWindowsUpgradeLabelInProgress = "in-progress" CalicoVersionAnnotation = "projectcalico.org/version" CalicoVariantAnnotation = "projectcalico.org/variant" CalicoWindowsUpgradeTaintKey = "projectcalico.org/windows-upgrade" )
Variables ¶
var ( // This taint is applied to nodes upgrading Calico Windows. CalicoWindowsUpgradingTaint = &corev1.Taint{ Key: CalicoWindowsUpgradeTaintKey, Effect: corev1.TaintEffectNoSchedule, } )
Functions ¶
func GetExpectedTyphaScale ¶ added in v1.15.1
GetTyphaScaleCount will return the number of Typhas needed for the number of nodes.
Nodes Replicas
1-2 1 3-4 2 <200 3 >400 4 >600 5 >800 6
>1000 7
.....
>2000 12
.....
>3600 20
func GetNodeVariantAndVersion ¶ added in v1.23.0
func GetNodeVariantAndVersion(n *corev1.Node) (bool, operatorv1.ProductVariant, string)
GetNodeVariantAndVersion gets the node's variant and version annotation values and returns whether both annotations exist.
func MapExistsOrInitialize ¶ added in v1.27.17
MapExistsOrInitialize returns the given map if non-nil or returns an empty map.
func MergeMaps ¶ added in v1.27.17
MergeMaps merges current and desired maps. If both current and desired maps contain the same key, the desired map's value is used.
func OperatorNamespace ¶ added in v1.23.0
func OperatorNamespace() string
OperatorNamespace returns the namespace the operator is running in. The value returned is based on the following priority (these are evaluated at startup):
If the OPERATOR_NAMESPACE environment variable is non-empty then that is return. If the file /var/run/secrets/kubernetes.io/serviceaccount/namespace is non-empty then the contents is returned. The default "tigera-operator" is returned.
func OperatorServiceAccount ¶ added in v1.24.2
func OperatorServiceAccount() string
OperatorServiceAccount returns the ServiceAccount name the operator is running in. The value returned is based on the following priority (these are evaluated at startup):
If the OPERATOR_SERVICEACCOUNT environment variable is non-empty then that is return. If the file /var/run/secrets/kubernetes.io/serviceaccount/namespace is non-empty then the contents is returned. The default "tigera-operator" is returned.
Types ¶
type VersionInfo ¶ added in v1.18.0
VersionInfo contains information about the version of Kubernetes API the cluster is using Major and Minor fields map to the v<Major>.<Minor>+ part of the version string
func GetKubernetesVersion ¶ added in v1.18.0
func GetKubernetesVersion(clientset kubernetes.Interface) (*VersionInfo, error)
func (*VersionInfo) ProvidesCertV1API ¶ added in v1.18.0
func (v *VersionInfo) ProvidesCertV1API() bool
ProvidesCertV1API returns if k8s.io/api/certificates/v1 is supported given the current k8s version