How to Migrate a Server from Ace Cloud to AWS?

This guide provides a step-by-step process for migrating a Ubuntu server from Ace Cloud to AWS. The process involves creating snapshots, converting them into images, and transferring these images to AWS.

Step 1: Create a Snapshot

To create a snapshot, follow the below steps:

a. Login to your account.

b. Navigate to Services and then click on My Services.

c. Click on your project.

d. Navigate to Compute and then click on Instances.

e. Select the Instance from the list and click on the action icon.

f. Choose Create Snapshot.

g. Enter the Snapshot Name and hit Submit.

Step 2: Create Volume from the Snapshot

a. Navigate to Storage then click on Volumes, locate the volume created from the snapshot.

b. Click the Create Volume button.

c. Enter the Volume Name and set the Volume Size as needed.

d. In the Volume Source dropdown, select Snapshot and choose the appropriate snapshot from the list.

e. Click Submit.

Step 3: Upload Volume to Glance as Image

a. Click on Utilities, then on User.

b. Click on Create User.

c. Enter the Username and Description for the user and click on Create User.

d. Click on Download to save the user credential.

e. Login to the horizon portal with the credential created above.

f. Navigate to the Volumes tab and click on Volumes.

g. Select the volume from the list and click on the action icon. Select the Upload to Image option from the dropdown.

h. Enter the Image Name and select the Disk Format (e.g., qcow2). Click on Upload.

Step 4: Download Images Using OpenStack CLI

i. Access a server with sufficient disk space: Ensure the server has enough volume space to store the images that will be downloaded.

ii. Install and configure OpenStack CLI on the server: Install the OpenStack CLI using the below command:

sudo apt-get install python3-openstackclient -y

iii. Download the RC file from the horizon dashboard:

To download the RC file, follow the below steps:

a. Login to the horizon portal with the credentials created above.

b. Click on the region in the top-left corner and select the region.

c. Click on the user icon in the top-right corner.

d. Click on OpenStack RC File to download the RC file.

iv. Use the following command to list images and check their status:

openstack image list | grep -i <Image-Name>

Note: Replace <Image-Name> with the name of the image you uploaded.

v. Wait for the images to be in the "active" state: The image should be in the "active" state before proceeding to download.

vi. Download the image using the Glance client:

a. Once the image is active, use the following command to download it:

glance image-download --file <Image_Name> <Image-ID> --progress

Note: Replace <Image_Name> with the desired name for the downloaded image file and replace <Image-ID> with the ID of the image.

Step 5: Upload Images to AWS S3

a. Configure AWS CLI on the server:

//Installing AWS CLI
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
apt install unzip -y
unzip awscliv2.zip
sudo ./aws/install
aws configure
//Enter you credentials

Enter your AWS credentials and set the default region.

b. Upload the images to AWS S3:

aws s3 cp <Image-name> s3://<Bucket_Name>/

Note: Replace <Image_Name> with the name of the downloaded image file and replace <Bucket_Name> with the name of your S3 bucket.

Step 6: Register Images as AMIs in AWS

a. Import the images as AMIs:

aws ec2 import-image \
    --description "Description" \
    --disk-containers "Format=RAW,UserBucket={S3Bucket=ace-pc-cloudevopsteam, S3Key=logo/Ubuntu-20.04-ovh}"

Note: Replace <Image_Description> with a description of the image, <Bucket_Name> with your S3 bucket name and <Image_path> with the key of the image file in S3.

b. Monitor the import status:

aws ec2 describe-import-image-tasks --import-task-ids <Import_Task_ID>

Note: Replace <Import_Task_ID> with the ID returned from the import-image command.

Let it complete.

c. Once the import is complete, the image will be available in the AMI section of AWS EC2. You can find it under Images > AMIs in the AWS Management Console.

d. Using this uploaded image, you can launch your instance.

Last updated