Prerequisites
- Organization Admin role in Kestrel
- Nebius AI Cloud account with project access
- Nebius CLI (
nebius) installed to generate a service-account key
Setup
1
Create a service account and key
Create (or choose) a service account with read access to instances and Kubernetes node state and permission to perform instance/scaling actions in your projects, then generate an authorized key JSON:The resulting JSON contains a
subject-credentials object with the signing key:2
Connect in Kestrel
- Navigate to Integrations → Nebius in your Kestrel dashboard
- Click Connect
- Paste the service account authorized key JSON. It is exchanged for an IAM token against
https://api.nebius.cloudand used to read instance/node state and perform actions across your projects. - Set the Region (defaults to
eu-north1). - Choose a Poll Interval for trigger detection.
- Save — your Nebius account appears as connected.
No webhook setup is required inside Nebius. Kestrel polls the Nebius API on your configured interval to detect GPU errors and node/instance lifecycle events.
How It’s Used
In Workflows
Trigger blocks:- GPU Error — fires when a node reports a GPU error condition
- Maintenance Scheduled — fires when maintenance is scheduled for a node
- Node Not Ready — fires when a node transitions into a not-ready state
- Instance Stopped — fires when an instance transitions into a stopped state
- Get Instance — retrieve an instance’s state, config, and region
- Start Instance — start a stopped instance
- Stop Instance — gracefully stop a running instance
- Restart Instance — restart an instance in place without recreating it
- List Instances — list instances for a project
- List Clusters — list managed Kubernetes clusters for a project
- List Node Groups — list node groups for a managed Kubernetes cluster
- Scale Node Group — scale a node group to a target size
- Create Instance — provision a new GPU or CPU instance with its boot disk (platform, preset, subnet, image, disk size, optional SSH key)
- Delete Instance — delete an instance and, by default, its boot disk
- Create Node Group — provision a new GPU/CPU worker pool in a managed Kubernetes cluster
- Delete Node Group — delete a node group, tearing down its nodes
- Investigate Nebius — run an AI investigation of GPU errors, node failures, and configuration issues
{{signal.project_id}}, {{signal.instance_id}}, {{signal.cluster_id}}, and {{signal.node_name}} from the trigger.
Provisioning and deletion blocks (Create/Delete Instance, Create/Delete Node Group) create or destroy billable GPU capacity; add an Approval node before them if you want a human sign-off step. Create Instance outputs an instance_id that downstream blocks can reference via {{step_outputs.<id>.instance_id}}.
Example: A workflow triggers on a GPU error, runs an AI investigation to diagnose the failure, scales the affected node group to replace the bad node, and posts a summary to Slack.
Example: A developer requests an H100 instance via Slack (req-nebius trigger); the workflow waits for approval, provisions the instance with Create Instance, and DMs the requester the new instance ID.
Disconnecting
- Navigate to Integrations → Nebius
- Click Disconnect
- Confirm the disconnection