open-consul/website/source/docs/platform/k8s/index.html.md
Blake Covarrubias bc42074f57
docs: Miscellaneous docs cleanup (#6742)
Fix spelling errors, API doc inconsistencies, and formatting issues.

* Fix several spelling errors.
* Prepend / to v1/event/list path in Watches.
* Rename script handlers to match Watch type.
* Remove /v1 path prefix on service health API endpoints.

Makes request path consistent with the rest of the HTTP API
documentation which does not include the /v1 prefix.

* Fix bracket formatting issue on Telemetry page.

The HTML codes used for brackets inside of the code block are not
interpolated, and are shown as literal strings.

Replace the numeric HTML codes with the intended character value to
fix display formatting.

Also placed variable reference on agent/options.html inside code block
for consistency with the presentation of other options on the page.

* Add missing word to Coordinate.Node docstring.

Resolves #6014
2019-11-05 20:34:46 -08:00

4.3 KiB

layout page_title sidebar_current description
docs Kubernetes docs-platform-k8s-index Consul has many integrations with Kubernetes. You can deploy Consul to Kubernetes using the Helm chart, sync services between Consul and Kubernetes, automatically secure Pod communication with Connect, and more. This section documents the official integrations between Consul and Kubernetes.

Kubernetes

Consul has many integrations with Kubernetes. You can deploy Consul to Kubernetes using the Helm chart, sync services between Consul and Kubernetes, automatically secure Pod communication with Connect, and more. This section documents the official integrations between Consul and Kubernetes.

Use Cases

Running a Consul server cluster: The Consul server cluster can run directly on Kubernetes. This can be used by both nodes within Kubernetes as well as nodes external to Kubernetes, as long as they can communicate to the server nodes via the network.

Running Consul clients: Consul clients can run as pods on every node and expose the Consul API to running pods. This enables many Consul tools such as envconsul, consul-template, and more to work on Kubernetes since a local agent is available. This will also register each Kubernetes node with the Consul catalog for full visibility into your infrastructure.

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

Automatic encryption and authorization for pod network connections: Consul can automatically inject the Connect sidecar into pods so that they can accept and establish encrypted and authorized network connections via mutual TLS. And because Connect can run anywhere, pods can also communicate with external services (and vice versa) over a fully encrypted connection.

And more! Consul can run directly on Kubernetes, so in addition to the native integrations provided by Consul itself, any other tool built for Kubernetes can choose to leverage Consul.

Getting Started With Consul and Kubernetes

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

  • The [Consul and minikube guide](https://learn.hashicorp.com/consul/ getting-started-k8s/minikube?utm_source=consul.io&utm_medium=docs) is a quick walk through of how to deploy Consul with the official Helm chart on a local instance of Minikube.

  • The [Deploying Consul with Kubernetes guide](https://learn.hashicorp.com/ consul/getting-started-k8s/minikube?utm_source=consul.io&utm_medium=docs) walks you through deploying Consul on Kubernetes with the official Helm chart and can be applied to any Kubernetes installation type.

  • The [Kubernetes on Azure guide](https://learn.hashicorp.com/consul/ getting-started-k8s/azure-k8s?utm_source=consul.io&utm_medium=docs) is a complete walk through on how to deploy Consul on AKS.

  • The Consul and Kubernetes Reference Architecture guide provides recommended practices for production.

  • The Consul and Kubernetes Deployment guide covers the necessary steps to install and configure a new Consul cluster on Kubernetes in production.

"consul-k8s" Project

The dedicated consul-k8s project contains the integration functionality between Consul and Kubernetes. You generally will not need to invoke this project directly since the Helm chart automates the installation and configuration of the project when necessary.

We may integrate this functionality directly into Consul in the future, but the separate project allows us to iterate and version the Kubernetes functionality separately. Additionally, a lot of the functionality works across multiple Consul versions, so you're able to update and resolve any Kubernetes integration issues without also upgrading Consul itself which can be more difficult.