ClusterMemberRegister

Request Type: ClusterMemberRegisterRequest

Field

Type

Repeated

Description

token

string

listen_address

string

listen_port

uint32

hardware

HardwareInfo

proxy_url

OptionalString

Worker-advertised reverse-proxy URL (e.g. https://worker-1.example.com:9443) for routing per-job runtime UIs through this worker’s nginx. Optional — empty/omitted means the worker has no operator-facing proxy and the daemon falls back to https://<listen_address>:<defaultClusterProxyPort>; from sys.config. norsk-mgr reads this onward via RunningNodeMetadata and uses it to compose /bundles/<bId>/<jId>/…​ → worker-proxy routes for the bundle/job UI.

node_id

NodeId

Enrollment (design worker-enrollment.md §3.2): the FIRST register presents token (the join token RegisterClusterNode returned, valid once and for a limited time) and is answered with a node credential; every later register presents node_id + node_credential instead. A register that presents the token again once the slot is enrolled is refused.

node_credential

string

Response Type: ClusterMemberRegisterResponse

Field

Type

Repeated

Description

node_id

NodeId

The slot’s node id — the worker’s identity from here on.

node_credential

string

Only on the enrolling register: the node credential, shown once.

manager_public_key

string

The Manager’s Ed25519 public key (base64, raw 32 bytes): what the worker verifies ManagerAuth with before it says anything on a stream.

access_replica_jwks_json

string

norsk-mgr’s role-store replica keys (a JWKS as JSON), from its last publication: what the worker verifies its first replica with. Empty until norsk-mgr has published. Protocol 1.3.

manager_endpoints

string

✅

Every member of the Manager cluster, as host:port of its worker-facing listener (see WorkerHelloResponse.manager_endpoints).

control_plane_urls

string

✅

The norsk-mgr beside each member (see WorkerHelloResponse.control_plane_urls).