MASV Transfer Agent
Info
MASV Transfer Agent is a legacy version of the current MASV Agent. For new agent installations, please see MASV Agent. The legacy version is supported with security updates only.
MASV Transfer Agent (masv-agent for short) is a cross-platform service that manages file transfers to and from MASV network. Interaction with the service is performed via REST API calls. It supports uploading and downloading multiple packages simultaneously, while abstracting away filesystem interactions. The agent is the beating heart of our desktop app that's been used in production with hundreds of terabytes of data getting transferred through it, reliably and quickly.
The agent is stateful -- it stores metadata about transfers and user sessions in order to carry out its responsibilities and survive interruptions and shutdowns.
Run on Docker
The Transfer Agent is provided in a Docker container image. This allows for ease of use between many different operating systems and architectures.
Info
Docker is the recommended method of running Transfer Agent. Please follow the guide at Docker Docs
An example snippet to run the Docker container:
# Other flags can be defined as outlined in the Parameters section
docker run -it --rm \
-p 127.0.0.1:8080:8080 \
-e TZ=UTC \
-v /path/to/your/config:/config \
-v /path/to/your/data:/data \
masvio/transfer-agent:latest
Supported Architectures:
Architecture | Tag | Latest version |
---|---|---|
x86-64 |
latest |
2.8.3 |
arm64 |
latest |
2.8.3 |
Download masv-agent
You can download the latest version of pre-packaged binaries of masv-agent for your operating system using the links below:
OS | Arch | Version | Download link |
---|---|---|---|
linux | amd64 | 2.8.3 | masv-agent-linux-amd64-2.8.3.zip |
darwin | amd64 | 2.8.3 | masv-agent-macos-amd64-2.8.3.zip |
windows | amd64 | 2.8.3 | masv-agent-windows-amd64-2.8.3.zip |
The zip package contains the masv-agent binary (versioned), along with a swagger API spec file that documents all the agent API end points.
For more historical version of the legacy agent, see Legacy Versions
Note
If you need a binary build for a different CPU architecture (e.g. i386 or arm), please contact team@masv.io.
Running the agent
To start the agent, simply run the masv-agent
binary. By default, the service will attempt to start an http server listening locally on port 8080
. You can customize the listening behaviour, like using different listening schema, specifying listen IP address and changing port by passing -listen
argument. For example:
masv-agent -listen http://127.0.0.1:8888
Listening scheme/port
The following listening schemas are supported:
- Plaintext http (no TLS). For example:
masv-agent -listen http://127.0.0.1:8123
- HTTPS, using a self-signed TLS certificate. The certificate is generated at runtime each time the agent is started, so it does not persist. For example:
masv-agent -listen https://localhost:8443
- Unix sockets (Linux and macOS). For example (notice the triple slashes for absolute path):
masv-agent -listen unix:///path/to/socket/file.sock
- Windows named pipes (Win 7 and later). For example
masv-agent -listen "\\.\pipe\name-of-pipe"
Help and more info
More customization is available via command line arguments, which can be viewed with
masv-agent -h
You can check which version of the agent you have by running
masv-agent -version
To compare the current version you have installed against the latest version release, run
masv-agent -version-check
Which will output something similar to the following:
current version:
version: 1.0.0
hash: b016705dd584c1de4bab2e061f03d1077d9259db
timestamp: 2020-07-31T20:48:27+00:00
latest version:
hash: b016705dd584c1de4bab2e061f03d1077d9259db
version: 1.0.0