Skip to content

Commit

Permalink
CI: Add Calico eBPF in HA mode test (kubernetes-sigs#7710)
Browse files Browse the repository at this point in the history
* Sample-Inventory: add sample for calico_bpf_enabled

* Calico-Doc: note about CONFIG_NET_SCHED for eBPF support

* CI: Add Calico eBPF in HA mode test
  • Loading branch information
cristicalin authored and LuckySB committed Oct 23, 2021
1 parent baba731 commit 67f38c1
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 0 deletions.
6 changes: 6 additions & 0 deletions .gitlab-ci/packet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,12 @@ packet_ubuntu18-flannel-containerd-ha-once:
extends: .packet_pr
when: manual

# Calico HA eBPF
packet_centos8-calico-ha-ebpf:
stage: deploy-part2
extends: .packet_pr
when: manual

packet_debian9-macvlan:
stage: deploy-part2
extends: .packet_pr
Expand Down
2 changes: 2 additions & 0 deletions docs/calico.md
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,8 @@ calico_bpf_enabled: true
kube_proxy_remove: true
```

**NOTE:** there is known incompatibility in using the `kernel-kvm` kernel package on Ubuntu OSes because it is missing support for `CONFIG_NET_SCHED` which is a requirement for Calico eBPF support. When using Calico eBPF with Ubuntu ensure you run the `-generic` kernel.

### Cleaning up after kube-proxy

Calico node cannot clean up after kube-proxy has run in ipvs mode. If you are converting an existing cluster to eBPF you will need to ensure the `kube-proxy` DaemonSet is deleted and that ipvs rules are cleaned.
Expand Down
3 changes: 3 additions & 0 deletions inventory/sample/group_vars/k8s_cluster/k8s-net-calico.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,9 @@
# calico_vxlan_vni: 4096
# calico_vxlan_port: 4789

# Cenable eBPF mode
# calico_bpf_enabled: false

# If you want to use non default IP_AUTODETECTION_METHOD for calico node set this option to one of:
# * can-reach=DESTINATION
# * interface=INTERFACE-REGEX
Expand Down
16 changes: 16 additions & 0 deletions tests/files/packet_centos8-calico-ha-ebpf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
# Instance settings
cloud_image: centos-8
mode: ha
vm_memory: 3072Mi

# Kubespray settings
kube_network_plugin: calico
deploy_netchecker: true

calico_bpf_enabled: true
kube_proxy_remove: true
loadbalancer_apiserver_localhost: true
use_localhost_as_kubeapi_loadbalancer: true

auto_renew_certificates: true

0 comments on commit 67f38c1

Please sign in to comment.