Skip to content

Clarify ACME challenge scheduling behaviour#2097

Open
wallrj wants to merge 1 commit into
cert-manager:masterfrom
wallrj:wallrj/docs/acme-challenge-scheduling-context
Open

Clarify ACME challenge scheduling behaviour#2097
wallrj wants to merge 1 commit into
cert-manager:masterfrom
wallrj:wallrj/docs/acme-challenge-scheduling-context

Conversation

@wallrj
Copy link
Copy Markdown
Member

@wallrj wallrj commented May 13, 2026

What this PR does

Clarifies the ACME challenge scheduling documentation.

This updates the ACME concepts, configuration, and troubleshooting pages to explain that challenge scheduling is intentionally conservative, and that the scheduler should be understood as a coarse back-pressure mechanism rather than a fairness or policy layer.

Related to cert-manager/cert-manager#8781 and cert-manager/cert-manager#8643.

Why

The current documentation explains what the scheduler does, but not clearly why it behaves this way.

In particular, this PR adds context that:

  • cert-manager self-checks from a single network and DNS viewpoint;
  • different solver backends do not reliably imply independent ACME-visible validation paths;
  • the scheduler therefore keeps a coarse conflict key by design; and
  • multi-tenant isolation and DNS-name ownership constraints are better handled through policy, approval, admission, or separate deployments.

It also adds cross-links from the ACME configuration and troubleshooting pages back to the concepts page, and to the policy documentation.

@cert-manager-prow cert-manager-prow Bot added the dco-signoff: yes Indicates that all commits in the pull request have the valid DCO sign-off message. label May 13, 2026
@cert-manager-prow
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign wallrj for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@cert-manager-prow cert-manager-prow Bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label May 13, 2026
@netlify
Copy link
Copy Markdown

netlify Bot commented May 13, 2026

Deploy Preview for cert-manager ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit d41b2b0
🔍 Latest deploy log https://app.netlify.com/projects/cert-manager/deploys/6a041c02ecf5990008aa9feb
😎 Deploy Preview https://deploy-preview-2097--cert-manager.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.


The maximum number of challenges that can be processed at a time is 60 as of
[`ddff78`](https://github.com/cert-manager/cert-manager/blob/ddff78f011558e64186d61f7c693edced1496afa/pkg/controller/acmechallenges/scheduler/scheduler.go#L31-L33). No newline at end of file
This scheduler is a coarse back-pressure mechanism. It applies a cap on the
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have expanded this section because the corresponding code change in cert-manager/cert-manager#8781 is primarily documenting design intent rather than altering behaviour. The aim here is to make the same reasoning visible to documentation readers: the scheduler is intentionally conservative because a single cert-manager instance performs self-checks from one network and DNS viewpoint, and this is not the right layer to enforce multi-tenant isolation or DNS-name ownership policy.

Signed-off-by: Richard Wall <richard@the-moon.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates that all commits in the pull request have the valid DCO sign-off message. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant