Skip to content

feat: course walkthrough and improvement suggestions - #1

Draft
mavogel wants to merge 10 commits into
achankra:mainfrom
mavogel:feat/course-walkthrough-and-improvement-suggestions
Draft

feat: course walkthrough and improvement suggestions#1
mavogel wants to merge 10 commits into
achankra:mainfrom
mavogel:feat/course-walkthrough-and-improvement-suggestions

Conversation

@mavogel

@mavogel mavogel commented Aug 23, 2026

Copy link
Copy Markdown

still a WIP

Signed-off-by: Manuel Vogel <8409778+mavogel@users.noreply.github.com>
@achankra

Copy link
Copy Markdown
Owner

Thanks mvogel

@achankra achankra left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

LGTM

@mavogel

mavogel commented Aug 27, 2026

Copy link
Copy Markdown
Author

I will provide more changes over the course of the next days. When done, I'll remove the draft status

… after chart version bumps

- pin gatekeeper chart version without leading 'v' (chart publishes unprefixed versions)
- fix K8sAllowedRegistries Rego logic: it denied an image unless it matched every
  allowed registry instead of at least one, so enforcement blocked almost everything
  once Gatekeeper actually started working
- allow-list quay.io, registry.k8s.io, registry.istio.io and ghcr.io, the registries
  the istio, prometheus and gatekeeper charts actually pull from
- add targetNamespace to istiod and kube-prometheus-stack so their resources land in
  istio-system/monitoring instead of flux-system
- drop invalid 'namespace'/'image' values from the istio gateway chart (rejected by
  its values schema; the gateway image is always resolved via sidecar injection)
- remove istio-injection: disabled from istio-system: it blocked the sidecar-injector
  webhook for every pod in the namespace, including the gateway's own image
  resolution; istiod already self-excludes via its own pod label
- size CPU/memory requests and limits across prometheus, grafana, the operator,
  alertmanager, node-exporter and the istio proxy sidecar, which previously fell
  back to a 500m LimitRange default (or Istio's 2000m sidecar default) and blew the
  namespace's ResourceQuota once Gatekeeper began enforcing
- drop the redundant Grafana default datasource: kube-prometheus-stack already
  provisions one, and both marked isDefault: true collided
…head

Each namespace's default-quota (limits.cpu: 4) couldn't fit the monitoring
stack once istio-injection added proxy sidecars to every pod and the
kube-prometheus-stack rolling update briefly ran old and new Grafana pods
side by side. Raise requests.cpu 2->3 and limits.cpu 4->8.
Istio only treats '*' as a wildcard when it is the first or last character
of the string. The trailing '/' after '*' made 'sa/*/' a literal string
that no real principal could ever equal, so the authorized-external-traffic
rule silently matched nothing.
- flux_is_ready ran 'flux check --pre', which only validates prerequisites
  and prints 'prerequisites checks passed', not 'all checks passed'. Drop
  --pre so it runs the full controller/CRD health check the test name and
  comment describe.
- istio_injection_enabled checked platform-system for istio-injection, but
  that namespace never carries the label (it's the Pulumi-managed platform
  namespace, unrelated to the mesh). Check monitoring instead, which is
  labeled istio-injection: enabled by platform-services.yaml.
Signed-off-by: Manuel Vogel <8409778+mavogel@users.noreply.github.com>
- scripts/port-forward.sh: start/stop/status background kubectl
  port-forwards, PIDs tracked in gitignored scripts/.port-forward.pids
- raise Grafana resources (cpu 500m->1, memory 512Mi->1Gi) - the
  200m/500m limits were causing readiness-probe timeouts under load
- document local UI access and Grafana admin credentials in Ch02
  and root README
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants