forked from linode/linode-cloud-controller-manager
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvalues.yaml
More file actions
196 lines (158 loc) · 6.1 KB
/
values.yaml
File metadata and controls
196 lines (158 loc) · 6.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
# apiToken [Required if secretRef is not set] - Must be a Linode APIv4 Personal Access Token with all permissions. (https://cloud.linode.com/profile/tokens)
apiToken: ""
# region [Required if secretRef is not set] - Must be a Linode region. (https://api.linode.com/v4/regions)
region: ""
# Set these values if your APIToken and region are already present in a k8s secret.
# secretRef:
# name: "linode-ccm"
# apiTokenRef: "apiToken"
# regionRef: "region"
# Ensures the CCM runs on control plane nodes
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/control-plane
operator: Exists
# DEPRECATED: use affinity instead
nodeSelector: {}
securityContext:
seccompProfile:
type: RuntimeDefault
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
# Used to set KUBERNETES_SERVICE_HOST in environment variable if required.
k8sServiceHost: ""
# Used to set KUBERNETES_SERVICE_PORT in environment variable if required.
k8sServicePort: ""
# Image repository must be 'linode/linode-cloud-controller-manager'. The tag can be changed/set to various ccm versions.
# The pullPolicy is set to Always but can be changed when it is not required to always pull the new image
image:
repository: linode/linode-cloud-controller-manager
tag: # only set if required, defaults to .Chart.AppVersion set during release or "latest" by default
pullPolicy: Always
# Default namespace is "kube-system" but it can be set to another namespace
namespace: "kube-system"
# Set of default tolerations
tolerations:
# The CCM can run on Nodes tainted as masters
- key: "node-role.kubernetes.io/control-plane"
effect: "NoSchedule"
# The CCM is a "critical addon"
- key: "CriticalAddonsOnly"
operator: "Exists"
# This taint is set on all Nodes when an external CCM is used
- key: node.cloudprovider.kubernetes.io/uninitialized
value: "true"
effect: NoSchedule
- key: node.kubernetes.io/not-ready
operator: Exists
effect: NoSchedule
- key: node.kubernetes.io/unreachable
operator: Exists
effect: NoSchedule
# Options for LoadBalancers backed by shared IPs instead of NodeBalancers
# sharedIPLoadBalancing:
# loadBalancerType: cilium-bgp
# bgpNodeSelector: <node label (e.g. cilium-bgp-peering=true)>
# ipHolderSuffix: <cluster name or other identifier (e.g. myclustername1)>
# This section adds ability to enable route-controller for ccm
# routeController:
# vpcName: <name of VPC> [Deprecated: use vpcNames instead]
# vpcNames: <comma separated list of vpc names>
# subnetNames: <comma separated list of subnet names>
# clusterCIDR: 10.192.0.0/10
# configureCloudRoutes: true
# This section adds ability to enable nodeipam-controller for ccm
# enableNodeIPAM: false
# clusterCIDR: 10.192.0.0/10
# nodeCIDRMaskSizeIPv4: 24
# nodeCIDRMaskSizeIPv6: 64
# vpcs and subnets that node internal IPs will be assigned from (not required if already specified in routeController)
# vpcName: <name of VPC> [Deprecated: use vpcNames instead]
# vpcNames: <comma separated list of vpc names>
# subnetNames: <comma separated list of subnet names>
# Enable Linode token health checker
# tokenHealthChecker: true
# Default NodeBalancer type to create("common" or "premium"). Default is "common"
# defaultNBType: "common"
# Enable IPv6 ingress addresses for LoadBalancer services
# When enabled, both IPv4 and IPv6 addresses will be included in the LoadBalancer status for all services
# This can also be controlled per-service using the "service.beta.kubernetes.io/linode-loadbalancer-enable-ipv6-ingress" annotation
# enableIPv6ForLoadBalancers: true
# disableNodeBalancerVPCBackends is used to disable the use of VPC backends for NodeBalancers.
# When set to true, NodeBalancers will use linode private IPs for backends instead of VPC IPs.
# disableNodeBalancerVPCBackends: false
# nodeBalancerBackendIPv4Subnet is the subnet to use for the backend ips of the NodeBalancer
# nodeBalancerBackendIPv4Subnet: ""
# nodeBalancerBackendIPv4SubnetID is the subnet id to use for the backend ips of the NodeBalancer
# nodeBalancerBackendIPv4SubnetID: ""
# nodeBalancerBackendIPv4SubnetName is the subnet name to use for the backend ips of the NodeBalancer
# nodeBalancerBackendIPv4SubnetName: ""
# nodeBalancerPrefix is used to add prefix for nodeBalancer name. Default is "ccm"
# nodeBalancerPrefix: ""
# This section adds the ability to pass environment variables to adjust CCM defaults
# https://github.com/linode/linode-cloud-controller-manager/blob/master/cloud/linode/loadbalancers.go
# LINODE_HOSTNAME_ONLY_INGRESS type bool is supported
env:
# - name: EXAMPLE_ENV_VAR
# value: "true"
# Linode tags to apply to all NodeBalancers
nodeBalancerTags: []
# This section adds the ability to pass volumes to the CCM DaemonSet
volumes:
# - name: test-volume
# emptyDir:
# sizeLimit: 500Mi
# this section adds the ability to pass volumeMounts to the CCM container
volumeMounts:
# - mountPath: /tmp/
# name: test-volume
# Add podAnnotations and podLabels for customization
podAnnotations: {}
podLabels: {}
resources:
# requests:
# memory: "100Mi"
# cpu: "50m"
# limits:
# memory: "1000Mi"
# cpu: "1000m"
# This flag allows to scrape /metrics endpoint without authorization
# allowUnauthorizedMetrics: false
# enables host network
# enableHostNetwork: true
# specify the update strategy
# updateStrategy:
# type: RollingUpdate
# rollingUpdate:
# maxUnavailable: 25%
# log verbosity of the CCM
# logVerbosity: 3
# set the liveness and readiness probes
# livenessProbe:
# tcpSocket:
# port: 10253
# initialDelaySeconds: 15
# timeoutSeconds: 15
# failureThreshold: 8
# readinessProbe:
# tcpSocket:
# port: 10253
# initialDelaySeconds: 15
# timeoutSeconds: 15
# failureThreshold: 8
# set extra arguments to the CCM container.
# extraArgs:
# - --kubeconfig=/etc/kubernetes/value
# add toggle to rbac, useful when running CCM outside a cluster
# rbacEnabled: true
# template kubeconfig volume
# k8sVolume:
# - name: k8s
# hostPath:
# path: /etc/kubeconfig