Skip to content

Latest commit

 

History

History
54 lines (28 loc) · 2 KB

README.md

File metadata and controls

54 lines (28 loc) · 2 KB

Cilium Cluster Mesh Sandbox

Terraform project to deploy Kubernetes clusters on AWS and GCP interconnected over a Site-to-Site VPN. The projects does not use best-practices to deploy cloud infrastructure on the Cloud. The goal is to deploy de underlay required to connect EKA and GKE cluster with Cilium using Cilium Mesh.

Useful commands

  • Get Kubeconfig contexts

      kubectl config get-contexts
    
  • Rename a Kubeconfig context

      kubectl config rename-context <old_context_name> <new_context_name>
    
  • Set default context

      kubectl config use-context <context_name>
    
  • Delete a Kubeconfig context

      kubectl config delete-context <context_name>
    

Instructions

  • Get Kubeconfig from EKS

      aws eks update-kubeconfig --region us-east-1 --name eks-cilium 
    
  • Install Cilium on EKS

      cilium install   --datapath-mode tunnel   --set cluster.id=1   --set cluster.name=eks-cilium   --set eni.enabled=false   --set tunnel=vxlan --set ipam.mode=cluster-pool   --set ipam.operator.clusterPoolIPv4PodCIDRList=10.222.0.0/16   --set ipam.operator.clusterPoolIPv4MaskSize=24
    
  • Install AWS Load Balancer Controller

      helm repo add eks https://aws.github.io/eks-charts
      helm install aws-load-balancer-controller eks/aws-load-balancer-controller -n kube-system --set clusterName=eks-cilium --set hostNetwork=true --set replicaCount=1
    
  • Get Kubeconfig from GKE

      gcloud container clusters get-credentials gke-cilium --zone us-central1-a --project gke-cilium-443902
    
  • Install Cilium on GKE

      cilium install   --datapath-mode tunnel   --set cluster.id=2   --set cluster.name=gke-cilium   --set eni.enabled=false   --set tunnel=vxlan --set ipam.mode=cluster-pool   --set ipam.operator.clusterPoolIPv4PodCIDRList=10.111.0.0/16   --set ipam.operator.clusterPoolIPv4MaskSize=24
    
  • Enable Cluster Mesh

      cilium clustermesh enable --context eks
      cilium clustermesh enable --context gke
    
  • Connect clusters

      cilium clustermesh connect --context eks --destination-context gke