Repository navigation
feat(karpor): add optional Ingress for the karpor server - #132
Merged
Merged
Conversation
Add an ingress section to values.yaml and an Ingress template that routes to the karpor-server service. It is disabled by default, so existing installs are unchanged. The server only serves HTTPS on server.port, so the README shows the ingress-nginx backend-protocol annotation needed to reach it. Bump the chart version to 0.7.7. Ref: KusionStack/karpor#808 Co-authored-by: Iamrushabhshahh <rushabhshah842@gmail.com> Signed-off-by: Iamrushabhshahh <rushabhshah842@gmail.com>
elliotxx
approved these changes
Oct 15, 2026
elliotxx
left a comment
Collaborator
There was a problem hiding this comment.
Nice and clean, thanks! Default-off keeps upgrades safe. Maybe add a note that it needs Kubernetes 1.19+ (networking.k8s.io/v1). Otherwise LGTM.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes KusionStack/karpor#808 (the issue lives in the karpor repo; this is the chart side)
This adds an optional Ingress for the karpor server to the Helm chart, so users can expose Karpor with
--set ingress.enabled=trueinstead of writing their own Ingress.It builds on @debjotimallick's earlier attempt in #128, with two differences:
What changed
templates/ingress.yml: anetworking.k8s.io/v1Ingress namedkarpor-server. It routes each configured host and path to thekarpor-serverservice onserver.port.className,annotations,tlsandhostare optional.values.yaml: a newingresssection withenabled: false,className: "",annotations: {}, an example host andtls: [].README.md.gotmpl/README.md: a new Ingress section with an install example and the values table. I regenerated the README with helm-docs, and movedingress.*out of the General table.Chart.yaml: chart version 0.7.6 → 0.7.7.Why the backend annotation matters
The karpor server only listens on HTTPS (7443). I tested without the annotation, and ingress-nginx talks plain HTTP to the backend. Karpor then replies
400 Client sent an HTTP request to an HTTPS server. Withnginx.ingress.kubernetes.io/backend-protocol: HTTPS, it works. I documented this rather than setting it by default, because other controllers (Traefik, HAProxy, Gateway) use different annotations.How I tested it
These checks were on a kind cluster (v1.32), with ingress-nginx controller v1.12.1:
helm templatewith defaults renders no Ingress. Withingress.enabled=trueit renders a valid Ingress, including withtlsset and with an empty host.helm lintpasses, andyamllintpasses with.github/configs/lintconf.yaml.helm installwithingress.enabled=true,className=nginxand the backend-protocol annotation:GET /withHost: karpor.example.com→ 200,<title>Karpor - Intelligence for Kubernetes</title>GET /rest-api/v1/clusters→ 200Exposing the server over plain HTTP for Istio or gateway setups was also asked about in the issue. I left it out, because it needs a change in the server itself.
@elliotxx, could you review this when you have time? You opened #808 and look after the Karpor chart.