我正在将 Azure 实例迁移到 AWS,我已成功迁移,但使用 EC2 实例连接或使用密钥对执行 SSH 时,我无法登录。我该如何解决这个问题?
我遵循的步骤
- 创建 Azure 磁盘快照
- 下载了快照“.VHD”(30GB)
- 已将文件上传至 S3
- 使用 ec2_client.import_snapshot 创建快照
ec2_client.import_snapshot(
DiskContainer = {
'Description': 'DiskContainers Description',
'Format': f'{file_format}',
"UserBucket": {
'S3Bucket' : f'{s3_bucket}',
'S3Key' : f'{s3_key}'
}
}
)
- 使用 ec2_client.register_image 创建图像(AMI)
ec2_client.register_image(
Architecture = 'x86_64',
BlockDeviceMappings=[
{
'DeviceName': '/dev/sda1',
'Ebs': {
'DeleteOnTermination': True,
'Iops': 3000,
'SnapshotId': f'{snapshot_id}',
'VolumeSize': volume_size,
'VolumeType': 'gp3',
'Throughput': 125,
}
},
],
Description='A description for the new image',
DryRun = False,
EnaSupport=True,
Name=f'{ami_name}',
RootDeviceName='/dev/sda1',
VirtualizationType='hvm',
BootMode='uefi'
)
- 使用 ec2_client.run_instances 从 AMI 创建实例
ec2_client.run_instances(
ImageId=ami_id,
InstanceType=instance_type,
KeyName=key_pair_name,
MinCount=1,
MaxCount=1,
SecurityGroupIds=security_group_ids
)