| Launching the ATC Manager | |
| Option | Instructions |
|---|---|
| Network | Select a VPC from the Network drop-down menu. |
| Subnet | Choose a subnet. Note: If you choose a private subnet, but your
transfer nodes are on a public subnet, you must follow the
instructions in Running the Cluster Manager in a Private VPC to allow the ATC
Manager to manage the transfer nodes.
|
| Auto-assign Public IP | To allow access to the ATC Manager web application from outside of the VPC, select Enable from the Auto-assign Public IP drop-down menu. |
| IAM role | Select the atc-manager IAM role for your ATC Manager. |
Expand the Advanced Detail section on the Configure Instance Details page. To configure the external database, copy and paste the following text in the User Data field:
{
"restore": false,
"statestore_backup_period": "minutes",
"database": {
"host": "rds_endpoint_url",
"port": port,
"user": "db_username",
"password": "db_password"
}
}
Edit the values as follows:
For example:
{
"restore": true,
"statestore_backup_period": "1m",
"database": {
"host": "atp-mgr.c6joynsbdgxy.us-east-1.rds.amazonaws.com",
"port": 3306,
"user": "root",
"password": "secret"
}
}
Aspera strongly recommends connecting ATC Manager to an ELB, which provides a persistent DNS that is independent of your ATC Manager instance by using a custom boot script. To add the ELB, paste the following script text after your database configuration:
{
"restore": true,
"statestore_backup_period": "1m",
"database": {
"host": "your_rds_endpoint_url",
"port": 3306,
"user": "db_username",
"password": "db_password"
}
}
-----SCRIPT-----
#!/bin/bash
# assign elastic load balancer
elb="your_elb_name"
curl="curl -sS http://169.254.169.254/2014-11-05/"
region=$($curl/dynamic/instance-identity/document/ | jq --raw-output '.region')
instance_id=$($curl/meta-data/instance-id)
aws elb register-instances-with-load-balancer --region="$region" --load-balancer-name "$elb" --instances "$instance_id"
elb_dnsname="$(aws elb describe-load-balancers --region="$region" | jq --arg elb "$elb" --raw-output '.LoadBalancerDescriptions[] | select(.LoadBalancerName == $elb) | .DNSName')"
echo "$(jq --arg elb_dnsname "$elb_dnsname" '.private_ip |= $elb_dnsname' /opt/aspera/atcm/etc/atc-api.conf)" > /opt/aspera/atcm/etc/atc-api.conf