exponenta event banner

RemoteClusterAccess

Подключаться к планировщикам, когда клиентские утилиты недоступны локально

Конструктор

parallel.cluster.RemoteClusterAccess

r = parallel.cluster.RemoteClusterAccess(username)

r = parallel.cluster.RemoteClusterAccess(username,P1,V1,...,Pn,Vn)

Описание

parallel.cluster.RemoteClusterAccess позволяет установить соединение и выполнить команды на удаленном хосте. Этот класс предназначен для использования с общим интерфейсом планировщика при использовании удаленной отправки заданий или в файловых системах без совместного использования.

r = parallel.cluster.RemoteClusterAccess(username) использует указанное имя пользователя при подключении к удаленному хосту и возвращает RemoteClusterAccess объект r. При установлении соединения вам будет предложено ввести пароль.

r = parallel.cluster.RemoteClusterAccess(username,P1,V1,...,Pn,Vn) позволяет использовать дополнительные пары параметр-значение, которые изменяют поведение соединения. Принятые параметры:

  • 'IdentityFilename' - символьный вектор, содержащий полный путь к идентификационному файлу, который будет использоваться при подключении к удаленному хосту. Если 'IdentityFilename' не указан, при установлении соединения запрашивается пароль.

  • 'IdentityFileHasPassphrase' - логический параметр, указывающий, требуется ли для файла удостоверения парольная фраза. Если значение равно true, при установлении соединения запрашивается пароль. Если файл удостоверения не указан, это свойство игнорируется. Это значение равно false по умолчанию.

Дополнительные сведения и подробные примеры см. в разделах Отправка с удаленного хоста и Отправка без общей файловой системы.

Методы

Имя методаОписание
connect

connect(r,clusterHost) устанавливает соединение с указанным хостом с помощью параметров учетных данных пользователя, предоставленных в конструкторе. Зеркальное отображение файлов не поддерживается.

connect(r,clusterHost,remoteDataLocation) устанавливает соединение с указанным хостом с помощью параметров учетных данных пользователя, предоставленных в конструкторе. remoteDataLocation определяет папку в clusterHost используется для зеркального отображения файлов. Учетные данные пользователя, предоставленные в конструкторе, должны иметь доступ для записи в эту папку.

disconnectdisconnect(r) отключает существующее удаленное подключение. connect метод должен быть уже вызван.
doLastMirrorForJob

doLastMirrorForJob(r,job) выполняет окончательную копию измененных файлов с удаленного DataLocation к локальному DataLocation для предоставленного задания. Все выполняющиеся зеркала для задания также останавливаются, и файлы задания удаляются из удаленного DataLocation. startMirrorForJob или resumeMirrorForJob метод должен быть уже вызван.

getRemoteJobLocation

getRemoteJobLocation(r,jobID,remoteOS) возвращает полный путь к расположению удаленного задания для предоставленного jobID. Допустимые значения для remoteOS являются 'pc' и 'unix'.

isJobUsingConnection

isJobUsingConnection(r,jobID) прибыль true если задание в данный момент зеркалируется.

resumeMirrorForJob

resumeMirrorForJob(r,job) возобновляет зеркальное отображение файлов с удаленного DataLocation к локальному DataLocation для предоставленного задания. Это похоже на startMirrorForJob метод, но не сначала копирует файлы из локального DataLocation на пульт дистанционного управления DataLocation. connect метод должен быть уже вызван. Это полезно, если исходная клиентская сессия MATLAB закончилась, и вы получаете доступ к тем же файлам из новой клиентской сессии.

runCommand

[status,result] = runCommand(r,command) выполняет предоставленную команду на удаленном хосте и возвращает результирующее состояние и стандартные выходные данные. connect метод должен быть уже вызван.

startMirrorForJob

startMirrorForJob(r,job) копирует все файлы заданий из локального DataLocation на пульт дистанционного управления DataLocation, и запускает зеркальное отображение файлов так, чтобы любые изменения в файлах в удаленном DataLocation копируются обратно в локальный DataLocation. connect метод должен быть уже вызван.

stopMirrorForJob

stopMirrorForJob(r,job) немедленно останавливает зеркальное отображение файлов с удаленного DataLocation к локальному DataLocation для указанного задания. startMirrorForJob или resumeMirrorForJob метод должен быть уже вызван. Это отменяет выполняющееся зеркало и удаляет файлы для задания из удаленного расположения. Это похоже на doLastMirrorForJob, за исключением того, что stopMirrorForJob не пытается убедиться, что локальные файлы заданий обновлены. Для нормальной остановки зеркала используйте doLastMirrorForJob.

getConnectedAccess

getConnectedAccess(host,username) возвращает RemoteClusterAccess объект, подключенный к указанному хосту. Эта функция может возвращать ранее созданный RemoteClusterAccess объект, если он существует.

getConnectedAccess(...,P1,V1,...Pn,Vn) передает дополнительные параметры в RemoteClusterAccess конструктор.

getConnectedAccessWithMirror

getConnectedAccessWithMirror(host,location,username) возвращает RemoteClusterAccess объект, подключенный к указанному хосту, используя расположение в качестве расположения зеркала. Эта функция может возвращать ранее созданный RemoteClusterAccess объект, если он существует.

getConnectedAccessWithMirror(...,P1,V1,...Pn,Vn) передает дополнительные параметры в RemoteClusterAccess конструктор.

Свойства

A RemoteClusterAccess имеет следующие свойства, доступные только для чтения. Их значения задаются при построении объекта или вызове его connect способ.

Имя свойстваОписание
HostnameИмя удаленного узла для доступа.
IdentityFileHasPassphrase Указывает, требуется ли для файла удостоверения парольная фраза.
IdentityFilenameПолный путь к файлу удостоверения, используемому при подключении к удаленному узлу.
IsConnectedУказывает, имеется ли активное подключение к удаленному узлу.
IsFileMirrorSupportedУказывает, поддерживается ли зеркальное отображение файлов для этого подключения. Это false если нет удаленного DataLocation подается в connect() способ.
JobStorageLocationРасположение на удаленном хосте для зеркально отображаемых файлов.
UseIdentityFileУказывает, следует ли использовать файл удостоверения при подключении к удаленному узлу.
UsernameИмя пользователя для подключения к удаленному узлу.

Примеры

Зеркальное отображение файлов из удаленного расположения данных. Предположим, что объект job представляет задание в универсальном планировщике.

remoteConnection = parallel.cluster.RemoteClusterAccess('testname');
connect(remoteConnection,'headnode1','/tmp/filemirror');
startMirrorForJob(remoteConnection,job);
submit(job)
% Wait for the job to finish
wait(job);

% Ensure that all the local files are up to date, and remove the 
% remote files
doLastMirrorForJob(remoteConnection,job);

% Get the output arguments for the job
results = fetchOutputs(job)

Дополнительные сведения и примеры см. в разделах Отправка с удаленного узла и Отправка без общей файловой системы.

Представлен в R2011a