linkerd / linkerd/linkerd2

Please make use of cert-rotator library

Open
#9,702 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement needs/design pinned
Dominant language
Go
Stars
11.5k
Forks
1.4k
Avg merge
3d 22h
Merged PRs (30d)
53

Description

### What problem are you trying to solve?

Certificate management for Linkerd currently appears to be handled by the `linkerd install` command, which makes dealing with certificate rotations something that administrators have to care about when applying the chart to their clusters and during upgrades even in the case of users who don't care to provide their own certs, but want to run their `linkerd install` command through `kustomize` as described in the documentation.

### How should the problem be solved?

Recently it came to my attention that the OPA Gatekeeper team has solved this with a Go library they make available [here](https://github.com/open-policy-agent/cert-controller) and include in the Gatekeeper code itself to manage the certificates, which makes this 100% hands off for users who do not wish to provide their own certs, and they provide a flag to the gatekeeper binary `/manager` as well to disable the certificate generation and rotation for users who do wish to provide their own.

This issue intends to request that Linkerd make use of the same library, and offer an option to disable the generation and rotation in the same way as Gatekeeper offers.

This would ease the rollout of certificates during the initial deployment by removing the code from the helm chart, would additionally automate the renewal and updating for users who don't provide their own certs but want to run `linkerd install` through `kustomize`, and additionally will still allow for the certs to be managed either manually or via cert-manager for users who do wish to provide their own certs.

### Any alternatives you've considered?

The way it's being done now...

### How would users interact with this feature?

They shouldn't need to unless they are providing their own certs.

In Gatekeeper installs for users who do provide their own certs, users simply add `--disable-cert-rotation=true` to the deployment manifest, which can easily be done via `kustomize` for linkerd.

## Additional info

Unfortunately, I am not skilled in Go at this time to be able to help contribute this feature.

### Would you like to work on this feature?

no

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing how certificates are currently handled by the linkerd install command and the Helm chart, then compare the requested approach with the cert-controller library. Done means certificate generation and rotation work automatically for users without custom certificates while an option disables them for users managing certificates themselves.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, helm, kubernetes
Domain
devops, infrastructure, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.