-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Canal v3.10 manifest for k8s v1.15+ #7917
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: KashifSaadat The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
98d1b61
to
63bc447
Compare
63bc447
to
3914286
Compare
/lgtm |
c60b55a
to
0f3449b
Compare
/lgtm |
/retest |
I realize this was done a while ago but I was looking at the history of a recent add to the Calico manifest of adding a nodeSelector As referenced here #8104 (comment) |
Ah this was a while ago, I should have made a note! I vaguely recall this was more specific to how we performed Kops node rolling upgrades and manifest updates. I believe as part of a Kops upgrade from v1.14 to v1.15 (including both Kubernetes and the Canal manifest update), after rolling the first master nodes the new Canal manifest was applied and Typha enabled (if specified in the cni spec), but Typha couldn't be scheduled on the old v1.14 nodes. At this point the canal pods have also begun rolling (as the new manifest was applied) and would fail to start because the Typha service is unavailable. I'd have to re-run the upgrade path to confirm the exact issue I encountered, but fairly certain the nodeSelector should no longer be required any more so we can look to remove it in a future update. |
From Canal v3.8 onwards, a new init container is introduced and included in the manifests by default, which installs a Flex Volume Driver. This requires having a writeable path to install the driver in, which by default is
/usr/libexec/kubernetes/kubelet-plugins/volume/exec/
.The default flexvol directory above is not writeable for OSs such as CoreOS & ContainerOS, so the volume plugin directory must be specified in the Cluster Spec like below:
Typha support is now available for Canal deployments. This can be configured as follows:
Other available options are:
typhaPrometheusMetricsEnabled
,typhaPrometheusMetricsPort