国区AWS上传本地文件创建私有AMI镜像(无需aws cli)

一、制作本地镜像文件-VMDK

1、使用VMware或者ESXI,用自己的镜像创建虚拟机

该虚拟机的CPU和内存随意设定,后续在AWS上可以修改,硬盘只需要挂载一块系统盘,创建硬盘时的容量是AWS上拉起实例时的最小硬盘容量

黄金镜像 docker 黄金镜像AMI制作_aws


2、保证虚拟机是DHCP获取IP

查看网卡信息,保证虚拟机能正常获取IP地址

ip addr

黄金镜像 docker 黄金镜像AMI制作_aws_02


查看网卡配置文件,确保虚拟机是DHCP方式获取IP,并且开机启动

vi /etc/sysconfig/network-script/ifcfg-ens33

黄金镜像 docker 黄金镜像AMI制作_aws_03


3、将虚拟机关机,然后“导出为OVF”

选中虚拟机,选中“文件”-“导出为OVF”,然后保存到任意目录下

黄金镜像 docker 黄金镜像AMI制作_云计算_04


得到一下几个文件,我们只需要VMDK后缀的文件

黄金镜像 docker 黄金镜像AMI制作_运维_05


二、上传VMDK文件至AWS平台

1、 在AWS控制台界面选择S3,进入S3管理界面

黄金镜像 docker 黄金镜像AMI制作_运维_06


2、 点击【创建存储桶】

黄金镜像 docker 黄金镜像AMI制作_云计算_07

3、 填写名称,选择区域,并取消勾选【阻止所有公开访问】,其他选项默认,然后点击最下方【创建存储桶】

黄金镜像 docker 黄金镜像AMI制作_云计算_08

4、 点击存储桶名称,进入存储桶详情界面

黄金镜像 docker 黄金镜像AMI制作_上传_09

5、 点击【上传】,上传.VMDK文件

黄金镜像 docker 黄金镜像AMI制作_aws_10

6、 等待上传完成

黄金镜像 docker 黄金镜像AMI制作_运维_11


7、 上传完成后,就能在创建的S3桶里面看到上传的VMDK文件

黄金镜像 docker 黄金镜像AMI制作_云计算_12


三、创建角色vmimport

1、 点击【服务】,打开【IAM】

黄金镜像 docker 黄金镜像AMI制作_aws_13

2、 点击【角色】-【创建角色】

黄金镜像 docker 黄金镜像AMI制作_运维_14

3、 选择【自定义信任策略】,填入以下下内容,然后【下一步】

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

黄金镜像 docker 黄金镜像AMI制作_黄金镜像 docker_15

4、 点击【创建策略】,会新弹出一个创建策略的窗口

黄金镜像 docker 黄金镜像AMI制作_aws_16

5、 服务选择【EC2】,操作选择【所有】,资源选择【所有】

黄金镜像 docker 黄金镜像AMI制作_上传_17

黄金镜像 docker 黄金镜像AMI制作_aws_18

6、 不需要添加标签,直接【下一步】

黄金镜像 docker 黄金镜像AMI制作_运维_19

7、 名称改为【vmimport】,点击【创建】

黄金镜像 docker 黄金镜像AMI制作_黄金镜像 docker_20

8、 创建策略后,返回创建角色界面,点击右边刷新按钮,勾选策略vmimport,然后【下一步】

黄金镜像 docker 黄金镜像AMI制作_aws_21

9、 将角色命名为vmimport,点击【创建角色】

黄金镜像 docker 黄金镜像AMI制作_运维_22

10、创建完成角色后,可以在角色界面看到创建的角色

黄金镜像 docker 黄金镜像AMI制作_云计算_23

四、 将VMDK转换为AMI私有镜像

1、 进入AWS控制台S3界面,点击VMDK的详情,得到VMDK文件的S3 URL

黄金镜像 docker 黄金镜像AMI制作_黄金镜像 docker_24

2、 点击【服务】-【EC2 Image Builder】

黄金镜像 docker 黄金镜像AMI制作_上传_25

3、 点击【映像】-【导入映像】

黄金镜像 docker 黄金镜像AMI制作_黄金镜像 docker_26

4、 填写名称和版本,选择对应的操作系统

黄金镜像 docker 黄金镜像AMI制作_上传_27

5、 导入来选选择【S3 bucket】,位置填写VMDK文件的S3 URL,IAM角色选择【vmimport】,然后点击【导入映像】

黄金镜像 docker 黄金镜像AMI制作_云计算_28

6、 跳转回【映像】界面后,点击上方提示中的【查看详细信息】,等待镜像导入完成

黄金镜像 docker 黄金镜像AMI制作_运维_29

7、 等待状态显示【可用】,表示上传完成,记住镜像的名称【import-ami-xxxx】

黄金镜像 docker 黄金镜像AMI制作_aws_30

8、 进入AWS控制台的EC2界面,点击【AMI】,选择【私有镜像】,可以看到已经转换成功的镜像,名称为【import-ami-xxxx】

黄金镜像 docker 黄金镜像AMI制作_aws_31

五、启动AMI实例

1、 在【AMI】中,选择镜像,点击【从AMI启用实例】

黄金镜像 docker 黄金镜像AMI制作_运维_32


2、按照自己的需求选择配置资源后,启动实例即可

黄金镜像 docker 黄金镜像AMI制作_运维_33