RemoteClusterAccess
当客户端实用程序无法在本地使用时连接到调度器
构造函数
r = parallel.cluster.RemoteClusterAccess(username)
r = parallel.cluster.RemoteClusterAccess(username,P1,V1,...,Pn,Vn)
说明
r = parallel.cluster.RemoteClusterAccess( 创建一个 username)RemoteClusterAccess 对象,并将 Username 设置为 username。
默认情况下,当您连接到集群时,系统会提示您输入密码。
提示
如果您已经为远程集群设置了集群配置文件,请使用 parcluster。有关详细信息,请参阅发现集群并使用集群配置文件。
如果您需要修改没有内置集群类型的第三方调度器的插件脚本,则只需直接使用 RemoteClusterAccess。当您使用通用调度器接口连接到集群时,您可以使用插件脚本。有关详细信息,请参阅使用通用调度器接口进行配置 (MATLAB Parallel Server)。
当您需要修改远程集群连接、提交或数据传输的设置时,请使用 RemoteClusterAccess。
r = parallel.cluster.RemoteClusterAccess(___, 使用一个或多个名称-值参量创建一个 Name,Value)RemoteClusterAccess 对象。例如,指定 'Port',31415 以使用端口号 31415 连接到集群。请在所有其他输入参量后指定名称-值参量。
接受的名称-值参量是:
'AuthenticationMode'- 连接到集群时使用的身份验证模式,指定为字符串标量、字符向量、字符串数组或元胞数组。如果指定了
'IdentityFilename'参量,则'AuthenticationMode'参量的默认值是'IdentityFile'。否则,默认值为'Password'。'AuthenticationMode'的有效值为:'Agent'- 客户端与在客户端计算机上运行的 SSH 代理进行对接。'IdentityFile'- 当您连接到集群时,客户端使用身份文件进行身份验证。此外,您还必须使用IdentityFilename选项指定身份文件的完整路径。否则,会出现 MATLAB® 错误。'Multifactor'- 客户端提示您输入一次或多次。例如,如果客户端上启用了双因素身份验证 (2FA),则客户端会请求您的密码和第二个身份验证因素的响应。'Password'- 客户端提示您输入 SSH 密码。您的用户名由Username属性指定。
或者,要连接到具有多个身份验证要求的客户端,请将
AuthenticationMode指定为包含'Agent'、'IdentityFile'、'Multifactor'和'Password'组合的字符串数组或元胞数组。"FileTransferProtocol"- 在 MATLAB 客户端与远程集群主机之间传输文件时使用的文件传输协议,以字符串标量或字符向量的形式指定。 (自 R2026a 起)"FileTransferProtocol的有效选项包括:"SFTP"(默认)- 使用安全文件传输协议 (SFTP) 传输文件。MATLAB 默认使用 SFTP 与远程集群主机进行身份验证并加密文件传输。您的集群主机必须已启用 SFTP。"SCP"- 使用安全复制协议 (SCP) 传输文件。如果您的集群未启用 SFTP,请使用 SCP。
'IdentityFileHasPassphrase'- 指示身份文件是否需要密码的标志,指定为true或false。如果是true,则连接时会提示您输入密码。如果没有提供身份文件,则不使用此名称-值参量。'IdentityFilename'- 当RemoteClusterAccess使用IdentityFileAuthenticationMode选项连接到远程主机时,要使用的身份文件的完整路径,指定为'IdentityFilename'以及一个字符串标量或字符向量。'Port'- 您连接到的集群上的端口号,指定为1和65535之间的整数标量。默认值为
22。
有关更多信息和详细示例,请参阅 从远程主机提交 (MATLAB Parallel Server) 和 不使用共享文件系统提交 (MATLAB Parallel Server)。
方法
| 方法名称 | 描述 |
|---|---|
connect |
|
disconnect | disconnect(r) 断开现有的远程连接。connect 方法必须已经被调用。 |
doLastMirrorForJob |
|
getRemoteJobLocation |
|
isJobUsingConnection | 如果该作业当前正在被镜像,则 |
reconnect | reconnect(r) 重新创建与远程主机的现有 SSH 连接。 |
resumeMirrorForJob |
|
runCommand |
|
startMirrorForJob |
|
stopMirrorForJob |
|
getConnectedAccess |
|
getConnectedAccessWithMirror |
|
属性
RemoteClusterAccess 对象具有以下只读属性。当您构造对象或调用其 connect 方法时,会设置它们的值。
| 属性名称 | 描述 |
|---|---|
AuthenticationMode | 该选项指示您连接到集群时如何进行身份验证,以下列之一的形式返回:
如果 要设置此属性,请在创建 |
AutoReconnect | 标志指示在远程命令错误后,MATLAB 是否自动重新创建与远程主机的 SSH 连接,指定为 默认值为 |
| 文件传输协议 MATLAB 在客户端与远程集群主机之间传输文件时使用,其表示形式为一个字符向量,该向量包含以下值之一:
要设置此属性,请在创建 |
Hostname | 要访问的远程主机的名称,以字符向量形式返回。 默认值是一个空字符向量。 |
IdentityFileHasPassphrase | 标志指示身份文件是否需要密码,指定为由 默认值为 如果此属性设置为 要设置此属性,请在创建 |
IdentityFilename | 当 默认值是一个空字符向量。如果此属性为空,且您为 要设置此属性,请在创建 |
IsConnected | 指示 默认值为 |
IsFileMirrorSupported | 标志指示 默认值为 如果 |
JobStorageLocation | 远程主机上正在镜像的文件的位置,以字符向量的形式返回。 默认值是一个空字符向量。 要设置此属性,请使用以下任一语法连接到集群:
|
Port | 用于连接集群的端口号,以 默认值为 要设置此属性,请在创建 |
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)
有关更多信息和示例,请参阅 从远程主机提交 (MATLAB Parallel Server) 和 不使用共享文件系统提交 (MATLAB Parallel Server)。
版本历史记录
在 R2011a 中推出
另请参阅
主题
- 通用通用程序的插件脚本 (MATLAB Parallel Server)