详尽指南:如何在亚马逊云科技上从本地镜像文件构建私有AMI并部署云服务器

说我们会遇见一个问题,比如说我们要把我们自己的一个镜像,放服务器上进行使用,这是我们该怎么办?或者说我们要把我们本地的镜像,上传到服务器上面进行使用那么有没有什么比较好的办法?来看看详尽指南:如何在亚马逊云科技上从本地镜像文件构建私有AMI并部署云服务器,本教程你可以学习如何把自己本地的镜像上传到服务器上使用,这样以后可以无缝衔接工作更顺畅了。

什么是AMI

Amazon 机器映像(AMI)是承载软件配置的模板,包括操作系统、应用服务器以及应用程序,它是启动 亚马逊云科技 实例的基础。

AMI 是一种区域资源,但支持跨区域复制,确保全球部署的一致性。AMI 的访问权限可以设定为私有或公共,甚至可以指定特定的 亚马逊云科技 账户进行访问。

在选择 AMI 时,以下特征至关重要:

  • 地区:根据计划启动实例的区域来挑选 AMI。
  • 操作系统:依据需求选择合适的操作系统。
  • AMI 类型:根据工作负载的需求选择相应的 AMI。
  • 实例类型:确保所选 AMI 与你打算使用的任何实例类型兼容。
  • 架构:基于应用需求选择 32 位或 64 位架构。
  • 根设备存储:根据存储和性能需求决定使用 EBS 还是实例存储作为根设备。

再看回刚刚启动过程中几个重要的概念,AMI作为EC2启动模板,不同的AMI内含有不同的操作系统,服务器,应用程序,您可以选择 亚马逊云科技或用户社区或提供的 AMI,您也可以使用自己制作的AMI来启动EC2 。AMI给管理带来很大的便捷,如果想跨区域部署,或者在别的可用区部署相同的实例,可以先根据实例创建一个AMI,然后跨区域复制AMI,以保证全球部署的EC2一致性。如果您想把AMI分享给别的账户使用,可以改变AMI的访问权限。在选择AMI的时候您可以从地区,适用的实例,操作系统类型和架构这几方面的特性去选择,特别是在选择根设备存储类型时需要注意区别实例存储和EBS。

我在这之前,我们首先需要开通一个亚马逊云科技的账号 目前呢,他们是有免费的体验计划的,我建议咱们可以直接使用这个免费的计划,比如可以免费试用云服务器(ec2)这个产品试用链接:亚马逊云科技,下面教程我也是使用这个进行讲解

20240705215641430-%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE-2024-07-05-215612.png

那么教程开始

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

  1. 使用VMware或者ESXI ,用自己的镜像创建虚拟机,下面我使用的是vmware进行演示,使用这个的话,提前你需要先把你需要弄的都弄好,确定好你这个是需要的镜像,提前把你需要安装的软件呀,需要安装的服务装上,该虚拟机的CPU和内存随意设定,后续在亚马逊云科技上可以修改,硬盘只需要挂载一块系统盘,创建硬盘时的容量是亚马逊云科技上拉起实例时的小硬盘容量
20240705212754421-%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE-2024-07-05-212714.png
  1. 保证虚拟机是DHCP获取IP

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

IP

地址

20240705213527667-%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE-2024-07-05-213451.png

查看网卡配置文件,确保虚拟机是dhcp

  1. 将虚拟机关机,然后“导出为OVF” 选中虚拟机,选中“文件”-“导出为OVF”,然后保存到任意目录下
20240705213624901-%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE-2024-07-05-213605.png

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

20240705203136964-word-image-11178-5.jpeg

二、上传VMDK文件至亚马逊云科技平台

  1. 在亚马逊云科技控制台界面选择S3,进入S3管理界面
20240705203137537-word-image-11178-6.jpeg
  1. 点击【创建存储桶】
20240705203138326-word-image-11178-7.png
  1. 填写名称,选择区域,并取消勾选【阻止所有公开访问】,其他选项默认,然后点击 下方【创建存储桶】
20240705203139101-word-image-11178-8.jpeg
  1. 点击存储桶名称,进入存储桶详情界面
20240705203140229-word-image-11178-9.png
  1. 点击【上传】,上传.VMDK文件
20240705203141101-word-image-11178-10.png
  1. 等待上传完成这里说要注意一下,这时候网一定要保持良好的网络,不然他上传不成功,而且建议别弄的太大,那个太大的话,我感觉上传也费劲。
20240705203141790-word-image-11178-11.png
  1. 上传完成后,能在创建的S3桶里面看到上传的VMDK文件
20240705203142122-word-image-11178-12.png

三、创建角色vmimport

  1. 点击【服务】,打开【IAM】
20240705203143948-word-image-11178-13.jpeg
  1. 点击【角色】-【创建角色】
20240705203144580-word-image-11178-14.jpeg
  1. 选择【自定义信任策略】,填入以下下内容,然后【下一步】
20240705203145703-word-image-11178-15.png
  1. 点击【创建策略】,会新弹出一个创建策略的窗口
20240705203146108-word-image-11178-16.png
  1. 服务选择【EC2】,操作选择【所有】,资源选择【所有】
20240705203148218-word-image-11178-17.png
20240705203149523-word-image-11178-18.png
  1. 不需要添加标签,直接【下一步】
20240705203150406-word-image-11178-19.png
  1. 名称改为【vmimport】,点击【创建】
20240705203151271-word-image-11178-20.png
  1. 创建策略后,返回创建角色界面,点击右边刷新按钮,勾选策略vmimport,然后【下一步】
20240705203153458-word-image-11178-21.png
  1. 20240705203154992-word-image-11178-22.png将角色命名为vmimport,点击【创建角色】
20240705203156674-word-image-11178-23.png
  1. 创建完成角色后,可以在角色界面看到创建的角色

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

  1. 进入亚马逊云科技控制台S3界面,点击VMDK的详情,得到VMDK文件的S3 URL
20240705203158526-word-image-11178-24.png
  1. 点击【服务】-【EC2 Image Builder】
20240705203159878-word-image-11178-25.jpeg
  1. 点击【映像】-【导入映像】
20240705203200605-word-image-11178-26.png
  1. 填写名称和版本,选择对应的操作系统
20240705203201950-word-image-11178-27.png
20240705203202494-word-image-11178-28.jpeg
  1. 导入来选选择【S3 bucket】,位置填写VMDK文件的S3 URL,IAM角色选择【vmimport】,然后点击【导入映像】
20240705203203786-word-image-11178-29.png
  1. 跳转回【映像】界面后,点击上方提示中的【查看详细信息】,等待镜像导入完成
  2. 等待状态显示【可用】,表示上传完成,记住镜像的名称【import-ami-xxxx】
20240705203204180-word-image-11178-30.png
  1. 进入亚马逊云科技控制台的EC2界面,点击【AMI】,选择【私有镜像】,可以看到已经转换成功的镜像,名称为【import-ami-xxxx】
20240705203206584-word-image-11178-31.png

五、启动AMI实例

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

20240705203207547-word-image-11178-32.png

最后等待他启用成功,然后可以直接进行连接,会发现和你刚才的虚拟机里面的一模一样,这时候你基本上是算是完成了,问题可以说是不大了,然后可以正常使用了。

© 版权声明
THE END
喜欢就支持一下吧
点赞5打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容