Costs
Nebius AI Cloud charges you for the following billing items: Managed SkyPilot is provided free of charge.Prerequisites
-
Create a Managed SkyPilot server:
- In the Nebius AI Cloud console, go to AI orchestration → SkyPilot. If you don’t have a Managed SkyPilot server in your project, a landing page opens.
- Click Create server. The creation page opens.
- Enter a name for the server or keep the default one.
- Click Create server.
- Make sure you have Python 3.10 or higher installed.
-
Install the SkyPilot CLI:
-
Connect to the Managed SkyPilot server:
-
Verify that Managed SkyPilot can access your project:
If the check is successful, the output contains the following:
-
Clone the Nebius ML Cookbook repository and go to the
skypilotdirectory:The ML Cookbook contains example task definitions used in this tutorial. - If you want to test mounting Object Storage buckets to VMs, create a bucket.
Steps
- Run SkyPilot tasks from the Nebius ML Cookbook: You can choose to run some or all of these tasks, depending on your use cases.
- Work with the VMs and Managed SkyPilot as part of the tasks:
Run tasks
Run a GPU check
The GPU check in this tutorial creates a VM with one NVIDIA® H100 GPU and runs the NVIDIA System Management Interface (nvidia-smi) on it. nvidia-smi outputs the list of GPUs available on the VM and the list of processes running on the GPUs.
-
Launch the task:
-
When SkyPilot displays which resources it is going to create and asks you to confirm the launch, enter
Yand press Enter.
nvidia-smi:
Output example
Output example
Run an Object Storage check
The Object Storage check creates a VM and mounts a bucket from your project to it.-
In
examples/test-cloud-bucket.yaml, findsource: nebius://my-nebius-bucketunderfile_mountsand replacemy-nebius-bucketwith the name of your bucket. -
Launch the task:
-
When SkyPilot displays which resources it is going to create and asks you to confirm the launch, enter
Yand press Enter.
Output example
Output example
Run an InfiniBand check
The InfiniBand check creates a cluster of two VMs with 8 NVIDIA® H100 GPUs each, connected with InfiniBand, and runs theib_send_bw test from perftest. The test measures bandwidth when sending data between GPUs on different VMs.
-
Launch the task:
-
When SkyPilot displays which resources it is going to create and asks you to confirm the launch, enter
Yand press Enter.
Output example
Output example
Run a training task
The training task adapts a tutorial from the PyTorch documentation and its implementation from the SkyPilot documentation. It creates a cluster of two VMs with 8 NVIDIA® H100 GPUs each, connected with InfiniBand. Then, it uses PyTorch to train a GPT-like model with Distributed Data Parallel on the VMs.-
Launch the task:
-
When SkyPilot displays which resources it is going to create and asks you to confirm the launch, enter
Yand press Enter.
Output example
Output example
The training task also has a single VM (non-distributed) version. To launch it, run
sky launch ai-training examples/ai-training.yaml.Work with the VMs
After you create a cluster and launch a task on it, you can use Managed SkyPilot and Nebius AI Cloud tools to monitor the cluster and connect to its VMs.Monitor the VMs
To check the statuses of the VMs, run the following command:Connect to the VMs
Managed SkyPilot sets up SSH access to VMs in clusters automatically.-
To connect to the main (“head”) VM of the cluster, run
ssh <cluster_name>. For example: -
To connect to other VMs (“workers”), run
ssh <cluster_name>-worker<index>. For example:
Troubleshoot issues
Unavailable resources
When you runsky launch, you might get the following error:
Connection errors
If SkyPilot commands fail with connection errors, make sure the Managed SkyPilot server is running. Check the server status in the Nebius AI Cloud console under AI orchestration → SkyPilot. If the server is running, verify your connection by runningsky api login -e "https://skypilot.nebius.cloud".
Authentication errors
If you get authentication errors when running SkyPilot commands, verify that you are connected to the Managed SkyPilot server by runningsky api login -e "https://skypilot.nebius.cloud".
Other issues
If you face problems that are not covered by this tutorial, you can create issues in relevant GitHub repositories:How to delete the created resources
Some of the created resources are chargeable. If you don’t need them, delete these resources, so Nebius AI Cloud doesn’t charge for them:-
Delete VMs and GPU clusters that Managed SkyPilot created for all tasks in this tutorial:
- Delete the bucket that you used in the Object Storage task.
- If you no longer need the Managed SkyPilot server, delete it in the Nebius AI Cloud console. Go to AI orchestration → SkyPilot, open the Settings tab, and click Delete server.
InfiniBand and InfiniBand Trade Association are registered trademarks of the InfiniBand Trade Association.