Dimuthu Upeksha created AIRAVATA-2687:
Summary: Distributed agents on compute resources to communicate
with Airavata server
Issue Type: New Feature
Reporter: Dimuthu Upeksha
Assignee: Dimuthu Upeksha
Currently Airavata talk to compute resources through SSH communication. However
there are scenarios where this might not work.
# Airavata can not setup a SSH connection when the compute resource is set
behind a firewall or the system administrators do not allow to create a SSH
connections to the compute resource.
# Doing a burst of SSH call to a particular compute resource leads to the
false detection of Airavata server doing DoS attack on the compute resource.
As an alternative, we think of an another approach to create the communication
between Airavata server and the compute resource. Suggestion is to install an
agent on the compute resource and agent creates a connection to the Airavata
server when required. This might eliminate the firewall issue as the compute
resource is the one which initiates the connection. Then Server can send
commands. Communication protocol might be application specific but it should
support both request response and fire and forget model.
However there challenges,
# How does the agent find the Airavata server
# What happens when an agent failed? How does Airavata server knows it?
# When Airavata server needs to execute a command on a compute resource where
an agent is installed, how does it find the correct agent connection?
At the first stage, we need to send linux commands to be executed on the
compute resource and transfer files through the agent.
This message was sent by Atlassian JIRA