docs(talos): cut the narration out of the machine config patches #680

Merged
k.renner merged 1 commits from trim-comments-talos into master 2026-08-28 04:34:43 +00:00
Member

242 Kommentarzeilen raus, 91 rein, über die vier handgeschriebenen Talos-Patches. Der Diff fasst ausschließlich Kommentare an — nach Nicht-Kommentarzeilen gefiltert ist er leer:

$ git diff -U0 -- kubernetes/talos/ | grep -E ^[+-] | grep -v ^[+-]{3} | grep -v ^[+-]\s*#
(leer)

Geblieben ist, was ändert, was jemand beim Bearbeiten dieser Zeile tut: Disks per Seriennummer wählen, sonst nimmt der Installer das OSD-Laufwerk. VolumeConfig greift nur bei der Erstprovisionierung und wird danach still ignoriert. Der LinkAliasConfig-Versuch, der einen Node ohne jede Adresse zurückließ. Dass kube-apiserver einem Re-IP nicht folgt. Dass die Fallback-Links v6-deaktiviert bleiben müssen, sonst verliert der Cluster IPv6-Egress. Dass das Installer-Image vom Image Factory kommt und sein Tag zur Zielversion passen muss.

Gegangen ist, wie das jeweils herausgefunden wurde: die Untersuchung der vier gleichrangigen Default-Routen, die 30 Stunden NetBird-Probes, die Image-GC-Messung auf k8s-2 bis auf den Prozentpunkt, die Begründung jeder einzelnen Extension im Schematic. Steht alles in der Historie und im Wiki.

Und vier Stellen waren schlicht falsch — der eigentliche Grund, das überhaupt zu tun:

  • k8s-1.yaml begann mit „k8s-2 und k8s-3 sind noch Proxmox-VMs". Alle drei sind seit neptunes Umbau Bare Metal, DMI meldet auf jedem Minisforum.
  • Zwei Dateien begründeten den Disk-Selektor mit „Talos und Proxmox sind sich über die Reihenfolge nicht einig". Es gibt kein Proxmox.
  • Drei Dateien trugen Verschleißwerte (87 %, 81 %, 83 %), eine davon eine exakte Media-Error-Zahl. Das sind Messwerte, die wandern, und ein Config-File wird dabei nie neu gelesen.
  • Der mgmt0-Kommentar erklärte VLAN 40 damit, welche Adresse die k8s-1-VM früher über diesen Port erreichte.

Eine Sache habe ich entfernt, die sonst nirgends steht: ob k8s-1s 18 Media-Errors historisch oder fortlaufend sind, war nur in dieser Datei festgehalten, und #549 ist geschlossen. Ich mache dafür ein eigenes Issue auf, statt es beim Aufräumen zu verlieren.

**242 Kommentarzeilen raus, 91 rein**, über die vier handgeschriebenen Talos-Patches. Der Diff fasst ausschließlich Kommentare an — nach Nicht-Kommentarzeilen gefiltert ist er leer: ``` $ git diff -U0 -- kubernetes/talos/ | grep -E ^[+-] | grep -v ^[+-]{3} | grep -v ^[+-]\s*# (leer) ``` **Geblieben ist, was ändert, was jemand beim Bearbeiten dieser Zeile tut:** Disks per Seriennummer wählen, sonst nimmt der Installer das OSD-Laufwerk. VolumeConfig greift nur bei der Erstprovisionierung und wird danach still ignoriert. Der LinkAliasConfig-Versuch, der einen Node ohne jede Adresse zurückließ. Dass kube-apiserver einem Re-IP nicht folgt. Dass die Fallback-Links v6-deaktiviert bleiben müssen, sonst verliert der Cluster IPv6-Egress. Dass das Installer-Image vom Image Factory kommt und sein Tag zur Zielversion passen muss. **Gegangen ist, wie das jeweils herausgefunden wurde:** die Untersuchung der vier gleichrangigen Default-Routen, die 30 Stunden NetBird-Probes, die Image-GC-Messung auf k8s-2 bis auf den Prozentpunkt, die Begründung jeder einzelnen Extension im Schematic. Steht alles in der Historie und im Wiki. **Und vier Stellen waren schlicht falsch** — der eigentliche Grund, das überhaupt zu tun: - `k8s-1.yaml` begann mit „k8s-2 und k8s-3 sind noch Proxmox-VMs". Alle drei sind seit neptunes Umbau Bare Metal, DMI meldet auf jedem Minisforum. - Zwei Dateien begründeten den Disk-Selektor mit „Talos und Proxmox sind sich über die Reihenfolge nicht einig". Es gibt kein Proxmox. - Drei Dateien trugen Verschleißwerte (87 %, 81 %, 83 %), eine davon eine exakte Media-Error-Zahl. Das sind Messwerte, die wandern, und ein Config-File wird dabei nie neu gelesen. - Der mgmt0-Kommentar erklärte VLAN 40 damit, welche Adresse die *k8s-1-VM* früher über diesen Port erreichte. --- **Eine Sache habe ich entfernt, die sonst nirgends steht:** ob k8s-1s 18 Media-Errors historisch oder fortlaufend sind, war nur in dieser Datei festgehalten, und #549 ist geschlossen. Ich mache dafür ein eigenes Issue auf, statt es beim Aufräumen zu verlieren.
claude-bot added 1 commit 2026-08-28 04:28:23 +00:00
docs(talos): cut the narration out of the machine config patches
ci/woodpecker/pr/ci-manifests-test Pipeline was successful
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
ci/woodpecker/pr/pr-review Pipeline was successful
ed86592978
242 comment lines out, 91 in, across the four hand-written Talos patches. The
diff touches nothing but comments — filtering it for non-comment lines returns
empty.

