120 likes | 409 Views
Amigo. Automating Cross-Region EBS-Backed AMI Transfers. What is Amigo. Amigo is a tool to automate migration of EBS backed snapshots, instances, and AMIs across AWS regions Can be used for both Windows and Linux images
E N D
Amigo Automating Cross-Region EBS-Backed AMI Transfers
What is Amigo • Amigo is a tool to automate migration of EBS backed snapshots, instances, and AMIs across AWS regions • Can be used for both Windows and Linux images • Can be deployed using a CloudFormation template or launched manually in each region • Can handle multiple transfer requests simultaneously • Sends email notifications on completing each request • Allows transfers to/from all AWS regions • Unsupported: Currently available in public beta on an as-is basis
Amigo CloudFormation Deployment • Deploy CloudFormation template in source region • Specify parameters to configure transfers: • Security credentials • IDs of objects to be transferred • Destination regions and login key pairs • Email address for notifications • Confirm email subscription [first-time only] • Sit back and let it finish. • The Amigo instances will be launched in all regions • You will get email notifications on each deployment and each transfer operation [Send/Receive]
Linux Image Migration Rules • All transfers will deliver snapshots to destinations • Plus: • Amigo will register an AMI at destination if: • Source AMI uses PVGRUB, or • AKI of source AMI available with same name at destination • Else, you will only get snapshots at destination
Windows Image Migration Rules • All transfers will deliver snapshots to destinations • Plus: • Amigo will create a Windows AMI/Instance, if: • A “Match AMI” parameter is specified • Matching base Windows AMI found in destination region • Else, you will only get snapshots at destination
Amigo Manual Deployment • Launch an instance of Amigo in each region • Assign Elastic IP address to all instances • Open security groups for TCP 46224, UDP 46224 in all regions • On each instance, log in as ec2-user • Change to super user: sudo su – • Copy X.509 certificate to /root/.ec2/cert.pem • Copy X.509 private key to /root/.ec2/pk.pem • Specify AWS access key id and secret access key in /root/.ec2/creds • Verify credentials: ec2-describe-regions; sns-list-topics • Initialize image: /root/bin/InitImage • Confirm email subscription [first-time only] • Initiate transfers: /root/bin/goamigo • Respond to prompts to specify transfer details • Process transfers: /root/bin/startgo • Launches Amigo and Tsunami daemons to process image transfers • See user guide for details
Troubleshooting • For CloudFormation deployments, ensure all prior stacks or Amigo instances have been deleted/terminated in all regions • All log files under /root/logs in each Amigo instance • Log into the instance as ec2-user • Change to super user: sudo su – • Check initialization log file: /root/logs/init.log • Check migration log file: /root/logs/<ami-id>.log • Common errors: • Invalid security credentials – Check if you can execute: • ec2-describe-regions • sns-list-topics • Bad initialization parameters: • Check region names, key pair names you supplied • If no errors found, retry the transfer
Known Issues • Need to delete each CloudFormation stack individually in each region • Deleting CloudFormation stacks sometimes fails. May need to shutdown/terminate Amigo instance before deleting the stack • Very basic error handling. Troubleshooting will require checking log files
More Information • Amigo User Guide • Amigo CloudFormation Template • EC2 API