Skip to content

gke-test: add lumen's pools (lumen, lumen-client, lumen-perf, lumen-perf-client) - #33

Merged
chrischeng-c4 merged 2 commits into
mainfrom
claude/gke-test-pool-lumen
Oct 15, 2026
Merged

chrischeng-c4 merged 2 commits into
mainfrom
claude/gke-test-pool-lumen

Conversation

@chrischeng-c4

@chrischeng-c4 chrischeng-c4 commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Why

lumen is moving its kind e2e to the shared GKE test cluster. The e2e covers the direct install and operator modes with 100k docs. It uses the shape #34 proposes:

  • The server runs as a cluster on its own pool.
  • The checks run as an in-cluster test Job on a second pool, instead of kubectl port-forward from the runner.

lumen's 0.6.1 durable perf matrix needs a separate pair of non-Spot pools. A Spot preemption would void a cell and its PVC cold-restart measurement.

This PR is stacked on #34, because it needs the pool key. Merge #34 first, then retarget this PR to main.

What

Four rows in infra/gke-test/pools.yaml:

pool machine Spot max_nodes holds
lumen e2-standard-4 yes 3 The operator raft StatefulSet, 1 replica per node, up to 3 voters at 1 CPU / 4Gi each. The 1-replica direct-install Deployment (1 CPU / 4Gi). The operator.
lumen-client e2-medium yes 1 The e2e test Job (kubectl, curl, jq), 500m / 1Gi.
lumen-perf e2-highmem-4 no 1 One perf server cell at a time, up to 2.5 CPU / 16Gi.
lumen-perf-client e2-standard-4 no 1 The perf load generator.

The perf rows follow the split the standards session proposed. The perf session (owner of the matrix) may still adjust the sizes.

Checks

🤖 Generated with Claude Code

@chrischeng-c4
chrischeng-c4 force-pushed the claude/gke-test-pool-lumen branch from f076d12 to 70d4950 Compare October 15, 2026 09:25
@chrischeng-c4 chrischeng-c4 changed the title gke-test: add pool-lumen (e2-standard-4 Spot, max 1) gke-test: add pool-lumen (e2-standard-4 Spot, max 3) and pool-lumen-client Oct 15, 2026
@chrischeng-c4
chrischeng-c4 changed the base branch from main to claude/gke-test-job October 15, 2026 09:25
@chrischeng-c4
chrischeng-c4 force-pushed the claude/gke-test-pool-lumen branch from 70d4950 to 76138e1 Compare October 15, 2026 12:45
@chrischeng-c4 chrischeng-c4 changed the title gke-test: add pool-lumen (e2-standard-4 Spot, max 3) and pool-lumen-client gke-test: add lumen's pools (lumen, lumen-client, lumen-perf, lumen-perf-client) Oct 15, 2026
@chrischeng-c4
chrischeng-c4 changed the base branch from claude/gke-test-job to main October 15, 2026 13:31
chrischeng-c4 and others added 2 commits October 15, 2026 21:32
…lient

lumen moves its kind e2e (direct install and operator, 100k docs) to the
shared cluster in the #34 shape: the server as a cluster on pool-lumen, and
the checks as an in-cluster test Job on pool-lumen-client.

pool-lumen holds the operator's raft StatefulSet, one replica per node
(required hostname anti-affinity), up to 3 voters at 1 CPU / 4Gi, plus the
1-replica direct-install Deployment and the operator. pool-lumen-client runs
the test Job (kubectl, curl, jq, python3) at 500m / 1Gi.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…perf matrix

Both are non-Spot with max 1 node: e2-highmem-4 for one server cell
(2.5 CPU, 16Gi) and e2-standard-4 for the load generator. The e2e
client pool stays e2-medium Spot; its comment now says jq, not python3,
builds the fixture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chrischeng-c4
chrischeng-c4 force-pushed the claude/gke-test-pool-lumen branch from 76138e1 to a5d1222 Compare October 15, 2026 13:32
@chrischeng-c4
chrischeng-c4 merged commit 5a82225 into main Oct 15, 2026
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.

1 participant