Page History
HTML |
---|
<div class="section" id="getting-started"> <span id="index-0"></span><span id="id1"></span> <div class="line-block"> <div class="line">First ensure that the paths to ecFlow executables are accessible.</div> <div class="line">At ECMWF this is done using <strong>use</strong> command. Hence type the following at the command line.</div> </div> <div class="highlight-python"><pre>> use ecflow</pre> </div> <p>Create a directory called course in your home directory and change to that directory.</p> <div class="highlight-python"><pre>> mkdir course; cd course</pre> </div> <div class="line-block"> <div class="line">In order to use ecFlow we first need to start the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a></div> </div> <div class="section" id="shared-machine"> <h2>Shared Machine<a class="headerlink" href="#shared-machine" title="Permalink to this headline">¶</a></h2> <div class="line-block"> <div class="line">On a shared machine multiple users and ecFlow servers can coexist. Start an <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a>:</div> <div class="line">by typing the following</div> </div> <div class="highlight-python"><pre>> ecflow_start.sh</pre> </div> <div class="line-block"> <div class="line">This will start an <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a> running on your system with a port number unique to your user ID.</div> <div class="line">With this script ecFlow log files and <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-check-point"><em class="xref std std-term">check point</em></a> files are created in the directory $HOME/ecflow_server.</div> <div class="line">This can be changed by using:</div> </div> <div class="highlight-python"><pre>> ecflow_start.sh -d $HOME/course</pre> </div> <div class="line-block"> <div class="line">Please keep a note of the <strong>Host</strong> and <strong>Port</strong> given from your ecf_start.sh output for later.</div> <div class="line">The host and port number uniquely identify your <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a>.</div> <div class="line">When you want to access this server using <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-client"><em class="xref std std-term">ecflow_client</em></a>, <a class="reference internal" href="/wiki/display/ECFLOW/ecFlow+Python+Api#client-server-python-api"><em>client><em>Client server pythonServer API</em></a></div> <div class="line">or <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflowview"><em class="xref std std-term">ecflowview</em></a> you need to know these information.</div> </div> <div class="line-block"> <div class="line">By setting the value of the environment variables ECF_NODE and ECF_PORT you</div> <div class="line">identify the server you wish to access. Multiple <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a>‘s can run on the same system.</div> </div> </div> <div class="section" id="local-machine"> <h2>Local Machine<a class="headerlink" href="#local-machine" title="Permalink to this headline">¶</a></h2> <div class="line-block"> <div class="line">We prefer to start the ecFlow server with the ecflow_start.sh script to help prevent unintentional</div> <div class="line">shared usage of the server. You could have used the default ECF_PORT and started a server running</div> <div class="line">on your own local machine using the following command:</div> </div> <div class="highlight-python"><pre>> ecflow_server</pre> </div> <p>at the unix prompt.</p> <div class="line-block"> <div class="line">This will start an <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a> running on your system with a default host name of “localhost” and</div> <div class="line">port number of 3141. If another program on your machine is using this same port number, then you will get</div> <div class="line">an “Address in use” error. To start the server on a specific port number you can use:</div> </div> <div class="highlight-python"><pre>> ecflow_server --port=3500</pre> </div> <p>or:</p> <div class="highlight-python"><pre>> export ECF_PORT=3500; ecflow_server</pre> </div> <div class="line-block"> <div class="line"><a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a> log files and <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-check-point"><em class="xref std std-term">check point</em></a> files are created in the current directory by default, and have</div> <div class="line">a prefix <machine_name>.<port_number>. As this allows multiple servers to run on the same machine.</div> </div> <div class="line-block"> <div class="line">If you had previously run the same <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a> in the past it will also attempt to recover the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-suite-definition"><em class="xref std std-term">suite definition</em></a></div> <div class="line">from the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-check-point"><em class="xref std std-term">check point</em></a> file.</div> </div> <p><strong>What to do:</strong></p> <ul> <li><p class="first">Type ‘use ecflow’ to setup up the paths.</p> </li> <li><p class="first">Create $HOME/course directory</p> </li> <li><p class="first">Start the server using the ecflow_start.sh -d $HOME/course</p> </li> <li><div class="first line-block"> <div class="line">Note: If in the subsequent sections, you have the need to start a new shell,</div> <div class="line">and want access the server, then ensure that ECF_PORT is set.</div> </div> </li> </ul> </div> </div> |