ecFlow学习笔记02.2 —— 开始使用
该教程的最新版已发布在GitHub上,请访问ecflow-tutorial-cn
这是 ecFlow 教程的一部分,完整教程请参看《ecFlow学习笔记02 —— 教程》
- *本节介绍如何使用 ecFlow,并假设操作系统中已经安装过 ecFlow。如果尚未安装,可以参考另一篇博文《
ecFlow学习笔记01 —— 编译》安装。
为了使用 ecFlow,需要启动 ecflow server。首先准备教程需要的目录,在 home 目录下创建 course 目录,并切换进该目录。
共享环境
共享环境中多个用户和多个 ecFlow 服务器可以同时存在,通过使用启动脚本 ecflow_start.sh 实现。该脚本会使用由用户ID唯一确定的端口号在你的系统中启动 ecflow_server 服务进程。脚本默认在 $HOME/ecflow_server 目录中创建 ecFlow 的日志和 check point 文件。可以使用 -d 选项改变日志和归档点文件的位置,例如将这些文件放到课程目录里:
windroc:需要修改 ecflow_start.sh 脚本,注释掉下面一行
启动 ecflow 服务:
运行之后可以查看后台进程
从 ecFlowview 中查看启动的服务器
词汇表
check point
Client Server API
TODO:对 ecflow_start.sh 脚本的分析
本地环境
环境变量:ECF_PORT ECF_NODE ECF_HOME
推荐使用 ecflow_start.sh 脚本启动 ecFlow 服务器,来避免不需要的服务器共享使用。可以用默认的 ECF_PORT,在 UNIX 提示符下输入下面的命令在本地机器中启动服务器
将会在系统中以默认的名字“localhost”和默认的端口号“3141”启动ecflow_server。
windroc:
前台运行
如果机器中的另一个程序占用这个端口号,就会得到一个 Address in use 错误。使用如下的命令在指定的端口号上运行服务:
或者
此时如果想在 ecflowview 中查看服务,需要修改 .ecflowrc/servers 文件(默认位置),添加类似如下一行:
NOTE:如果第一个名字与 /usr/local/share/ecflow/servers 中的相同,就会被后者覆盖,所以不能命名为 localhost,因为后者文件中有 localhost 一行。
这样就能在 ecflowview 中查看新运行的服务器了。
ecflow_server 的日志文件和 check point 文件默认将在当前文件夹中创建,并且以
开头。这样多个服务可以运行在同一台机器上。如果之前已经运行过一样的 ecflow_server,服务将尝试从 check point 文件中恢复 suite definition。
例如
运行过两个 ecflow_server,其中 3500 没有启动过,所以没有 check point 文件。
任务
- 参考之前的章节安装 ecflow
- 创建 $HOME/course 目录
- 使用如下命令启动服务
ecflow_start.sh -d $HOME/course - 注意 ECF_NODE 和 ECF_PORT 变量
- 注意:如果下面的章节中需要启动一个新的shell来访问服务,要确保已经设置 ECF_PORT 环境变量。