Server groups — NuPaaS Docs
Infrastructure & servers

Server groups

A server group is a named set of servers you deploy to as a unit. It exists so that a rollout across many machines is one action with one batch to watch, instead of a loop you drive by hand. The CLI command and the URL still say node-groups.

What a group is for

Groups are org-scoped and orthogonal to projects: a server can be in a group, and a project can be deployed to that group, but the group itself belongs to the organization. Manage them at /orgs/<org>/node-groups.

The page is feature-gated. If server groups are not enabled for your organization you are redirected away rather than shown an empty panel, so an empty groups list means you genuinely have no groups.

Creating a group

A group needs a name, which must be unique within your organization — creating a second group with an existing name is refused as a conflict, not silently merged. Everything else is optional.

Create a group
platform node-groups create --name edge-eu --description "EU edge fleet"

Group settings

ParameterTypeDescription
namestringUnique within the organization. Required.
descriptionstringFree text for your own benefit.
appNamestringThe application this group is dedicated to, when the group exists to run one thing.
deployStrategystringHow a batch rolls out across the group's members. Defaults to rolling.
maxParallelnumberHow many members may be updated at once. Defaults to 1 — the most conservative setting, one machine at a time.

The maxParallel default of 1 is worth raising deliberately rather than by accident. A group of thirty servers rolled one at a time is slow but survivable; the same group rolled all at once is an outage if the new revision is bad.

Membership

Servers are added to and removed from a group one at a time, by ID. Membership is a link, not a move: removing a server from a group does not remove the server from your fleet, and deleting a group does not delete its members.

Manage membership
platform node-groups add-node    --id <groupId> --node-id <nodeId>
platform node-groups remove-node --id <groupId> --node-id <nodeId>
platform node-groups get         --id <groupId>

Deploying to a group

A group deploy takes a project and fans it out across the group's members according to the group's strategy and parallelism. The call returns a batch identifier immediately rather than blocking — the rollout continues server-side and you poll it.

Roll out and watch
platform node-groups deploy        --id <groupId> --target <target>
platform node-groups deploy-status --id <groupId> --json

A deploy may be pinned to a specific commit. If you do not pin one, the group receives the project's current head.

CLI reference

platform node-groups
platform node-groups list
platform node-groups get           --id <groupId>
platform node-groups create        --name <name> [--description <text>] [--app-name <app>]
platform node-groups update        --id <groupId> [--name <name>] [--description <text>]
platform node-groups delete        --id <groupId>
platform node-groups add-node      --id <groupId> --node-id <nodeId>
platform node-groups remove-node   --id <groupId> --node-id <nodeId>
platform node-groups deploy        --id <groupId> --target <target>
platform node-groups deploy-status --id <groupId>

list, get and deploy-status accept --json for machine-readable output.

Deleting a group

Deleting a group removes the grouping and its membership links. The servers themselves are untouched and stay in your fleet — see Servers for removing a machine properly.

platform node-groups delete --id <groupId>