Kubernetes – often abbreviated as “K8s” – is an open source container orchestration platform. It provides a complete platform for scaling and managing applications that are deployed in containers. Kubernetes provides three core components for container orchestration:
- Control plane – The orchestration component responsible for the management of Kubernetes components such as clusters, nodes, and pods, and the networking among them.
- Management plane – The administration layer, with the components that administrators use to interact with Kubernetes. Such components include the Kubernetes API, Custom Resource Definitions (CRDs), manifests, Helm charts, and so on.
- Data plane – The traffic‑handling layer, with overlay and underlay networks among nodes, pods, and containers, as well as application services (apps and containers) which rely on the networking components. An application container in one pod communicating with an application container in another pod, using gRPC for example, is participating in the data plane.
Because Kubernetes is open source, a wide variety of vendors and projects provide their own implementations (which nevertheless all make use of the same core Kubernetes concepts). Many enterprises (or teams within them) start with small local implementations such as such as minikube or kind, graduate to on‑premises deployments on virtual machines (VMs) or even bare‑metal nodes, and then often migrate to managed Kubernetes cloud‑native solutions like Amazon Elastic Kubernetes Service (EKS), Azure Kubernetes Service (AKS), or Google Kubernetes Engine (GKE). Kubernetes is also becoming more common in PaaS solutions such as Red Hat OpenShift Container Platform and Rancher, both of which provide additional management tools for on‑premises private cloud‑like environments and support for scaling workloads externally as needed.
How Can NGINX Help?
NGINX provides a suite of products which run within Kubernetes environments:
NGINX Plus – A reverse proxy and load balancer that can perform multiple roles:
- NGINX Service Mesh – A lightweight but full‑featured service mesh designed around NGINX Plus, providing enterprise‑ready data plane security, scalability, and complete cluster‑wide traffic management.
- NGINX Ingress Controller – An enterprise ingress and egress controller for Kubernetes cluster traffic management and API gateway use cases.