Hi, how can I go about setting the Calico `mtuIfac...
# rke2
g
Hi, how can I go about setting the Calico
mtuIfacePattern
in a RKE2 cluster using canal. I don't see any value in the helm chart (https://github.com/rancher/rke2-charts/blob/main-source/packages/rke2-canal/charts/values.yaml) that exposes this.
c
I don’t think you can do that. Canal (Calico+Flannel) isn’t really supported by Tigera any longer, so the options for it are kinda bare-bones. You might consider using pure Calico or Flannel depending on your needs.
g
@creamy-pencil-82913 We are only using Canal since that's what RKE1 and RKE2 defaulted to. As of now we don't have any CNI specific needs. Will Canal be phased out eventually? If so I agree that we should switch.
c
There are no plans to remove it. Both projects are still under active development, but the project to pair the two together under the “canal” name is not really being worked on. https://github.com/projectcalico/canal/blob/master/README.md
The chart that RKE2 uses is independently maintained mostly just to bump component versions, as Tigera themselves stopped working on it 5-6 years ago.
g
@creamy-pencil-82913 Ok, good to know. If I switch to Calico will I be able to customize any Calico settings upon RKE2 cluster creation? Also, is RKE2 going to change away from using Canal as the default CNI going forward?
c
I’m not aware of any plans to change the default. I think the current default was mostly selected because that was what RKE used. Same reason RKE2 uses ingress-nginx as the default ingress controller.
👍 1
Note that you cannot change CNI once the cluster is created, you’d need to build a new cluster with a different CNI.
👍 1
g
Ok, noted. I figured I'd have to create a new cluster.
@creamy-pencil-82913 Is there any documentation on how I can configure Calico specific settings during RKE2 cluster creation time such as
mtuIfacePattern
? I looked at https://github.com/rancher/rke2-charts/tree/main-source/packages/rke2-calico but it's a CRD instead of a regular helm chart like
rek2-canal
.
c
Just add that key under felixConfiguration as covered in the upstream docs: https://docs.tigera.io/calico/latest/reference/resources/felixconfig
g
Ah, there we go, thanks! So during cluster creation it would be
spec.rkeConfig.chartValues.rke2-calico.felixConfiguration.mtuIfacePattern
, right?
c
that sounds correct
g
Ok, I'll try that out. And for getting this working on existing clusters using canal, are the only options: 1. Using
rkeConfig.additionalManifest
such as
"additionalManifests": [ "apiVersion: <http://projectcalico.org/v1|projectcalico.org/v1>\nkind: FelixConfiguration\nmetadata:\n  name: default\nspec:\n  mtuIfacePattern: ^net1"],
2. Manually patching the
felixconfiguration
after cluster creation via
kubectl patch felixconfiguration default ...