Начало работы

Быстрый старт с GPU-сервером

Всё, что нужно сделать от выдачи сервера до первой задачи на GPU: войдите на сервер, проверьте GPU, обновите систему, запустите контейнер и не дайте задачам остановиться после отключения.

На этой странице
  1. Что вы получаете
  2. Вход по SSH
  3. Проверка видимости всех GPU
  4. Обновление системы
  5. Запуск первого контейнера на GPU
  6. Запуск долгих задач в tmux
  7. Устранение неполадок
  8. Что дальше

Этот быстрый старт с GPU-сервером проведёт вас от выдачи сервера до первой задачи, работающей на ваших GPU. Он подходит для любого сервера FullGPU: тариф с одним GPU — это выделенная виртуальная машина с пробросом всего GPU (passthrough), а 8-GPU-сервер — bare metal. Каждый шаг заканчивается проверкой, чтобы вы убедились, что всё получилось, прежде чем двигаться дальше.

Что вы получаете

Когда сервер готов, его IP-адрес и данные для подключения по SSH появляются в личном кабинете. Вход выполняется по SSH с открытым ключом, который вы добавили к заказу, и у вас есть полный root-доступ. У каждого сервера есть публичный IPv4-адрес и подсеть IPv6 /64, а его публичные IP-адреса защищены от DDoS.

В наших образах Ubuntu 22.04 и 24.04 уже установлены драйвер NVIDIA, CUDA, Docker и NVIDIA Container Toolkit. Серверы AMD Instinct работают на наших образах ROCm. Если вы ещё не отправили открытый ключ, начните с настройки SSH-доступа к GPU-серверу.

Вход по SSH

  1. Откройте терминал на своём компьютере (в Windows — PowerShell) и подключитесь, указав IP-адрес и имя пользователя из личного кабинета. В примерах на этом сайте используются пользователь root и адрес 203.0.113.10, зарезервированный для документации:
    ssh root@203.0.113.10
  2. При первом подключении SSH попросит подтвердить ключ хоста. Введите yes.
  3. Проверьте операционную систему:
    cat /etc/os-release
    Должна отобразиться версия Ubuntu, которую вы выбрали при заказе.

Команды на этой странице используют sudo. Если вы вошли как root, он работает точно так же.

Проверка видимости всех GPU

На серверах NVIDIA:

nvidia-smi
nvidia-smi -L

В выводе должно быть по одной строке на каждый GPU (одна на тарифе с одним GPU, восемь на 8-GPU-сервере), а в заголовке — версия драйвера и «CUDA Version». Эта CUDA Version — самая новая версия CUDA, которую поддерживает драйвер, и она не обязательно совпадает с версией установленного CUDA Toolkit. nvidia-smi -L выводит список GPU с UUID каждого из них.

На серверах AMD Instinct MI355X:

rocm-smi

Должны отображаться восемь GPU. Об amd-smi, rocminfo и группах пользователей рассказывает руководство по настройке ROCm. Если на каком-либо сервере не виден один из GPU, запишите, какой именно, и до начала работы создайте тикет в личном кабинете.

Обновление системы

sudo apt update
sudo apt upgrade -y
[ -f /var/run/reboot-required ] && echo "Reboot required"

Если появится диалог с вопросом об изменённом файле конфигурации, оставьте версию, которая установлена сейчас. Если последняя команда выведет «Reboot required», выполните sudo reboot, подождите несколько минут, снова войдите на сервер и ещё раз запустите nvidia-smi.

После обновления, затронувшего драйвер NVIDIA, обязательно перезагружайте сервер. До перезагрузки nvidia-smi может завершаться ошибкой «Driver/library version mismatch», потому что по-прежнему загружен старый модуль ядра.

Запуск первого контейнера на GPU

На серверах NVIDIA эта команда запускает обычный контейнер Ubuntu с доступом ко всем GPU:

docker run --rm --gpus all ubuntu nvidia-smi

Вы увидите ту же таблицу, что и на хосте. NVIDIA Container Toolkit монтирует драйвер хоста в контейнер, поэтому в самом образе драйвер не нужен. Если вы работаете не под root, добавляйте к docker префикс sudo.

На серверах AMD вместо этого передайте контейнеру файлы устройств GPU (если в вашем образе нет Docker, сначала установите его):

docker run --rm --device=/dev/kfd --device=/dev/dri --group-add video \
  rocm/pytorch:latest \
  python3 -c "import torch; print(torch.cuda.device_count())"

Команда должна вывести 8. Образ большой, поэтому первое скачивание займёт некоторое время. О выборе GPU, Docker Compose и разделяемой памяти для PyTorch рассказывает руководство по Docker-контейнерам с GPU.

Запуск долгих задач в tmux

Процесс, запущенный в обычной SSH-сессии, останавливается при обрыве соединения. Запускайте долгие задачи внутри tmux:

  1. Создайте именованную сессию командой tmux new -s work. Если tmux не установлен, установите его командой sudo apt install -y tmux.
  2. Запустите задачу, например python3 train.py.
  3. Отключитесь от сессии: нажмите Ctrl+B, затем D. Задача продолжит работать на сервере.
  4. Позже выведите список сессий командой tmux ls и снова подключитесь к сессии командой tmux attach -t work.

Всё, что должно работать и после перезагрузки, например эндпоинт инференса, вместо этого оформите как службу systemd. Пример такой службы есть в руководстве по инференсу LLM (большой языковой модели) на vLLM.

Устранение неполадок

  • Permission denied (publickey). SSH не предложил нужный ключ, или указано неверное имя пользователя. Укажите путь к ключу командой ssh -i ~/.ssh/id_ed25519 root@203.0.113.10 и сверьте имя пользователя с тем, что указано в личном кабинете.
  • nvidia-smi завершается ошибкой после обновления. Сначала перезагрузите сервер. Если ошибка не исчезла, сохраните вывод sudo dmesg | grep -i nvidia и приложите его к тикету в личном кабинете.
  • could not select device driver "" with capabilities: [[gpu]]. Docker не настроен на работу со средой выполнения NVIDIA. Выполните sudo nvidia-ctk runtime configure --runtime=docker, затем sudo systemctl restart docker.

Что дальше

Застряли на каком-то шаге? Наши инженеры отвечают круглосуточно: создайте тикет в поддержку в личном кабинете.

Часто задаваемые вопросы

Смонтированы ли NVMe-диски для данных, когда я получаю сервер?

Не всегда. В зависимости от заказа диски для данных на 8-GPU-серверах могут быть не смонтированы при выдаче, поэтому проверьте их командой lsblk, а затем отформатируйте и смонтируйте, следуя руководству по NVMe-дискам.

Тариф с одним GPU — это виртуальная машина?

Да. Тариф с одним GPU — это выделенная виртуальная машина с пробросом всего GPU, а 8-GPU-серверы — bare metal. В обоих случаях GPU выделен только вам.

Можно ли сменить операционную систему после выдачи сервера?

Да. Запросите переустановку на странице сервера в личном кабинете — при этом создаётся тикет. Сначала скопируйте данные с сервера, потому что мы не делаем резервных копий локального хранилища.

Не получается?

Создайте тикет в личном кабинете: укажите сервер, что вы запускали, и приложите вывод ошибок, если он есть. Инженеры отвечают круглосуточно.

Создать тикет

Вход в FullGPU

Управляйте GPU-серверами, балансом и счетами.

Впервые в FullGPU? Создать аккаунт