Configuring Talos
To install Calico, you first need to disable the default CNI. This can be done by applying a patch file during cluster creation. The store the following YAML template in a file (patch.yaml).
--config-patch argument to your talosctl gen config.
Installing Tigera Operator
Recommended way to install Calico is viaTigera-operator manifest. The operator will make sure that all Calico components are always up and running.
Note: If youβd like to install Calico using Helm, check out the Install using Helm documentation.Use the following command to install the latest Tigera operator.
Configuring Calico Networking
Calico has a pluggable dataplane architecture that lets you choose the networking technology based on your use case. You can configure the dataplane by setting thelinuxDataplane key in the installation manifest.
Note: To learn more about the available Calico configurations, check out the Installation reference documentation.
- eBPF
- NFTables
By default, Calico uses the After editing the file, apply it using:You can now safely disable Next, you have to configure Calico:
/var directory to mount cgroups. However, since this path is not writable in Talos, you need to change it to /sys/fs/cgroup.Use the following command to update the cgroup mount path:Note: To learn more about the available Calico configurations, check out the Calico installation API guide .In eBPF mode, Calico completely replaces the need for kube-proxy by programming all networking logic via eBPF programs. Before disabling kube-proxy, however, you need to ensure that Calico components can reach the API server. This can be done by creating a
kubernetes-services-endpoint ConfigMap.Store the following YAML template in a file (e.g., endpoint.yaml), and replace <API server host> and <API server port> with your Kubernetes API server host and port.
If KubePrism is enabled (which is the default), use localhost as the API server host and 7445 as the port.kube-proxy by using the following command:Deploy Calico Whisker Network Observability Stack
Use the following command to enable Calico observability stack:localhost:8081 to observe your policies and network flows.
Next steps
- Enable Calico Prometheus and Grafana integrations, click here to learn more.
Considerations
In eBPF mode, if you cannot disable kube-proxy for any reason please make sure to adjustBPFKubeProxyIptablesCleanupEnabled to false.
This can be done with kubectl as follows: