Skip to content

Commit 1b4b76f

Browse files
kvapsclaude
andcommitted
docs(plan): record end-to-end satellite registration milestone
3/3 Talos workers running blockstor-satellite as a DaemonSet, each Hello-ing the in-cluster controller and producing a Node CRD. First proof of the controller↔satellite gRPC + CRD upsert path on a real k8s cluster, not just a unit test. Splits the original 'piraeus integration' line: registration is done; LinstorCluster flip stays open as separate work. Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
1 parent 96d7103 commit 1b4b76f

1 file changed

Lines changed: 15 additions & 5 deletions

File tree

PLAN.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -218,11 +218,21 @@ Full scope list lives in `docs/csi-api-surface.md` (to be created in Phase 1).
218218
- [x] No-op reconciler stubs for all CRDs wired in `cmd/main.go` (real
219219
reconciliation lands in Phase 3).
220220
- [x] **Side-by-side stand deploy proven** (2026-05-08): `stand/blockstor-deploy.yaml` runs `manager` as a Deployment in `blockstor-system` namespace with proper RBAC; image pulled from the host registry `10.164.0.1:5000` (Talos containerd patched to allow http for that mirror); pod 1/1 Running, REST `:3370` + gRPC `:7000` both listening; all 6 CRD reconcilers started. `BLOCKSTOR_BASEURL=http://127.0.0.1:33370 go test -run TestSmokeTraceReplay` — green against the deployed pod via port-forward.
221-
- [ ] piraeus-operator can create `LinstorSatellite`s and they appear in
222-
our API. — LinstorSatellites are created today by the Java
223-
controller; flipping piraeus to dial blockstor:3370 needs a
224-
LinstorCluster spec change + matching satellite registration
225-
flow. Side-by-side deploy above is the prerequisite.
221+
- [x] **Satellites register end-to-end** (2026-05-08):
222+
`stand/blockstor-satellite-daemonset.yaml` runs the satellite
223+
binary (debian-slim image with drbd-utils + lvm2 + cryptsetup)
224+
on every Talos worker as a privileged DaemonSet — hostPID,
225+
hostPath /dev /lib/modules /run/lvm. Each pod dials
226+
`blockstor-controller.blockstor-system.svc:7000` and the Hello
227+
RPC creates a `Node.blockstor.io.blockstor.io` CRD per worker.
228+
`kubectl get nodes.blockstor.io.blockstor.io` shows 3/3 of them
229+
seconds after rollout. This proves controller↔satellite gRPC +
230+
registration + CRD upsert end-to-end on a real cluster.
231+
- [ ] piraeus-operator native flip — make piraeus's own LinstorCluster
232+
object dial blockstor:3370 instead of the Java controller, so
233+
`linstor-csi` and `LinstorSatellite` upsream resources also flow
234+
through us (separate from our own satellite DaemonSet above).
235+
Needs LinstorCluster spec + LINSTOR-protocol shim work.
226236

227237
**Exit met (definition side).** Real reconciliation work now lives in Phase 3.
228238

0 commit comments

Comments
 (0)