Подключение по SSH к исполняемой на кластере задаче

При обучении моделей с помощью Training Job API (см. Процесс обучения) есть возможность подключаться к исполняемой на кластере задаче по протоколу SSH. Такое подключение позволяет пользователям оперативно просматривать информацию о задаче, а также выполнять отладку необходимых процессов.

Подключение по SSH осуществляется из терминала Jupyter Notebook/ JupyterLab и возможно при соблюдении следующих условий:

  1. Используется версия Jupyter Notebook не ниже 0.0.65.

  2. Задача обучения отправлена на кластер и запустилась. Pod уже стартовал. Если задача еще находится в очереди или уже завершилась, подключиться по SSH к ней не получится.

Основные шаги для настройки подключения по SSH приведены ниже.

  1. Подключитесь к Jupyter Server. Как это сделать, описано в разделах Создание нового Jupyter Server и Подключение к существующему Jupyter Server.

  2. В открывшемся Jupyter Notebook/ JupyterLab зайдите в терминал.

    Важно

    Генерация SSH-ключей происходит автоматически при создании Jupyter Server. Пользовательские SSH-ключи будут находится в рабочей директории /home/jovyan/.ssh и называться по имени неймспейса.

  3. В терминале выполните команду

jovyan@test-0:~$ aicloud jobs ssh your_job_id

your_job_id — это идентификатор задачи, отправленной для исполнения на кластер (обязательный параметр).

По умолчанию происходит подключение к главному узлу, то есть параметр -m (--master) используется по умолчанию.

Также можно подключиться к конкретному воркер-pod’у (worker) с помощью параметра -w (--worker), указав его номер.

При желании можно вывести справку

jovyan@test-0:~$ aicloud jobs ssh --help
Usage: ssh jobs ssh [OPTIONS] JOB_NAME

  Ssh connection to training job by its name. By default will connect to
  the master process. With --worker (-w) option you can connect to a specific
  worker process

Arguments:
  JOB_NAME  Training_job id (like: lm-mpi-
            job-2d2fd049-a18a-4035-aba6-7a4b6ffbd2f4)  [required]


Options:
  -m, --master          Connect to master process (default option)
  -w, --worker INTEGER  Connect to specific worker_N
  --help                Show this message and exit.

Обратите внимание на то, что подключение по SSH прервется в момент завершения задачи.