Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

DRAFT!!!

You can use the native ecFlowUI client on your End User device to access remote servers via an SSH tunnel. The recommended way is using dynamic port forwarding.

Warning

This will require at least ecFlowversion 5.7.0, but version >= . Some advanced features are only available in version 5.9.0 is recommended.


Tip

You can install ecFlowUI on MacOS platforms using Brew, or the full ecFlow from conda-forge.

Dynamic port forwarding

Authenticate via teleport

...

Start ecFlowUI with this command if you are using version >= 5.9.0:

Code Block
ecflow_ui -pc4

otherwise you need to use the -cmd flag:

Code Block
ecflow_ui -cmd proxychains4

ecFlowUI is now behaving (in terms of client/server communication) as if it were running on the SOCKS host (hpc-login in this case) and you should be able to interact with all the ecFlow servers available from that host.

...

Local file access via proxychains (only in version >= 5.9.0)

ecFlowUI accesses certain local files (e.g. output and server logs in the Output, Timeline and Server Load panels) directly (standard file I/O) without using the ecFlow client-server communication. This poses a limitation if we run it is running via proxychains because these files are only local on the remote hosts so ecFlowUI cannot access them. To overcome this difficulty you need to use ecFlowUI version >= 5.9.0 and edit the network settings in Tools→ Configure->Network:

Image Removed

...

file fetching will automatically work for you. The only settings that you might need to change is the SOCKS port number, which by default is assumed to be 9050.  Should you set up dynamic port forwarding and use proxychains with a different port number you need to set it in Tools > Preferences > Network:

Image Added

System server lists via proxychains (only in version >= 5.9.0)

When using ecflowUI outside ECMWF the system server list files are not automatically accessible and you need to configure them manually. However, when it is done they will automatically transferred from the remote SOCKS host and loaded on each start-up. To define the system server lists probably the best option is to set Tools > Preferences > Server settings > System server list. The paths specified here have to be local paths on the remote SOCKS host.  

Image Added

Alternatively, you can use the ECFLOW_SYSTEM_SERVERS_LIST environment variable to specify the very same paths.

Note

The path to the system server list files for ATOS can be found here.

Comments

  • the dynamic port forwarding sometimes stops/hangs and as a result ecFlowUI loses connection to the servers (it is indicated by the orange strip on the left and the dotted background):

Image Added

If it happens just go to the terminal where the dynamic port forwarding was started up, terminate it if it still running and run the command again. You do not need to exit ecflowUI, just refresh the servers and the connection will be re-established.