使用远程服务器

借助 Simcenter STAR-CCM+ 中采用的客户端 - 服务器模型,可在客户端工作区启动另一台机器上的服务器。

如果要从工作站设置和监视模拟,而让另一台机器计算求解,则此方法非常有用。 要启动远程服务器,需要拥有对远程服务器的远程 Shell 访问权,而无需密码提示(例如,无密码的 ssh)。 starccm+ 命令必须在每台远程机器上均可用。

默认情况下,Simcenter STAR-CCM+ssh 用作远程 Shell 程序,以用于启动远程服务器。 可以使用替代远程 Shell,比如 rshPuTTY 或您提供的自定义 Shell 命令。 对于自定义 Shell 命令,指定的远程 Shell 必须符合如下语法:

“remote shell command” <HOST> -l <USER>

其中,HOST 是远程 Shell 将连接的远程机器,使用 -l 语法可指定用户名。

在启动 Simcenter STAR-CCM+ 之前,必须确保远程 Shell 程序可连接至相应服务器,而无需执行更多操作(比如输入密码或用户名)。

Windows 系统不对远程 Shell 访问提供原生服务器端支持。 但是,如果提供了相应的命令(比如 PuTTY)以便于 Simcenter STAR-CCM+ 使用,则从 Windows 机器上运行的客户端启动远程服务器。 在启动 Simcenter STAR-CCM+ 之前,必须确保 Windows 上的远程 Shell 程序可连接至相应服务器,而无需执行更多操作。

有几节介绍了以远程方式启动服务器的细节,具体如下:

  • 与工作区串行
  • 与命令行串行
  • 与工作区并行
  • 与命令行并行

也可以直接登录远程机器,从命令行启动服务器,然后使用服务器在启动时显示的主机和端口信息,从自己的机器连接至该服务器。

从命令行启动连接至指定远程服务器的客户端。

处理协议失败问题

在基于 Unix 的某些系统中,会限制远程 Shell 会话的开放数量。 如果超过此限制,则在启动远程服务器或并行服务器时系统可能会报告协议失败。 此问题通常是由于 rsh 进程失效导致的,首先应确保终止所有此类进程。

如果问题依然存在,管理员应确保设置的远程进程限制数不会太低。 在 Linux 系统中,可修改文件 /etc/inetd.conf,以允许每分钟运行更多 rsh 进程。 例如,将

shell stream tcp nowait root /etc/tcpd2 in.rshd 

更改为

shell stream tcp nowait.200 root /etc/tcpd2 in.rshd