I'm new to k8s and trying to grasp the infrastructure concepts, and trying to apply them in AWS. I know a k8s cluster has a control plane, which has the management nodes, and a data plane, which has the worker nodes. Do they have to run on their own respective VPC, or can they run on the same VPC? I hope that makes sense.

  • I'm a little confused by the wording of your question. Are you asking if the kubernetes control plane sits in the same VPC as the worker nodes? Commented Dec 19, 2020 at 5:05
  • Yes, @jonas answered it below.
    – Chris F
    Commented Dec 21, 2020 at 1:31

1 Answer 1


For Amazon EKS, the control plane is running in a separate VPC that is managed by Amazon. You only need to care about the VPC for the worker nodes.

Amazon EKS control plane – Deployed and managed by Amazon EKS in an Amazon EKS managed VPC. When you create the cluster, Amazon EKS creates and manages network interfaces in your account that have Amazon EKS in their description. These network interfaces allow AWS Fargate and Amazon EC2 instances to communicate with the control plane.

From Amazon EKS Networking

  • Thanks, and that good that, not only do I understand it correctly, I'm glad it's done that way!
    – Chris F
    Commented Dec 21, 2020 at 1:32
  • Follow up question. When creating a cluster (either EKS console or eksctl), is the provided VPC and subnet info then for the data plane, i.e., NOT for the control plane?
    – Chris F
    Commented Feb 15, 2021 at 21:56
  • yes, that is correct. See the picture here docs.aws.amazon.com/eks/latest/userguide/eks-networking.html
    – Jonas
    Commented Feb 15, 2021 at 21:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.