Kept, because each changes what someone editing that line would do: select
disks by serial or the installer takes the OSD drive; EPHEMERAL volume config
applies only on first provision and is silently ignored afterwards; the
LinkAliasConfig attempt that left a node with no address on any interface;
kube-apiserver not following a node re-IP; the fallback-network links must stay
v6-disabled or the cluster loses IPv6 egress; the installer image is Image
Factory and not the stock one, and its tag must match the version being upgraded
to.

Cut: how each of those was discovered. The four-equal-priority-routes
investigation, the 30 hours of NetBird probes, the image-GC measurement on
k8s-2 down to the percentage point, the per-extension rationale for the
schematic. All of it is in the commit history and the wiki.

Cut as stale rather than merely long, which is the point of doing this at all:

  - k8s-1.yaml opened by saying k8s-2 and k8s-3 are still Proxmox VMs. All
    three have been bare metal since neptune's conversion; DMI reports
    Minisforum on every one.
  - two files justified a disk selector with "Talos and Proxmox do not agree
    on that order". There is no Proxmox.
  - three files carried per-drive wear figures (87%, 81%, 83%) and one an
    exact media-error count. Those are measurements, they move, and a config
    file never gets re-read when they do.
  - the mgmt0 note explained VLAN 40 by way of which address the k8s-1 VM
    used to reach over that port.

One thing removed here has no other home: whether k8s-1's 18 media errors are
historical or ongoing was written up in this file and nowhere else, and #549 is
closed. Tracking it separately rather than losing it.
review-bot left a comment
Member

🤖 Automated review — model claude-haiku-4-5-20251001 (complexity: trivial), commit ed86592978d87435b267b58bee8600af8dc0a4b9.

Advisory review by the review-bot pipeline. It never approves; a human merges. Push new commits to get a fresh review.


Summary

This PR removes verbose, historically-focused commentary from four Talos machine configuration files while preserving essential operational guidance. All 242 lines removed are comments only; the diff filtered for non-comment lines is empty. The changes correct factually incorrect statements (references to non-existent Proxmox infrastructure, static wear percentages, outdated VM-era descriptions) and replace them with concise, actionable guidance. Orphaned information about k8s-1 media errors is being tracked separately in a new issue rather than embedded in config comments. No blocking issues.

🟡 Suggestions

  1. Comment consistency in VolumeConfig (k8s-3.yaml:33, k8s-1.yaml:43, k8s-2.yaml:37): The phrasing varies across nodes — k8s-1 and k8s-2 say "still matches" while k8s-3 says "would match". Consider standardizing to "still matches" (which is more precise about the risk) across all three files.

  2. Tracking moved information: The PR body mentions creating issue #549 for the k8s-1 media error data (18 errors) that was removed from the config. Confirm that issue is created so the historical record is preserved outside the config files.

🟢 Nits

  • k8s-2.yaml:47-49: The comment mentions "the port's untagged VLAN is not one this node belongs on" which could be slightly clearer as "not one this node should operate on" to match the tone of other files, but this is very minor.

Tests

This is a documentation-only change to Kubernetes configuration comments. YAML syntax validity is confirmed — all files maintain correct indentation and structure. No functional changes require testing.

Recommendation

Looks reasonable — no blocking issues; the suggestion about comment consistency is optional.

🤖 **Automated review** — model `claude-haiku-4-5-20251001` (complexity: trivial), commit `ed86592978d87435b267b58bee8600af8dc0a4b9`. > Advisory review by the `review-bot` pipeline. It never approves; a human merges. Push new commits to get a fresh review. --- ## Summary This PR removes verbose, historically-focused commentary from four Talos machine configuration files while preserving essential operational guidance. All 242 lines removed are comments only; the diff filtered for non-comment lines is empty. The changes correct factually incorrect statements (references to non-existent Proxmox infrastructure, static wear percentages, outdated VM-era descriptions) and replace them with concise, actionable guidance. Orphaned information about k8s-1 media errors is being tracked separately in a new issue rather than embedded in config comments. No blocking issues. ## 🟡 Suggestions 1. **Comment consistency in VolumeConfig** (k8s-3.yaml:33, k8s-1.yaml:43, k8s-2.yaml:37): The phrasing varies across nodes — k8s-1 and k8s-2 say "still matches" while k8s-3 says "would match". Consider standardizing to "still matches" (which is more precise about the risk) across all three files. 2. **Tracking moved information**: The PR body mentions creating issue #549 for the k8s-1 media error data (18 errors) that was removed from the config. Confirm that issue is created so the historical record is preserved outside the config files. ## 🟢 Nits - k8s-2.yaml:47-49: The comment mentions "the port's untagged VLAN is not one this node belongs on" which could be slightly clearer as "not one this node should operate on" to match the tone of other files, but this is very minor. ## Tests This is a documentation-only change to Kubernetes configuration comments. YAML syntax validity is confirmed — all files maintain correct indentation and structure. No functional changes require testing. ## Recommendation Looks reasonable — no blocking issues; the suggestion about comment consistency is optional. <!-- pr-review:sha=ed86592978d87435b267b58bee8600af8dc0a4b9 -->
k.renner merged commit 633a141bac into master 2026-08-28 04:34:43 +00:00
Sign in to join this conversation.