A teaching-first, single-cluster GitOps setup: Talos Linux + Argo CD with an app-of-apps layout, MetalLB pre-installed for real LoadBalancer IPs on bare metal, a demo app, and a progressive docs/ walkthrough with a CLAUDE.md tutor persona and guided bootstrap checklist. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
20 lines
817 B
YAML
20 lines
817 B
YAML
# L2Advertisement is what actually makes addresses from the pool reachable:
|
|
# it tells MetalLB to answer ARP requests for whichever address a Service
|
|
# was given, from whichever node currently hosts that Service. This is
|
|
# "Layer 2 mode" — the simplest of MetalLB's two modes, and the right
|
|
# choice here since it needs no cooperation from your router (the
|
|
# alternative, BGP mode, does — worth knowing exists if you outgrow a
|
|
# single L2 segment, not needed for this setup).
|
|
# Same sync-wave reasoning as ipaddresspool.yaml — deferred to wave "1" so
|
|
# it applies after MetalLB's own chart resources are up.
|
|
apiVersion: metallb.io/v1beta1
|
|
kind: L2Advertisement
|
|
metadata:
|
|
name: default
|
|
namespace: metallb-system
|
|
annotations:
|
|
argocd.argoproj.io/sync-wave: "1"
|
|
spec:
|
|
ipAddressPools:
|
|
- default-pool
|