---
layout: docs
page_title: Consul on Kubernetes
description: >-
  Consul supports Kubernetes natively, allowing you to deploy Consul sidecars to a Kubernetes service mesh and sync the k8s service registry with non-k8s services. Learn how to install Consul on Kubernetes with Helm or the Consul K8s CLI and get started with tutorials.
---

# Consul on Kubernetes

Consul has many integrations with Kubernetes. You can deploy Consul
to Kubernetes using the [Helm chart](/consul/docs/k8s/installation/install#helm-chart-installation) or [Consul K8s CLI](/consul/docs/k8s/installation/install-cli#consul-k8s-cli-installation), sync services between Consul and
Kubernetes, run Consul Service Mesh, and more.
This section documents the official integrations between Consul and Kubernetes.

## Use Cases

**Consul Service Mesh**: 
Consul can automatically inject the [Consul Service Mesh](/consul/docs/connect)
sidecar into pods so that they can accept and establish encrypted
and authorized network connections with mutual TLS. And because Consul Service Mesh
can run anywhere, pods and external services can communicate with each other over a fully encrypted connection.

**Service sync to enable Kubernetes and non-Kubernetes services to communicate**: 
Consul can sync Kubernetes services with its own service registry. This service sync allows
Kubernetes services to use Kubernetes' native service discovery capabilities to discover
and connect to external services registered in Consul, and for external services
to use Consul service discovery to discover and connect to Kubernetes services.

**Additional integrations**: Consul can run directly on Kubernetes, so in addition to the
native integrations provided by Consul itself, any other tool built for
Kubernetes can leverage Consul.

## Version compatibility

The following table lists versions of Kubernetes across the three major cloud providers and the currently supported Consul versions they have been tested with.

@include 'tables/compatibility/k8s/providers.mdx'

The following table describes the general compatibility between Consul and Kubernetes versions.

@include 'tables/compatibility/k8s/version.mdx'

## Getting Started With Consul and Kubernetes

There are several ways to try Consul with Kubernetes in different environments.

### Tutorials

- The [Getting Started with Consul Service Mesh track](/consul/tutorials/get-started-kubernetes)
  provides guidance for installing Consul as service mesh for Kubernetes using the Helm
  chart, deploying services in the service mesh, and using intentions to secure service
  communications.

- The [Migrate to Microservices with Consul Service Mesh on Kubernetes](/consul/tutorials/microservices?utm_source=docs)
  collection uses an example application written by a fictional company to illustrate why and how organizations can
  migrate from monolith to microservices using Consul service mesh on Kubernetes. The case study in this collection
  should provide information valuable for understanding how to develop services that leverage Consul during any stage
  of your microservices journey.

- The [Consul and Minikube guide](/consul/tutorials/kubernetes/kubernetes-minikube?utm_source=docs) is a quick step-by-step guide for deploying Consul with the official Helm chart on a local instance of Minikube.

- Review production best practices and cloud-specific configurations for deploying Consul on managed Kubernetes runtimes.

  - The [Consul on Azure Kubernetes Service (AKS) tutorial](/consul/tutorials/kubernetes/kubernetes-aks-azure?utm_source=docs) is a complete step-by-step guide on how to deploy Consul on AKS. The guide also allows you to practice deploying two microservices.
  - The [Consul on Amazon Elastic Kubernetes Service (EKS) tutorial](/consul/tutorials/kubernetes/kubernetes-eks-aws?utm_source=docs) is a complete step-by-step guide on how to deploy Consul on EKS. Additionally, it provides guidance on interacting with your datacenter with the Consul UI, CLI, and API.
  - The [Consul on Google Kubernetes Engine (GKE) tutorial](/consul/tutorials/kubernetes/kubernetes-gke-google?utm_source=docs) is a complete step-by-step guide on how to deploy Consul on GKE. Additionally, it provides guidance on interacting with your datacenter with the Consul UI, CLI, and API.

- The [Consul and Kubernetes Reference Architecture](/consul/tutorials/kubernetes/kubernetes-reference-architecture?utm_source=docs) guide provides recommended practices for production.

- The [Consul and Kubernetes Deployment](/consul/tutorials/kubernetes/kubernetes-deployment-guide?utm_source=docs) tutorial covers the necessary steps to install and configure a new Consul cluster on Kubernetes in production.

- The [Secure Consul and Registered Services on Kubernetes](/consul/tutorials/kubernetes/kubernetes-secure-agents?utm_source=docs) tutorial covers
  the necessary steps to secure a Consul cluster running on Kubernetes in production.

- The [Layer 7 Observability with Consul Service Mesh](/consul/tutorials/kubernetes/kubernetes-layer7-observability) tutorial covers monitoring a
  Consul service mesh running on Kubernetes with Prometheus and Grafana.

### Documentation

- [Installing Consul](/consul/docs/deploy/server/k8s/helm) covers how to install Consul using the Helm chart.
- [Helm Chart Reference](/consul/docs/reference/k8s/helm) describes the different options for configuring the Helm chart.
