Skip to main content
Version: 3.27 (latest)

Schedule Typha for scaling to well-known nodes

Big picture​

Schedule Typha to well-known nodes.

Value​

By scheduling Typha to well-known nodes, you can reduce the number of nodes which expose Typha's listen port.

Concepts​

Typha​

Typha is a Calico component which improves scalability and reduces the impact that large clusters may have on the Kubernetes API. Typha agents must accept connections from other agents on a fixed port.

As part of the Calico bootstrap infrastructure, Typha must be available before pod networking begins and uses host networking instead. It opens a port on the node it is scheduled on. By default, it can get scheduled to any node and opens TCP 5473.

How to​

Tell if you have installed Typha​

Operator based installations always include Typha.

Schedule Typha to well-known nodes​

You can use the Installation API to configure a node affinity for Typha pods. The operator supports both preferredDuringSchedulingIgnoredDuringExecution and requiredDuringSchedulingIgnoredDuringExecution options.

For example, to require the scheduler to place Typha on nodes with the label "typha=allowed":

kind: Installation
apiVersion: operator.tigera.io/v1
metadata:
name: default
spec:
typhaAffinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- matchExpressions:
- key: typha
operator: In
values:
- allowed