1. Initialization  

Link download:


Link :

Calico is an open-source networking and network security solution for containers, virtual machines, and bare-metal workloads. Calico uses standard Linux networking tools to provide two major services for Cloud Native applications:

  • Network connectivity between workloads.
  • Network security policy enforcement between workloads

Choose download ZIP

Choose extract files

Getting Started Developing Calico

Calico is an open source project, and welcomes your contribution, be it through code, a bug report, a feature request, or user feedback.


Use Calico for NetworkPolicy

This page shows a couple of quick ways to create a Calico cluster on Kubernetes.

Before you begin

Decide whether you want to deploy a cloud or local cluster.

Creating a Calico cluster with Google Kubernetes Engine (GKE)

Prerequisite: gcloud.

  1. To launch a GKE cluster with Calico, include the –enable-network-policy flag.
    Syntax gcloud container clusters create [CLUSTER_NAME] –enable-network-policy
  2. Example gcloud container clusters create my-calico-cluster –enable-network-policy
  3. To verify the deployment, use the following command.kubectl get pods –namespace=kube-system
  4. The Calico pods begin with calico. Check to make sure each one has a status of Running

Creating a local Calico cluster with kubeadm

To get a local single-host Calico cluster in fifteen minutes using kubeadm, refer to the Calico Quickstart.

Install Calico

Install Calico on nodes and hosts for popular orchestrators, and install the calicoctl command line interface (CLI) tool.


Get Calico up and running in your Kubernetes cluster.


Install Calico networking and network policy for OpenStack.

Non-cluster hosts

Install Calico on hosts to secure host communications.


Install and configure the Calico CLI for managing resources.

Install Calico

Install the Tigera Calico operator and custom resource definitions.
kubectl create -f

  1. Install Calico by creating the necessary custom resource. For more information on configuration options available in this manifest, see the installation reference.
    kubectl create -f
  2. Note: Before creating this manifest, read its contents and make sure its settings are correct for your environment. For example, you may need to change the default IP pool CIDR to match your pod network CIDR.Confirm that all of the pods are running with the following kubectl get pods -n calico-system
  3. Wait until each pod has the STATUS of Running. Note: The Tigera operator installs resources in the calico-system namespace. Other install methods may use the kube-system namespace instead.Remove the taints on the master so that you can schedule pods on it.kubectl taint nodes –all
  4.  It should return the following. node/<your-hostname> untainted
  5. Confirm that you now have a node in your cluster with the following command.
    kubectl get nodes -o wide
  6. It should return something like the following.
    NAME              STATUS   ROLES    AGE   VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION    CONTAINER-RUNTIME<your-hostname>   Ready    master   52m   v1.12.2   <none>        Ubuntu 18.04.1 LTS   4.15.0-1023-gcp   docker://18.6.1

Congratulations! You now have a single-host Kubernetes cluster with Calico.