kubernetes / kubernetes/website
Document how to set up TLS for a workload
- Dominant language
- HTML
- Stars
- 5.4k
- Forks
- 15.7k
- Avg merge
- 4d 18h
- Merged PRs (30d)
- 204
Description
**This is a Feature Request**
**What would you like to be added**
Add documentation that covers the different ways to protect communications in transit for a workload.
Explain prerequisites to include an understanding of SSL / TLS, maybe SNI and X.509 too. Help readers understand the topic and signpost away anyone looking for other docs (eg how to use TLS with the control plane)
Explain prerequisites to deploying TLS: stable hostname, private key, certificate
Maybe mention [ACME](https://tools.ietf.org/html/rfc8555) if this doesn't make the page too long.
_Discuss hosting options_:
- deploying Pods with containers that implement TLS themselves, along with a TCP-level Service, and a Secret to protect private key material
- setting up a Service that uses TLS (eg via a cloud provider extension)
- setting up an Ingress that uses TLS
- using [Gateway](https://gateway-api.sigs.k8s.io/api-types/gateway/)
What's next:
signpost readers to relevant add-ons, eg https://github.com/jetstack/cert-manager
signpost readers to learn about using
- hardware security modules
- hardware acceleration
- ~_whatever the generic term is for [AWS Certificate Manager for Nitro Enclaves](https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html)_~
using confidential computing mechanisms to access managed encryption services
for TLS.
**Why is this needed**
There are several options for using TLS in connection with Kubernetes for application workloads. If you learn N-1 of these, it's not easy to spot that you haven't encountered all of them.
**Comments**
The aim I have in mind is that there's a single page for the topic. If I meet someone who wants to learn about TLS for workloads on Kubernetes I give them a link to that page and they can find what they need to by reading the page and clicking links (they don't have to rely on the search form or on a 3rd-party search website).
If linking to 3rd party content, bear the [content guide](https://kubernetes.io/docs/contribute/style/content-guide/) in mind.
#14727 is kind of similar; it's more broadly focused on a encryption at rest in general. It feels OK to focus on TLS rather than the bigger picture of encryption in transit. Cluster operators are going to be much, much more likely to pick TLS to protect their application data over (eg) Kerberos or IPSEC.
Contributor guide
Assessment
This issue has not been assessed yet.