linkerd / linkerd/linkerd2

controller to roll pods that are not injected but should be

Open
#4,015 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

area/controller gsoc help wanted
Dominant language
Go
Stars
11.5k
Forks
1.4k
Avg merge
3d 22h
Merged PRs (30d)
53

Description

## Feature Request

One the the challenges of using Linkerd auto-injection is dealing with silent failure. How about taking the K8s approach of controllers that continuously work to achieve a target state? In this case, I suggest a controller the continuously scans all pods and namespaces with the linkerd injection annotation. When the controller finds a pod that has the annotation but does not have the proper linkerd sidecar, it restarts the pod.

The alternative to this is some set of alerts that each client must hand craft and then respond to.

One could make this controller an optional component.

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

No files, tests, or entry points are named. Start by reviewing Linkerd's existing injection and Kubernetes controller architecture, then define the scope for detecting annotated pods without the expected sidecar and restarting them. Done would require an agreed optional controller design, behavior, and validation plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
devops, infrastructure
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.