mirror of https://github.com/kubernetes/kops.git
Merge pull request #13649 from hakman/calico_missing_pieces
Use Calico v3.21 with older versions of k8s
This commit is contained in:
commit
cccfc0e954
|
@ -54,7 +54,7 @@ spec:
|
|||
version: 9.99.0
|
||||
- id: k8s-1.16
|
||||
manifest: networking.projectcalico.org/k8s-1.16.yaml
|
||||
manifestHash: 448e1916db595e967a1d0ca030927b0c0b79d5153afc3776874227847c428d0f
|
||||
manifestHash: d58f4bf07be4093602410eeffd47a37125a74dfb2afd654a6d154c5017010e7a
|
||||
name: networking.projectcalico.org
|
||||
selector:
|
||||
role.kubernetes.io/networking: "1"
|
||||
|
|
|
@ -17,7 +17,7 @@ data:
|
|||
"assign_ipv4": "false",
|
||||
"assign_ipv6": "true",
|
||||
"type": "host-local",
|
||||
"ranges": [[{ "subnet": "usePodCidrIPv6" }]]
|
||||
"ranges": [[{ "subnet": "usePodCidr" }]]
|
||||
},
|
||||
"policy": {
|
||||
"type": "k8s"
|
||||
|
@ -4248,7 +4248,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/node:v3.23.0
|
||||
image: docker.io/calico/node:v3.21.5
|
||||
lifecycle:
|
||||
preStop:
|
||||
exec:
|
||||
|
@ -4320,7 +4320,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/cni:v3.23.0
|
||||
image: docker.io/calico/cni:v3.21.5
|
||||
name: upgrade-ipam
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4354,7 +4354,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/cni:v3.23.0
|
||||
image: docker.io/calico/cni:v3.21.5
|
||||
name: install-cni
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4363,7 +4363,7 @@ spec:
|
|||
name: cni-bin-dir
|
||||
- mountPath: /host/etc/cni/net.d
|
||||
name: cni-net-dir
|
||||
- image: docker.io/calico/pod2daemon-flexvol:v3.23.0
|
||||
- image: docker.io/calico/pod2daemon-flexvol:v3.21.5
|
||||
name: flexvol-driver
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4473,7 +4473,7 @@ spec:
|
|||
value: node
|
||||
- name: DATASTORE_TYPE
|
||||
value: kubernetes
|
||||
image: docker.io/calico/kube-controllers:v3.23.0
|
||||
image: docker.io/calico/kube-controllers:v3.21.5
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
|
|
|
@ -54,7 +54,7 @@ spec:
|
|||
version: 9.99.0
|
||||
- id: k8s-1.16
|
||||
manifest: networking.projectcalico.org/k8s-1.16.yaml
|
||||
manifestHash: 41052755f0b88dc3c37bb4c2cf30c44bbdec11b1f624a510b2b4a6df00d0d084
|
||||
manifestHash: 7cce9988276da48e2c85f1c79a7871cd59d0ffff07048e9bc0b2a41914aaebfe
|
||||
name: networking.projectcalico.org
|
||||
selector:
|
||||
role.kubernetes.io/networking: "1"
|
||||
|
|
|
@ -4243,7 +4243,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/node:v3.23.0
|
||||
image: docker.io/calico/node:v3.21.5
|
||||
lifecycle:
|
||||
preStop:
|
||||
exec:
|
||||
|
@ -4317,7 +4317,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/cni:v3.23.0
|
||||
image: docker.io/calico/cni:v3.21.5
|
||||
name: upgrade-ipam
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4351,7 +4351,7 @@ spec:
|
|||
- configMapRef:
|
||||
name: kubernetes-services-endpoint
|
||||
optional: true
|
||||
image: docker.io/calico/cni:v3.23.0
|
||||
image: docker.io/calico/cni:v3.21.5
|
||||
name: install-cni
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4360,7 +4360,7 @@ spec:
|
|||
name: cni-bin-dir
|
||||
- mountPath: /host/etc/cni/net.d
|
||||
name: cni-net-dir
|
||||
- image: docker.io/calico/pod2daemon-flexvol:v3.23.0
|
||||
- image: docker.io/calico/pod2daemon-flexvol:v3.21.5
|
||||
name: flexvol-driver
|
||||
securityContext:
|
||||
privileged: true
|
||||
|
@ -4470,7 +4470,7 @@ spec:
|
|||
value: node
|
||||
- name: DATASTORE_TYPE
|
||||
value: kubernetes
|
||||
image: docker.io/calico/kube-controllers:v3.23.0
|
||||
image: docker.io/calico/kube-controllers:v3.21.5
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
|
|
|
@ -54,7 +54,7 @@ spec:
|
|||
version: 9.99.0
|
||||
- id: k8s-1.22
|
||||
manifest: networking.projectcalico.org.canal/k8s-1.22.yaml
|
||||
manifestHash: c117a5d86f4b5e92969f37bf814be46c936895bdcc6626800d2c321647bc8932
|
||||
manifestHash: e901520c95925f596ab91f42a0e1efba17690f1c3384f1263dd5017ee0cb78f4
|
||||
name: networking.projectcalico.org.canal
|
||||
selector:
|
||||
role.kubernetes.io/networking: "1"
|
||||
|
|
|
@ -100,6 +100,12 @@ spec:
|
|||
64512]'
|
||||
format: int32
|
||||
type: integer
|
||||
bindMode:
|
||||
description: BindMode indicates whether to listen for BGP connections
|
||||
on all addresses (None) or only on the node's canonical IP address
|
||||
Node.Spec.BGP.IPvXAddress (NodeIP). Default behaviour is to listen
|
||||
for BGP connections on all addresses.
|
||||
type: string
|
||||
communities:
|
||||
description: Communities is a list of BGP community values and their
|
||||
arbitrary names for tagging routes.
|
||||
|
@ -130,6 +136,37 @@ spec:
|
|||
description: 'LogSeverityScreen is the log severity above which logs
|
||||
are sent to the stdout. [Default: INFO]'
|
||||
type: string
|
||||
nodeMeshMaxRestartTime:
|
||||
description: Time to allow for software restart for node-to-mesh peerings. When
|
||||
specified, this is configured as the graceful restart timeout. When
|
||||
not specified, the BIRD default of 120s is used. This field can
|
||||
only be set on the default BGPConfiguration instance and requires
|
||||
that NodeMesh is enabled
|
||||
type: string
|
||||
nodeMeshPassword:
|
||||
description: Optional BGP password for full node-to-mesh peerings.
|
||||
This field can only be set on the default BGPConfiguration instance
|
||||
and requires that NodeMesh is enabled
|
||||
properties:
|
||||
secretKeyRef:
|
||||
description: Selects a key of a secret in the node pod's namespace.
|
||||
properties:
|
||||
key:
|
||||
description: The key of the secret to select from. Must be
|
||||
a valid secret key.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
||||
TODO: Add other useful fields. apiVersion, kind, uid?'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the Secret or its key must be
|
||||
defined
|
||||
type: boolean
|
||||
required:
|
||||
- key
|
||||
type: object
|
||||
type: object
|
||||
nodeToNodeMeshEnabled:
|
||||
description: 'NodeToNodeMeshEnabled sets whether full node to node
|
||||
BGP mesh is enabled. [Default: true]'
|
||||
|
@ -267,6 +304,12 @@ spec:
|
|||
description: Selector for the nodes that should have this peering. When
|
||||
this is set, the Node field must be empty.
|
||||
type: string
|
||||
numAllowedLocalASNumbers:
|
||||
description: Maximum number of local AS numbers that are allowed in
|
||||
the AS path for received routes. This removes BGP loop prevention
|
||||
and should only be used if absolutely necesssary.
|
||||
format: int32
|
||||
type: integer
|
||||
password:
|
||||
description: Optional BGP password for the peerings generated by this
|
||||
BGPPeer resource.
|
||||
|
@ -814,6 +857,11 @@ spec:
|
|||
description: 'BPFEnabled, if enabled Felix will use the BPF dataplane.
|
||||
[Default: false]'
|
||||
type: boolean
|
||||
bpfEnforceRPF:
|
||||
description: 'BPFEnforceRPF enforce strict RPF on all interfaces with
|
||||
BPF programs regardless of what is the per-interfaces or global
|
||||
setting. Possible values are Disabled or Strict. [Default: Strict]'
|
||||
type: string
|
||||
bpfExtToServiceConnmark:
|
||||
description: 'BPFExtToServiceConnmark in BPF mode, control a 32bit
|
||||
mark that is set on connections from an external client to a local
|
||||
|
@ -853,6 +901,51 @@ spec:
|
|||
logs are emitted to the BPF trace pipe, accessible with the command
|
||||
`tc exec bpf debug`. [Default: Off].'
|
||||
type: string
|
||||
bpfMapSizeConntrack:
|
||||
description: 'BPFMapSizeConntrack sets the size for the conntrack
|
||||
map. This map must be large enough to hold an entry for each active
|
||||
connection. Warning: changing the size of the conntrack map can
|
||||
cause disruption.'
|
||||
type: integer
|
||||
bpfMapSizeIPSets:
|
||||
description: BPFMapSizeIPSets sets the size for ipsets map. The IP
|
||||
sets map must be large enough to hold an entry for each endpoint
|
||||
matched by every selector in the source/destination matches in network
|
||||
policy. Selectors such as "all()" can result in large numbers of
|
||||
entries (one entry per endpoint in that case).
|
||||
type: integer
|
||||
bpfMapSizeNATAffinity:
|
||||
type: integer
|
||||
bpfMapSizeNATBackend:
|
||||
description: BPFMapSizeNATBackend sets the size for nat back end map.
|
||||
This is the total number of endpoints. This is mostly more than
|
||||
the size of the number of services.
|
||||
type: integer
|
||||
bpfMapSizeNATFrontend:
|
||||
description: BPFMapSizeNATFrontend sets the size for nat front end
|
||||
map. FrontendMap should be large enough to hold an entry for each
|
||||
nodeport, external IP and each port in each service.
|
||||
type: integer
|
||||
bpfMapSizeRoute:
|
||||
description: BPFMapSizeRoute sets the size for the routes map. The
|
||||
routes map should be large enough to hold one entry per workload
|
||||
and a handful of entries per host (enough to cover its own IPs and
|
||||
tunnel IPs).
|
||||
type: integer
|
||||
bpfPSNATPorts:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
description: 'BPFPSNATPorts sets the range from which we randomly
|
||||
pick a port if there is a source port collision. This should be
|
||||
within the ephemeral range as defined by RFC 6056 (1024–65535) and
|
||||
preferably outside the ephemeral ranges used by common operating
|
||||
systems. Linux uses 32768–60999, while others mostly use the IANA
|
||||
defined range 49152–65535. It is not necessarily a problem if this
|
||||
range overlaps with the operating systems. Both ends of the range
|
||||
are inclusive. [Default: 20000:29999]'
|
||||
pattern: ^.*
|
||||
x-kubernetes-int-or-string: true
|
||||
chainInsertMode:
|
||||
description: 'ChainInsertMode controls whether Felix hooks the kernel''s
|
||||
top-level iptables chains by inserting a rule at the top of the
|
||||
|
@ -863,6 +956,15 @@ spec:
|
|||
Calico policy will be bypassed. [Default: insert]'
|
||||
type: string
|
||||
dataplaneDriver:
|
||||
description: DataplaneDriver filename of the external dataplane driver
|
||||
to use. Only used if UseInternalDataplaneDriver is set to false.
|
||||
type: string
|
||||
dataplaneWatchdogTimeout:
|
||||
description: 'DataplaneWatchdogTimeout is the readiness/liveness timeout
|
||||
used for Felix''s (internal) dataplane driver. Increase this value
|
||||
if you experience spurious non-ready or non-live events when Felix
|
||||
is under heavy load. Decrease the value to get felix to report non-live
|
||||
or non-ready more quickly. [Default: 90s]'
|
||||
type: string
|
||||
debugDisableLogDropping:
|
||||
type: boolean
|
||||
|
@ -891,9 +993,14 @@ spec:
|
|||
routes, by default this will be RTPROT_BOOT when left blank.
|
||||
type: integer
|
||||
deviceRouteSourceAddress:
|
||||
description: This is the source address to use on programmed device
|
||||
routes. By default the source address is left blank, leaving the
|
||||
kernel to choose the source address used.
|
||||
description: This is the IPv4 source address to use on programmed
|
||||
device routes. By default the source address is left blank, leaving
|
||||
the kernel to choose the source address used.
|
||||
type: string
|
||||
deviceRouteSourceAddressIPv6:
|
||||
description: This is the IPv6 source address to use on programmed
|
||||
device routes. By default the source address is left blank, leaving
|
||||
the kernel to choose the source address used.
|
||||
type: string
|
||||
disableConntrackInvalidCheck:
|
||||
type: boolean
|
||||
|
@ -967,6 +1074,14 @@ spec:
|
|||
"true" or "false" will force the feature, empty or omitted values
|
||||
are auto-detected.
|
||||
type: string
|
||||
floatingIPs:
|
||||
default: Disabled
|
||||
description: FloatingIPs configures whether or not Felix will program
|
||||
floating IP addresses.
|
||||
enum:
|
||||
- Enabled
|
||||
- Disabled
|
||||
type: string
|
||||
genericXDPEnabled:
|
||||
description: 'GenericXDPEnabled enables Generic XDP so network cards
|
||||
that don''t support XDP offload or driver modes can use XDP. This
|
||||
|
@ -1004,6 +1119,9 @@ spec:
|
|||
disabled by setting the interval to 0.
|
||||
type: string
|
||||
ipipEnabled:
|
||||
description: 'IPIPEnabled overrides whether Felix should configure
|
||||
an IPIP interface on the host. Optional as Felix determines this
|
||||
based on the existing IP pools. [Default: nil (unset)]'
|
||||
type: boolean
|
||||
ipipMTU:
|
||||
description: 'IPIPMTU is the MTU to set on the tunnel device. See
|
||||
|
@ -1070,6 +1188,8 @@ spec:
|
|||
usage. [Default: 10s]'
|
||||
type: string
|
||||
ipv6Support:
|
||||
description: IPv6Support controls whether Felix enables support for
|
||||
IPv6 (if supported by the in-use dataplane).
|
||||
type: boolean
|
||||
kubeNodePortRanges:
|
||||
description: 'KubeNodePortRanges holds list of port ranges used for
|
||||
|
@ -1083,6 +1203,12 @@ spec:
|
|||
pattern: ^.*
|
||||
x-kubernetes-int-or-string: true
|
||||
type: array
|
||||
logDebugFilenameRegex:
|
||||
description: LogDebugFilenameRegex controls which source code files
|
||||
have their Debug log output included in the logs. Only logs from
|
||||
files with names that match the given regular expression are included. The
|
||||
filter only applies to Debug level logs.
|
||||
type: string
|
||||
logFilePath:
|
||||
description: 'LogFilePath is the full path to the Felix log. Set to
|
||||
none to disable file logging. [Default: /var/log/calico/felix.log]'
|
||||
|
@ -1212,9 +1338,9 @@ spec:
|
|||
routes. - CalicoIPAM: the default - use IPAM data to construct routes.'
|
||||
type: string
|
||||
routeTableRange:
|
||||
description: Calico programs additional Linux route tables for various
|
||||
purposes. RouteTableRange specifies the indices of the route tables
|
||||
that Calico should use.
|
||||
description: Deprecated in favor of RouteTableRanges. Calico programs
|
||||
additional Linux route tables for various purposes. RouteTableRange
|
||||
specifies the indices of the route tables that Calico should use.
|
||||
properties:
|
||||
max:
|
||||
type: integer
|
||||
|
@ -1224,6 +1350,21 @@ spec:
|
|||
- max
|
||||
- min
|
||||
type: object
|
||||
routeTableRanges:
|
||||
description: Calico programs additional Linux route tables for various
|
||||
purposes. RouteTableRanges specifies a set of table index ranges
|
||||
that Calico should use. Deprecates`RouteTableRange`, overrides `RouteTableRange`.
|
||||
items:
|
||||
properties:
|
||||
max:
|
||||
type: integer
|
||||
min:
|
||||
type: integer
|
||||
required:
|
||||
- max
|
||||
- min
|
||||
type: object
|
||||
type: array
|
||||
serviceLoopPrevention:
|
||||
description: 'When service IP advertisement is enabled, prevent routing
|
||||
loops to service IPs that are not in use, by dropping or rejecting
|
||||
|
@ -1251,12 +1392,22 @@ spec:
|
|||
Felix makes reports. [Default: 86400s]'
|
||||
type: string
|
||||
useInternalDataplaneDriver:
|
||||
description: UseInternalDataplaneDriver, if true, Felix will use its
|
||||
internal dataplane programming logic. If false, it will launch
|
||||
an external dataplane driver and communicate with it over protobuf.
|
||||
type: boolean
|
||||
vxlanEnabled:
|
||||
description: 'VXLANEnabled overrides whether Felix should create the
|
||||
VXLAN tunnel device for VXLAN networking. Optional as Felix determines
|
||||
this based on the existing IP pools. [Default: nil (unset)]'
|
||||
type: boolean
|
||||
vxlanMTU:
|
||||
description: 'VXLANMTU is the MTU to set on the tunnel device. See
|
||||
Configuring MTU [Default: 1440]'
|
||||
description: 'VXLANMTU is the MTU to set on the IPv4 VXLAN tunnel
|
||||
device. See Configuring MTU [Default: 1410]'
|
||||
type: integer
|
||||
vxlanMTUV6:
|
||||
description: 'VXLANMTUV6 is the MTU to set on the IPv6 VXLAN tunnel
|
||||
device. See Configuring MTU [Default: 1390]'
|
||||
type: integer
|
||||
vxlanPort:
|
||||
type: integer
|
||||
|
@ -1274,6 +1425,10 @@ spec:
|
|||
description: 'WireguardInterfaceName specifies the name to use for
|
||||
the Wireguard interface. [Default: wg.calico]'
|
||||
type: string
|
||||
wireguardKeepAlive:
|
||||
description: 'WireguardKeepAlive controls Wireguard PersistentKeepalive
|
||||
option. Set 0 to disable. [Default: 0]'
|
||||
type: string
|
||||
wireguardListeningPort:
|
||||
description: 'WireguardListeningPort controls the listening port used
|
||||
by Wireguard. [Default: 51820]'
|
||||
|
@ -1286,6 +1441,12 @@ spec:
|
|||
description: 'WireguardRoutingRulePriority controls the priority value
|
||||
to use for the Wireguard routing rule. [Default: 99]'
|
||||
type: integer
|
||||
workloadSourceSpoofing:
|
||||
description: WorkloadSourceSpoofing controls whether pods can use
|
||||
the allowedSourcePrefixes annotation to send traffic with a source
|
||||
IP address that is not theirs. This is disabled by default. When
|
||||
set to "Any", pods can request any prefix.
|
||||
type: string
|
||||
xdpEnabled:
|
||||
description: 'XDPEnabled enables XDP acceleration for suitable untracked
|
||||
incoming deny rules. [Default: true]'
|
||||
|
@ -2382,13 +2543,25 @@ spec:
|
|||
resource.
|
||||
properties:
|
||||
affinity:
|
||||
description: Affinity of the block, if this block has one. If set,
|
||||
it will be of the form "host:<hostname>". If not set, this block
|
||||
is not affine to a host.
|
||||
type: string
|
||||
allocations:
|
||||
description: Array of allocations in-use within this block. nil entries
|
||||
mean the allocation is free. For non-nil entries at index i, the
|
||||
index is the ordinal of the allocation within this block and the
|
||||
value is the index of the associated attributes in the Attributes
|
||||
array.
|
||||
items:
|
||||
nullable: true
|
||||
type: integer
|
||||
type: array
|
||||
attributes:
|
||||
description: Attributes is an array of arbitrary metadata associated
|
||||
with allocations in the block. To find attributes for a given allocation,
|
||||
use the value of the allocation's entry in the Allocations array
|
||||
as the index of the element in this array.
|
||||
items:
|
||||
properties:
|
||||
handle_id:
|
||||
|
@ -2400,12 +2573,38 @@ spec:
|
|||
type: object
|
||||
type: array
|
||||
cidr:
|
||||
description: The block's CIDR.
|
||||
type: string
|
||||
deleted:
|
||||
description: Deleted is an internal boolean used to workaround a limitation
|
||||
in the Kubernetes API whereby deletion will not return a conflict
|
||||
error if the block has been updated. It should not be set manually.
|
||||
type: boolean
|
||||
sequenceNumber:
|
||||
default: 0
|
||||
description: We store a sequence number that is updated each time
|
||||
the block is written. Each allocation will also store the sequence
|
||||
number of the block at the time of its creation. When releasing
|
||||
an IP, passing the sequence number associated with the allocation
|
||||
allows us to protect against a race condition and ensure the IP
|
||||
hasn't been released and re-allocated since the release request.
|
||||
format: int64
|
||||
type: integer
|
||||
sequenceNumberForAllocation:
|
||||
additionalProperties:
|
||||
format: int64
|
||||
type: integer
|
||||
description: Map of allocated ordinal within the block to sequence
|
||||
number of the block at the time of allocation. Kubernetes does not
|
||||
allow numerical keys for maps, so the key is cast to a string.
|
||||
type: object
|
||||
strictAffinity:
|
||||
description: StrictAffinity on the IPAMBlock is deprecated and no
|
||||
longer used by the code. Use IPAMConfig StrictAffinity instead.
|
||||
type: boolean
|
||||
unallocated:
|
||||
description: Unallocated is an ordered list of allocations which are
|
||||
free in the block.
|
||||
items:
|
||||
type: integer
|
||||
type: array
|
||||
|
@ -2597,13 +2796,13 @@ spec:
|
|||
type: array
|
||||
blockSize:
|
||||
description: The block size to use for IP address assignments from
|
||||
this pool. Defaults to 26 for IPv4 and 112 for IPv6.
|
||||
this pool. Defaults to 26 for IPv4 and 122 for IPv6.
|
||||
type: integer
|
||||
cidr:
|
||||
description: The pool CIDR.
|
||||
type: string
|
||||
disableBGPExport:
|
||||
description: 'Disable exporting routes from this IP Pool’s CIDR over
|
||||
description: 'Disable exporting routes from this IP Pool''s CIDR over
|
||||
BGP. [Default: false]'
|
||||
type: boolean
|
||||
disabled:
|
||||
|
@ -2670,6 +2869,8 @@ status:
|
|||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: (devel)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
addon.kops.k8s.io/name: networking.projectcalico.org.canal
|
||||
|
@ -2830,6 +3031,11 @@ spec:
|
|||
type: string
|
||||
type: object
|
||||
type: object
|
||||
debugProfilePort:
|
||||
description: DebugProfilePort configures the port to serve memory
|
||||
and cpu profiles on. If not specified, profiling is disabled.
|
||||
format: int32
|
||||
type: integer
|
||||
etcdV3CompactionPeriod:
|
||||
description: 'EtcdV3CompactionPeriod is the period between etcdv3
|
||||
compaction requests. Set to 0 to disable. [Default: 10m]'
|
||||
|
@ -2940,6 +3146,11 @@ spec:
|
|||
type: string
|
||||
type: object
|
||||
type: object
|
||||
debugProfilePort:
|
||||
description: DebugProfilePort configures the port to serve memory
|
||||
and cpu profiles on. If not specified, profiling is disabled.
|
||||
format: int32
|
||||
type: integer
|
||||
etcdV3CompactionPeriod:
|
||||
description: 'EtcdV3CompactionPeriod is the period between etcdv3
|
||||
compaction requests. Set to 0 to disable. [Default: 10m]'
|
||||
|
@ -3901,7 +4112,6 @@ rules:
|
|||
- apiGroups:
|
||||
- crd.projectcalico.org
|
||||
resources:
|
||||
- ippools
|
||||
- ipreservations
|
||||
verbs:
|
||||
- list
|
||||
|
@ -3918,6 +4128,13 @@ rules:
|
|||
- update
|
||||
- delete
|
||||
- watch
|
||||
- apiGroups:
|
||||
- crd.projectcalico.org
|
||||
resources:
|
||||
- ippools
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- crd.projectcalico.org
|
||||
resources:
|
||||
|
@ -3934,8 +4151,10 @@ rules:
|
|||
- clusterinformations
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- create
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- crd.projectcalico.org
|
||||
resources:
|
||||
|
@ -4361,13 +4580,6 @@ spec:
|
|||
name: cni-bin-dir
|
||||
- mountPath: /host/etc/cni/net.d
|
||||
name: cni-net-dir
|
||||
- image: docker.io/calico/pod2daemon-flexvol:v3.23.0
|
||||
name: flexvol-driver
|
||||
securityContext:
|
||||
privileged: true
|
||||
volumeMounts:
|
||||
- mountPath: /host/driver
|
||||
name: flexvol-driver-host
|
||||
nodeSelector:
|
||||
kubernetes.io/os: linux
|
||||
priorityClassName: system-node-critical
|
||||
|
@ -4414,10 +4626,6 @@ spec:
|
|||
path: /var/run/nodeagent
|
||||
type: DirectoryOrCreate
|
||||
name: policysync
|
||||
- hostPath:
|
||||
path: /usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds
|
||||
type: DirectoryOrCreate
|
||||
name: flexvol-driver-host
|
||||
updateStrategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
|
@ -4531,7 +4739,7 @@ metadata:
|
|||
|
||||
---
|
||||
|
||||
apiVersion: policy/v1beta1
|
||||
apiVersion: policy/v1
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
|
|
|
@ -113,6 +113,12 @@ spec:
|
|||
64512]'
|
||||
format: int32
|
||||
type: integer
|
||||
bindMode:
|
||||
description: BindMode indicates whether to listen for BGP connections
|
||||
on all addresses (None) or only on the node's canonical IP address
|
||||
Node.Spec.BGP.IPvXAddress (NodeIP). Default behaviour is to listen
|
||||
for BGP connections on all addresses.
|
||||
type: string
|
||||
communities:
|
||||
description: Communities is a list of BGP community values and their
|
||||
arbitrary names for tagging routes.
|
||||
|
@ -143,6 +149,37 @@ spec:
|
|||
description: 'LogSeverityScreen is the log severity above which logs
|
||||
are sent to the stdout. [Default: INFO]'
|
||||
type: string
|
||||
nodeMeshMaxRestartTime:
|
||||
description: Time to allow for software restart for node-to-mesh peerings. When
|
||||
specified, this is configured as the graceful restart timeout. When
|
||||
not specified, the BIRD default of 120s is used. This field can
|
||||
only be set on the default BGPConfiguration instance and requires
|
||||
that NodeMesh is enabled
|
||||
type: string
|
||||
nodeMeshPassword:
|
||||
description: Optional BGP password for full node-to-mesh peerings.
|
||||
This field can only be set on the default BGPConfiguration instance
|
||||
and requires that NodeMesh is enabled
|
||||
properties:
|
||||
secretKeyRef:
|
||||
description: Selects a key of a secret in the node pod's namespace.
|
||||
properties:
|
||||
key:
|
||||
description: The key of the secret to select from. Must be
|
||||
a valid secret key.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
||||
TODO: Add other useful fields. apiVersion, kind, uid?'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the Secret or its key must be
|
||||
defined
|
||||
type: boolean
|
||||
required:
|
||||
- key
|
||||
type: object
|
||||
type: object
|
||||
nodeToNodeMeshEnabled:
|
||||
description: 'NodeToNodeMeshEnabled sets whether full node to node
|
||||
BGP mesh is enabled. [Default: true]'
|
||||
|
@ -274,6 +311,12 @@ spec:
|
|||
description: Selector for the nodes that should have this peering. When
|
||||
this is set, the Node field must be empty.
|
||||
type: string
|
||||
numAllowedLocalASNumbers:
|
||||
description: Maximum number of local AS numbers that are allowed in
|
||||
the AS path for received routes. This removes BGP loop prevention
|
||||
and should only be used if absolutely necesssary.
|
||||
format: int32
|
||||
type: integer
|
||||
password:
|
||||
description: Optional BGP password for the peerings generated by this
|
||||
BGPPeer resource.
|
||||
|
@ -800,6 +843,11 @@ spec:
|
|||
description: 'BPFEnabled, if enabled Felix will use the BPF dataplane.
|
||||
[Default: false]'
|
||||
type: boolean
|
||||
bpfEnforceRPF:
|
||||
description: 'BPFEnforceRPF enforce strict RPF on all interfaces with
|
||||
BPF programs regardless of what is the per-interfaces or global
|
||||
setting. Possible values are Disabled or Strict. [Default: Strict]'
|
||||
type: string
|
||||
bpfExtToServiceConnmark:
|
||||
description: 'BPFExtToServiceConnmark in BPF mode, control a 32bit
|
||||
mark that is set on connections from an external client to a local
|
||||
|
@ -839,6 +887,51 @@ spec:
|
|||
logs are emitted to the BPF trace pipe, accessible with the command
|
||||
`tc exec bpf debug`. [Default: Off].'
|
||||
type: string
|
||||
bpfMapSizeConntrack:
|
||||
description: 'BPFMapSizeConntrack sets the size for the conntrack
|
||||
map. This map must be large enough to hold an entry for each active
|
||||
connection. Warning: changing the size of the conntrack map can
|
||||
cause disruption.'
|
||||
type: integer
|
||||
bpfMapSizeIPSets:
|
||||
description: BPFMapSizeIPSets sets the size for ipsets map. The IP
|
||||
sets map must be large enough to hold an entry for each endpoint
|
||||
matched by every selector in the source/destination matches in network
|
||||
policy. Selectors such as "all()" can result in large numbers of
|
||||
entries (one entry per endpoint in that case).
|
||||
type: integer
|
||||
bpfMapSizeNATAffinity:
|
||||
type: integer
|
||||
bpfMapSizeNATBackend:
|
||||
description: BPFMapSizeNATBackend sets the size for nat back end map.
|
||||
This is the total number of endpoints. This is mostly more than
|
||||
the size of the number of services.
|
||||
type: integer
|
||||
bpfMapSizeNATFrontend:
|
||||
description: BPFMapSizeNATFrontend sets the size for nat front end
|
||||
map. FrontendMap should be large enough to hold an entry for each
|
||||
nodeport, external IP and each port in each service.
|
||||
type: integer
|
||||
bpfMapSizeRoute:
|
||||
description: BPFMapSizeRoute sets the size for the routes map. The
|
||||
routes map should be large enough to hold one entry per workload
|
||||
and a handful of entries per host (enough to cover its own IPs and
|
||||
tunnel IPs).
|
||||
type: integer
|
||||
bpfPSNATPorts:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
description: 'BPFPSNATPorts sets the range from which we randomly
|
||||
pick a port if there is a source port collision. This should be
|
||||
within the ephemeral range as defined by RFC 6056 (1024–65535) and
|
||||
preferably outside the ephemeral ranges used by common operating
|
||||
systems. Linux uses 32768–60999, while others mostly use the IANA
|
||||
defined range 49152–65535. It is not necessarily a problem if this
|
||||
range overlaps with the operating systems. Both ends of the range
|
||||
are inclusive. [Default: 20000:29999]'
|
||||
pattern: ^.*
|
||||
x-kubernetes-int-or-string: true
|
||||
chainInsertMode:
|
||||
description: 'ChainInsertMode controls whether Felix hooks the kernel''s
|
||||
top-level iptables chains by inserting a rule at the top of the
|
||||
|
@ -849,6 +942,15 @@ spec:
|
|||
Calico policy will be bypassed. [Default: insert]'
|
||||
type: string
|
||||
dataplaneDriver:
|
||||
description: DataplaneDriver filename of the external dataplane driver
|
||||
to use. Only used if UseInternalDataplaneDriver is set to false.
|
||||
type: string
|
||||
dataplaneWatchdogTimeout:
|
||||
description: 'DataplaneWatchdogTimeout is the readiness/liveness timeout
|
||||
used for Felix''s (internal) dataplane driver. Increase this value
|
||||
if you experience spurious non-ready or non-live events when Felix
|
||||
is under heavy load. Decrease the value to get felix to report non-live
|
||||
or non-ready more quickly. [Default: 90s]'
|
||||
type: string
|
||||
debugDisableLogDropping:
|
||||
type: boolean
|
||||
|
@ -877,9 +979,14 @@ spec:
|
|||
routes, by default this will be RTPROT_BOOT when left blank.
|
||||
type: integer
|
||||
deviceRouteSourceAddress:
|
||||
description: This is the source address to use on programmed device
|
||||
routes. By default the source address is left blank, leaving the
|
||||
kernel to choose the source address used.
|
||||
description: This is the IPv4 source address to use on programmed
|
||||
device routes. By default the source address is left blank, leaving
|
||||
the kernel to choose the source address used.
|
||||
type: string
|
||||
deviceRouteSourceAddressIPv6:
|
||||
description: This is the IPv6 source address to use on programmed
|
||||
device routes. By default the source address is left blank, leaving
|
||||
the kernel to choose the source address used.
|
||||
type: string
|
||||
disableConntrackInvalidCheck:
|
||||
type: boolean
|
||||
|
@ -953,6 +1060,14 @@ spec:
|
|||
"true" or "false" will force the feature, empty or omitted values
|
||||
are auto-detected.
|
||||
type: string
|
||||
floatingIPs:
|
||||
default: Disabled
|
||||
description: FloatingIPs configures whether or not Felix will program
|
||||
floating IP addresses.
|
||||
enum:
|
||||
- Enabled
|
||||
- Disabled
|
||||
type: string
|
||||
genericXDPEnabled:
|
||||
description: 'GenericXDPEnabled enables Generic XDP so network cards
|
||||
that don''t support XDP offload or driver modes can use XDP. This
|
||||
|
@ -990,6 +1105,9 @@ spec:
|
|||
disabled by setting the interval to 0.
|
||||
type: string
|
||||
ipipEnabled:
|
||||
description: 'IPIPEnabled overrides whether Felix should configure
|
||||
an IPIP interface on the host. Optional as Felix determines this
|
||||
based on the existing IP pools. [Default: nil (unset)]'
|
||||
type: boolean
|
||||
ipipMTU:
|
||||
description: 'IPIPMTU is the MTU to set on the tunnel device. See
|
||||
|
@ -1056,6 +1174,8 @@ spec:
|
|||
usage. [Default: 10s]'
|
||||
type: string
|
||||
ipv6Support:
|
||||
description: IPv6Support controls whether Felix enables support for
|
||||
IPv6 (if supported by the in-use dataplane).
|
||||
type: boolean
|
||||
kubeNodePortRanges:
|
||||
description: 'KubeNodePortRanges holds list of port ranges used for
|
||||
|
@ -1069,6 +1189,12 @@ spec:
|
|||
pattern: ^.*
|
||||
x-kubernetes-int-or-string: true
|
||||
type: array
|
||||
logDebugFilenameRegex:
|
||||
description: LogDebugFilenameRegex controls which source code files
|
||||
have their Debug log output included in the logs. Only logs from
|
||||
files with names that match the given regular expression are included. The
|
||||
filter only applies to Debug level logs.
|
||||
type: string
|
||||
logFilePath:
|
||||
description: 'LogFilePath is the full path to the Felix log. Set to
|
||||
none to disable file logging. [Default: /var/log/calico/felix.log]'
|
||||
|
@ -1198,9 +1324,9 @@ spec:
|
|||
routes. - CalicoIPAM: the default - use IPAM data to construct routes.'
|
||||
type: string
|
||||
routeTableRange:
|
||||
description: Calico programs additional Linux route tables for various
|
||||
purposes. RouteTableRange specifies the indices of the route tables
|
||||
that Calico should use.
|
||||
description: Deprecated in favor of RouteTableRanges. Calico programs
|
||||
additional Linux route tables for various purposes. RouteTableRange
|
||||
specifies the indices of the route tables that Calico should use.
|
||||
properties:
|
||||
max:
|
||||
type: integer
|
||||
|
@ -1210,6 +1336,21 @@ spec:
|
|||
- max
|
||||
- min
|
||||
type: object
|
||||
routeTableRanges:
|
||||
description: Calico programs additional Linux route tables for various
|
||||
purposes. RouteTableRanges specifies a set of table index ranges
|
||||
that Calico should use. Deprecates`RouteTableRange`, overrides `RouteTableRange`.
|
||||
items:
|
||||
properties:
|
||||
max:
|
||||
type: integer
|
||||
min:
|
||||
type: integer
|
||||
required:
|
||||
- max
|
||||
- min
|
||||
type: object
|
||||
type: array
|
||||
serviceLoopPrevention:
|
||||
description: 'When service IP advertisement is enabled, prevent routing
|
||||
loops to service IPs that are not in use, by dropping or rejecting
|
||||
|
@ -1237,12 +1378,22 @@ spec:
|
|||
Felix makes reports. [Default: 86400s]'
|
||||
type: string
|
||||
useInternalDataplaneDriver:
|
||||
description: UseInternalDataplaneDriver, if true, Felix will use its
|
||||
internal dataplane programming logic. If false, it will launch
|
||||
an external dataplane driver and communicate with it over protobuf.
|
||||
type: boolean
|
||||
vxlanEnabled:
|
||||
description: 'VXLANEnabled overrides whether Felix should create the
|
||||
VXLAN tunnel device for VXLAN networking. Optional as Felix determines
|
||||
this based on the existing IP pools. [Default: nil (unset)]'
|
||||
type: boolean
|
||||
vxlanMTU:
|
||||
description: 'VXLANMTU is the MTU to set on the tunnel device. See
|
||||
Configuring MTU [Default: 1440]'
|
||||
description: 'VXLANMTU is the MTU to set on the IPv4 VXLAN tunnel
|
||||
device. See Configuring MTU [Default: 1410]'
|
||||
type: integer
|
||||
vxlanMTUV6:
|
||||
description: 'VXLANMTUV6 is the MTU to set on the IPv6 VXLAN tunnel
|
||||
device. See Configuring MTU [Default: 1390]'
|
||||
type: integer
|
||||
vxlanPort:
|
||||
type: integer
|
||||
|
@ -1260,6 +1411,10 @@ spec:
|
|||
description: 'WireguardInterfaceName specifies the name to use for
|
||||
the Wireguard interface. [Default: wg.calico]'
|
||||
type: string
|
||||
wireguardKeepAlive:
|
||||
description: 'WireguardKeepAlive controls Wireguard PersistentKeepalive
|
||||
option. Set 0 to disable. [Default: 0]'
|
||||
type: string
|
||||
wireguardListeningPort:
|
||||
description: 'WireguardListeningPort controls the listening port used
|
||||
by Wireguard. [Default: 51820]'
|
||||
|
@ -1272,6 +1427,12 @@ spec:
|
|||
description: 'WireguardRoutingRulePriority controls the priority value
|
||||
to use for the Wireguard routing rule. [Default: 99]'
|
||||
type: integer
|
||||
workloadSourceSpoofing:
|
||||
description: WorkloadSourceSpoofing controls whether pods can use
|
||||
the allowedSourcePrefixes annotation to send traffic with a source
|
||||
IP address that is not theirs. This is disabled by default. When
|
||||
set to "Any", pods can request any prefix.
|
||||
type: string
|
||||
xdpEnabled:
|
||||
description: 'XDPEnabled enables XDP acceleration for suitable untracked
|
||||
incoming deny rules. [Default: true]'
|
||||
|
@ -2344,8 +2505,16 @@ spec:
|
|||
resource.
|
||||
properties:
|
||||
affinity:
|
||||
description: Affinity of the block, if this block has one. If set,
|
||||
it will be of the form "host:<hostname>". If not set, this block
|
||||
is not affine to a host.
|
||||
type: string
|
||||
allocations:
|
||||
description: Array of allocations in-use within this block. nil entries
|
||||
mean the allocation is free. For non-nil entries at index i, the
|
||||
index is the ordinal of the allocation within this block and the
|
||||
value is the index of the associated attributes in the Attributes
|
||||
array.
|
||||
items:
|
||||
type: integer
|
||||
# TODO: This nullable is manually added in. We should update controller-gen
|
||||
|
@ -2353,6 +2522,10 @@ spec:
|
|||
nullable: true
|
||||
type: array
|
||||
attributes:
|
||||
description: Attributes is an array of arbitrary metadata associated
|
||||
with allocations in the block. To find attributes for a given allocation,
|
||||
use the value of the allocation's entry in the Allocations array
|
||||
as the index of the element in this array.
|
||||
items:
|
||||
properties:
|
||||
handle_id:
|
||||
|
@ -2364,12 +2537,38 @@ spec:
|
|||
type: object
|
||||
type: array
|
||||
cidr:
|
||||
description: The block's CIDR.
|
||||
type: string
|
||||
deleted:
|
||||
description: Deleted is an internal boolean used to workaround a limitation
|
||||
in the Kubernetes API whereby deletion will not return a conflict
|
||||
error if the block has been updated. It should not be set manually.
|
||||
type: boolean
|
||||
sequenceNumber:
|
||||
default: 0
|
||||
description: We store a sequence number that is updated each time
|
||||
the block is written. Each allocation will also store the sequence
|
||||
number of the block at the time of its creation. When releasing
|
||||
an IP, passing the sequence number associated with the allocation
|
||||
allows us to protect against a race condition and ensure the IP
|
||||
hasn't been released and re-allocated since the release request.
|
||||
format: int64
|
||||
type: integer
|
||||
sequenceNumberForAllocation:
|
||||
additionalProperties:
|
||||
format: int64
|
||||
type: integer
|
||||
description: Map of allocated ordinal within the block to sequence
|
||||
number of the block at the time of allocation. Kubernetes does not
|
||||
allow numerical keys for maps, so the key is cast to a string.
|
||||
type: object
|
||||
strictAffinity:
|
||||
description: StrictAffinity on the IPAMBlock is deprecated and no
|
||||
longer used by the code. Use IPAMConfig StrictAffinity instead.
|
||||
type: boolean
|
||||
unallocated:
|
||||
description: Unallocated is an ordered list of allocations which are
|
||||
free in the block.
|
||||
items:
|
||||
type: integer
|
||||
type: array
|
||||
|
@ -2543,19 +2742,19 @@ spec:
|
|||
type: array
|
||||
blockSize:
|
||||
description: The block size to use for IP address assignments from
|
||||
this pool. Defaults to 26 for IPv4 and 112 for IPv6.
|
||||
this pool. Defaults to 26 for IPv4 and 122 for IPv6.
|
||||
type: integer
|
||||
cidr:
|
||||
description: The pool CIDR.
|
||||
type: string
|
||||
disableBGPExport:
|
||||
description: 'Disable exporting routes from this IP Pool''s CIDR over
|
||||
BGP. [Default: false]'
|
||||
type: boolean
|
||||
disabled:
|
||||
description: When disabled is true, Calico IPAM will not assign addresses
|
||||
from this pool.
|
||||
type: boolean
|
||||
disableBGPExport:
|
||||
description: 'Disable exporting routes from this IP Pool’s CIDR over
|
||||
BGP. [Default: false]'
|
||||
type: boolean
|
||||
ipip:
|
||||
description: 'Deprecated: this field is only used for APIv1 backwards
|
||||
compatibility. Setting this field is not allowed, this field is
|
||||
|
@ -2615,6 +2814,9 @@ status:
|
|||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: (devel)
|
||||
creationTimestamp: null
|
||||
name: ipreservations.crd.projectcalico.org
|
||||
spec:
|
||||
group: crd.projectcalico.org
|
||||
|
@ -2764,6 +2966,11 @@ spec:
|
|||
type: string
|
||||
type: object
|
||||
type: object
|
||||
debugProfilePort:
|
||||
description: DebugProfilePort configures the port to serve memory
|
||||
and cpu profiles on. If not specified, profiling is disabled.
|
||||
format: int32
|
||||
type: integer
|
||||
etcdV3CompactionPeriod:
|
||||
description: 'EtcdV3CompactionPeriod is the period between etcdv3
|
||||
compaction requests. Set to 0 to disable. [Default: 10m]'
|
||||
|
@ -2874,6 +3081,11 @@ spec:
|
|||
type: string
|
||||
type: object
|
||||
type: object
|
||||
debugProfilePort:
|
||||
description: DebugProfilePort configures the port to serve memory
|
||||
and cpu profiles on. If not specified, profiling is disabled.
|
||||
format: int32
|
||||
type: integer
|
||||
etcdV3CompactionPeriod:
|
||||
description: 'EtcdV3CompactionPeriod is the period between etcdv3
|
||||
compaction requests. Set to 0 to disable. [Default: 10m]'
|
||||
|
@ -3819,10 +4031,9 @@ rules:
|
|||
- get
|
||||
- list
|
||||
- watch
|
||||
# IPAM resources are manipulated when nodes are deleted.
|
||||
# IPAM resources are manipulated in response to node and block updates, as well as periodic triggers.
|
||||
- apiGroups: ["crd.projectcalico.org"]
|
||||
resources:
|
||||
- ippools
|
||||
- ipreservations
|
||||
verbs:
|
||||
- list
|
||||
|
@ -3838,6 +4049,13 @@ rules:
|
|||
- update
|
||||
- delete
|
||||
- watch
|
||||
# Pools are watched to maintain a mapping of blocks to IP pools.
|
||||
- apiGroups: ["crd.projectcalico.org"]
|
||||
resources:
|
||||
- ippools
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
# kube-controllers manages hostendpoints.
|
||||
- apiGroups: ["crd.projectcalico.org"]
|
||||
resources:
|
||||
|
@ -3854,8 +4072,10 @@ rules:
|
|||
- clusterinformations
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- create
|
||||
- update
|
||||
- watch
|
||||
# KubeControllersConfiguration is where it gets its config
|
||||
- apiGroups: ["crd.projectcalico.org"]
|
||||
resources:
|
||||
|
@ -4097,13 +4317,13 @@ metadata:
|
|||
labels:
|
||||
k8s-app: calico-typha
|
||||
spec:
|
||||
# Number of Typha replicas. To enable Typha, set this to a non-zero value *and* set the
|
||||
# Number of Typha replicas. To enable Typha, set this to a non-zero value *and* set the
|
||||
# typha_service_name variable in the canal-config ConfigMap above.
|
||||
#
|
||||
# We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is essential
|
||||
# (when using the Kubernetes datastore). Use one replica for every 100-200 nodes. In
|
||||
# We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is essential
|
||||
# (when using the Kubernetes datastore). Use one replica for every 100-200 nodes. In
|
||||
# production, we recommend running at least 3 replicas to reduce the impact of rolling upgrade.
|
||||
replicas: {{ or .Networking.Canal.TyphaReplicas 0 }}
|
||||
replicas: {{ or .Networking.Canal.TyphaReplicas "0" }}
|
||||
revisionHistoryLimit: 2
|
||||
selector:
|
||||
matchLabels:
|
||||
|
@ -4172,6 +4392,7 @@ spec:
|
|||
host: localhost
|
||||
periodSeconds: 30
|
||||
initialDelaySeconds: 30
|
||||
timeoutSeconds: 10
|
||||
securityContext:
|
||||
runAsNonRoot: true
|
||||
allowPrivilegeEscalation: false
|
||||
|
@ -4181,6 +4402,7 @@ spec:
|
|||
port: 9098
|
||||
host: localhost
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 10
|
||||
|
||||
---
|
||||
|
||||
|
@ -4284,15 +4506,6 @@ spec:
|
|||
name: cni-net-dir
|
||||
securityContext:
|
||||
privileged: true
|
||||
# Adds a Flex Volume Driver that creates a per-pod Unix Domain Socket to allow Dikastes
|
||||
# to communicate with Felix over the Policy Sync API.
|
||||
- name: flexvol-driver
|
||||
image: docker.io/calico/pod2daemon-flexvol:v3.23.0
|
||||
volumeMounts:
|
||||
- name: flexvol-driver-host
|
||||
mountPath: /host/driver
|
||||
securityContext:
|
||||
privileged: true
|
||||
containers:
|
||||
# Runs canal container on each Kubernetes node. This
|
||||
# container programs network policy and routes on each
|
||||
|
@ -4515,11 +4728,6 @@ spec:
|
|||
hostPath:
|
||||
type: DirectoryOrCreate
|
||||
path: /var/run/nodeagent
|
||||
# Used to install Flex Volume Driver
|
||||
- name: flexvol-driver-host
|
||||
hostPath:
|
||||
type: DirectoryOrCreate
|
||||
path: "{{- or .Kubelet.VolumePluginDirectory "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" }}nodeagent~uds"
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
|
@ -4618,7 +4826,7 @@ metadata:
|
|||
|
||||
# This manifest creates a Pod Disruption Budget for Controller to allow K8s Cluster Autoscaler to evict
|
||||
|
||||
apiVersion: policy/v1beta1
|
||||
apiVersion: policy/v1
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: calico-kube-controllers
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Pulled and modified from: https://docs.projectcalico.org/v3.23/manifests/calico-typha.yaml
|
||||
# Pulled and modified from: https://docs.projectcalico.org/v3.21/manifests/calico-typha.yaml
|
||||
|
||||
{{- if .Networking.Calico.BPFEnabled }}
|
||||
---
|
||||
|
@ -52,7 +52,7 @@ data:
|
|||
"assign_ipv6": "{{ IsIPv6Only }}",
|
||||
{{- if IsIPv6Only }}
|
||||
"type": "host-local",
|
||||
"ranges": [[{ "subnet": "usePodCidrIPv6" }]]
|
||||
"ranges": [[{ "subnet": "usePodCidr" }]]
|
||||
{{- else }}
|
||||
"type": "calico-ipam"
|
||||
{{- end }}
|
||||
|
@ -4139,7 +4139,7 @@ spec:
|
|||
securityContext:
|
||||
fsGroup: 65534
|
||||
containers:
|
||||
- image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/typha:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
- image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/typha:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
name: calico-typha
|
||||
ports:
|
||||
- containerPort: 5473
|
||||
|
@ -4260,7 +4260,7 @@ spec:
|
|||
# It can be deleted if this is a fresh installation, or if you have already
|
||||
# upgraded to use calico-ipam.
|
||||
- name: upgrade-ipam
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/cni:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/cni:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
command: ["/opt/cni/bin/calico-ipam", "-upgrade"]
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
|
@ -4287,7 +4287,7 @@ spec:
|
|||
# This container installs the CNI binaries
|
||||
# and CNI network config file on each node.
|
||||
- name: install-cni
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/cni:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/cni:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
command: ["/opt/cni/bin/install"]
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
|
@ -4328,7 +4328,7 @@ spec:
|
|||
# Adds a Flex Volume Driver that creates a per-pod Unix Domain Socket to allow Dikastes
|
||||
# to communicate with Felix over the Policy Sync API.
|
||||
- name: flexvol-driver
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/pod2daemon-flexvol:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/pod2daemon-flexvol:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
volumeMounts:
|
||||
- name: flexvol-driver-host
|
||||
mountPath: /host/driver
|
||||
|
@ -4339,7 +4339,7 @@ spec:
|
|||
# container programs network policy and routes on each
|
||||
# host.
|
||||
- name: calico-node
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/node:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/node:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
# Allow KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT to be overridden for eBPF mode.
|
||||
|
@ -4657,7 +4657,7 @@ spec:
|
|||
priorityClassName: system-cluster-critical
|
||||
containers:
|
||||
- name: calico-kube-controllers
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/kube-controllers:{{ or .Networking.Calico.Version "v3.23.0" }}
|
||||
image: {{ or .Networking.Calico.Registry "docker.io" }}/calico/kube-controllers:{{ or .Networking.Calico.Version "v3.21.5" }}
|
||||
env:
|
||||
# Choose which controllers to run.
|
||||
- name: ENABLED_CONTROLLERS
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -934,7 +934,17 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*Addon
|
|||
if b.Cluster.Spec.Networking.Calico != nil {
|
||||
key := "networking.projectcalico.org"
|
||||
|
||||
{
|
||||
if b.IsKubernetesGTE("v1.23.0") {
|
||||
id := "k8s-1.23"
|
||||
location := key + "/" + id + ".yaml"
|
||||
|
||||
addons.Add(&channelsapi.AddonSpec{
|
||||
Name: fi.String(key),
|
||||
Selector: networkingSelector(),
|
||||
Manifest: fi.String(location),
|
||||
Id: id,
|
||||
})
|
||||
} else {
|
||||
id := "k8s-1.16"
|
||||
location := key + "/" + id + ".yaml"
|
||||
|
||||
|
|
Loading…
Reference in New Issue