Мигрируем виртуальную машину из VirtualBox в облако AWS

Cloud 13-06-2023, 20:06 sobir 1 012 0


Вкратце рассмотрим процесс миграции локальной виртуальной машины с операционной системой GNU/Linux из VirtualBox в облако Amazon Web Services.

Предполагается, что у вас уже имеются:
  1. Виртуальная машина с ОС GNU/Linux в VirtualBox.
  2. Аккаунт в AWS.
  3. Бакет в хранилище Amazon S3.
  4. Настроенный интерфейс командной строки AWS CLI.

Тип диска для виртуальной машины выбираем в формате VMDK (Virtual Machine Disk).


Далее необходимо экспортировать виртуальную машину из VirtualBox в формате OVF 0.9 с расширением файла .ova и загрузить образ в хранилище Amazon S3.


Затем создайте роль vmimport в AWS IAM:



Создайте политику разрешений для роли, нажав на "Create inline policy".


Переключитесь в редактор политик JSON и вставьте следующую политику:

Замените "your-bucket" на имя вашего бакета Amazon S3.
{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:ListBucket",
            "s3:GetBucketLocation"
         ],
         "Resource":[
            "arn:aws:s3:::your-bucket"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetObject"
         ],
         "Resource":[
            "arn:aws:s3:::your-bucket/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "ec2:ModifySnapshotAttribute",
            "ec2:CopySnapshot",
            "ec2:RegisterImage",
            "ec2:Describe*"
         ],
         "Resource":"*"
      }
   ]
}



После создания политики перейдите в "Trust relationships" и приведите политику к следующему виду:


{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "vmie.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "sts:ExternalId": "vmimport"
        }
      }
    }
  ]
}

Создайте файл "containers.json" на локальной машине, где установлен AWS CLI, со следующим содержимым:
[
  {
    "Description": "My Server OVA",
    "Format": "ova",
    "UserBucket": {
        "S3Bucket": "your-bucket",
        "S3Key": "Ubuntu.ova"
    }
  }
]

Попробуйте запустить задание по импорту образа с помощью команды:
aws ec2 import-image --description "Ubuntu" --disk-containers "file://containers.json"

Статус задания по импорту образа можно посмотреть командой:
aws ec2 describe-import-image-tasks --import-task-ids import-ami-[printed with previous step]
Похожие новости
Поднимаем мультипротокольный VPN SoftEther на Ubuntu 22.04

Поднимаем мультипротокольное VPN решение для удаленного доступа — SoftEther VPN Server, а также настроим...

Подробнее
Настройка частного реестра Docker Private Registry

Создаем свой репозиторий образов контейнеров Docker....

Подробнее
Настройка среды контейнеризации приложений на Docker / Podman в CentOS 8 / RHEL 8

Настраиваем среду контейнеризации приложений с помощью Podman’а....

Подробнее
Увеличиваем корневой раздел диска Linux на лету с помощью LVM

Увеличиваем корневой раздел диска Linux на лету с помощью LVM....

Подробнее
How to deploy ClickHouse Server with Docker Compose

Quickly start a ClickHouse database server in a Docker container....

Подробнее
Настройка часового пояса в Ubuntu с помощью Ansible

Настраиваем часовой пояс в Ubuntu при помощи Ansible....

Подробнее
Комментарии (0)
Новые комментарии
komronu8 сентября 2022 18:23

Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда

img
К комментарию
sobir26 августа 2022 10:43

Можно ещё так: 1. Создаем отдельную сеть для наших контейнеров docker network

img
К комментарию
komronu22 августа 2022 15:12

Спасибо за отзыв, написал отдельную статью по установке и настройке Ansible

img
К комментарию
sobir19 августа 2022 18:00

Думаю в статье необходимо также описать процесс установки Ansible.

img
К комментарию
sobir17 октября 2021 11:40

Принудительное обновление сертификата: certbot certonly --force-renew -d

img
К комментарию
sobir3 июля 2021 14:19

Можно, но я решил описать процесс копирования ключей более подробно.

img
К комментарию
Все комментарии
Какой дистрибутив Linux вы часто используете?
Календарь
«    Апрель 2024    »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930 
Подпишись на канал