Skip to content
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

Enable dual-stack on canal cni #2342

Closed
manuelbuil opened this issue Jan 11, 2022 · 3 comments
Closed

Enable dual-stack on canal cni #2342

manuelbuil opened this issue Jan 11, 2022 · 3 comments
Assignees

Comments

@manuelbuil
Copy link
Contributor

Is your feature request related to a problem? Please describe.

Both flannel and "Calico_Canal" now support dual-stack: projectcalico/calico#5313. RKE2 could activate that Canal feature when deploying in dual-stack mode

Describe the solution you'd like

Use a canal image that includes the dual-stack PR

Describe alternatives you've considered

Using another CNI that supports dual-stack

Additional context

@manuelbuil
Copy link
Contributor Author

To test, please deploy rke2 using a dual-stack cidr and verify that pods get two ips, one ipv4 and one ipv6. If possible, also verify that you can ping across pods

@ShylajaDevadiga
Copy link
Contributor

Validated on rke2 version v1.23.1-dev+571ca59a

$ cat /etc/rancher/rke2/config.yaml 
write-kubeconfig-mode: 644
token: <TOKEN>
cluster-cidr: 10.42.0.0/16,2001:cafe:42:0::/56
service-cidr: 10.43.0.0/16,2001:cafe:42:1::/112
cni: canal
node-ip: <ipv4 ip on interface>,<ipv6 ip on interface>
  • Pods have two ips, ipv4 and ipv6
$ kubectl get pod httpd-deployment-696bb85cfd-89jsq -o yaml |grep -w ip
  nodeName: ip-192-168-9-131
  - ip: 10.42.0.11
  - ip: 2001:cafe:42::b
  • Ping across pods is successful
 $ kubectl get pods -o wide|grep test
test-deployment-7f575ddf5d-lwbg5    1/1     Running   0          2m45s   10.42.0.12   ip-192-168-9-131   <none>           <none>
test-deployment-7f575ddf5d-vkhlt    1/1     Running   0          61s     10.42.0.13   ip-192-168-9-131   <none>           <none>

$ kubectl exec -it test-deployment-7f575ddf5d-lwbg5 bash
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
bash-5.1# ping 10.42.0.13
PING 10.42.0.13 (10.42.0.13) 56(84) bytes of data.
64 bytes from 10.42.0.13: icmp_seq=1 ttl=63 time=0.105 ms
64 bytes from 10.42.0.13: icmp_seq=2 ttl=63 time=0.070 ms
  • Validated basic networking functionality works as expected.
    Calico image version
$ kubectl describe pod -n kube-system rke2-canal-w9txw |grep Image
    Image:         rancher/hardened-calico:v3.21.2-build20220119

@ShylajaDevadiga
Copy link
Contributor

Validated above on rke2 version v1.23.2-rc2+rke2r1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants