-
Notifications
You must be signed in to change notification settings - Fork 56
Building Calico with Kubernetes
Calico enables networking and network policy in Kubernetes clusters across the cloud. The instructions provided you the steps to integrate Calico with Kubernetes on Linux on IBM Z for following distribution:
- RHEL (8.8, 8.10, 9.2, 9.4. 9.5)
- SLES (15 SP6)
- Ubuntu (22.04, 24.04, 24.10)
-
When following the steps below please use a standard permission user unless otherwise specified.
-
A directory
/<source_root>/
will be referred to in these instructions, this is a temporary writable directory anywhere you'd like to place it. -
Following build instructions were tested using Kubernetes version 1.31
Instructions for building the basic Calico components, which includes calico/ctl
, calico/node
and calico/kube-controllers
can be found here.
Once you have all necessary components built on Z systems, you can
-
Configure and run your Kubernetes following here
-
Install Calico as per instructions; ensure
tigera-opeartor.yaml
andcustom-resources.yaml
have correct values reflecting the operational cluster:
kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.29.3/manifests/tigera-operator.yaml
kubectl create -f https://raw.githubusercontent.com/projectcalico/calico/v3.29.3/manifests/custom-resources.yaml
- Following
pods
are expected following a successful deployment:
NAMESPACE NAME READY STATUS RESTARTS AGE
calico-apiserver calico-apiserver-5d6d9cbbdf-br5sr 1/1 Running 0 50m
calico-apiserver calico-apiserver-5d6d9cbbdf-jw4sb 1/1 Running 0 50m
calico-system calico-kube-controllers-86b95bfcd6-cdr9n 1/1 Running 0 2m2s
calico-system calico-node-6t6zp 1/1 Running 0 60s
calico-system calico-typha-68dfc6dcd9-9w5wk 1/1 Running 0 2m2s
calico-system csi-node-driver-fptl6 2/2 Running 0 2m2s
kube-system coredns-76f75df574-hz62d 1/1 Running 0 50m
kube-system coredns-76f75df574-qhf7b 1/1 Running 0 50m
kube-system etcd-c3879v1.fyre.ibm.com 1/1 Running 0 49m
kube-system kube-apiserver-c3879v1.fyre.ibm.com 1/1 Running 0 49m
kube-system kube-controller-manager-c3879v1.fyre.ibm.com 1/1 Running 0 49m
kube-system kube-proxy-qfh5z 1/1 Running 0 49m
kube-system kube-scheduler-c3879v1.fyre.ibm.com 1/1 Running 0 49m
tigera-operator tigera-operator-56b74f76df-2v4g5 1/1 Running 0 49m
3. (Optional) Install Calico for policy and flannel (aka Canal) for networking
-
Ensure you have a Calico compatible Kubernetes cluster
-
Download and install flannel networking manifest for the Kubernetes API datastore
curl https://raw.githubusercontent.com/projectcalico/calico/v3.29.3/manifests/canal.yaml -O
kubectl apply -f canal.yaml
- Following
pods
are expected upon successful deployment:
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-cc5755cd7-jz4pw 1/1 Running 0 19s
kube-system canal-dt75q 2/2 Running 0 19s
kube-system coredns-7c65d6cfc9-9gwb5 1/1 Running 0 26s
kube-system coredns-7c65d6cfc9-m762v 1/1 Running 0 26s
kube-system etcd-calico-k8s-rh95-z1.fyre.ibm.com 1/1 Running 0 30s
kube-system kube-apiserver-calico-k8s-rh95-z1.fyre.ibm.com 1/1 Running 0 30s
kube-system kube-controller-manager-calico-k8s-rh95-z1.fyre.ibm.com 1/1 Running 0 30s
kube-system kube-proxy-pqgfg 1/1 Running 0 26s
kube-system kube-scheduler-calico-k8s-rh95-z1.fyre.ibm.com 1/1 Running 0 32s
The information provided in this article is accurate at the time of writing, but on-going development in the open-source projects involved may make the information incorrect or obsolete. Please open issue or contact us on IBM Z Community if you have any questions or feedback.