当前位置: 首页 > news >正文

深入探索Amazon EC2:解锁云端计算的无限可能

欢迎来到本次的实验教程,这将引导您在功能强大且充满活力的 Amazon Web Services (AWS) 云中启动并配置虚拟机。

在本次实验中,您将亲身体验如何利用 Amazon 机器映像 (AMI) 启动 Amazon EC2 实例,并掌握使用密钥对进行 SSH 认证登录实例的技巧。此外,您还将学习如何在 AWS 虚拟机上创建并发布网页。

引言

什么是 EC2?

Amazon Web Services (AWS) 推出了革命性的云服务 Elastic Compute Cloud (EC2),为用户提供强大的云端计算能力。通过这款领先的平台,用户可以根据需要租用虚拟机(称为实例),并根据自身的计算需求进行完全自定义配置。

以下是关于 Amazon EC2 的一些重要特点:

  • EC2 赋予用户对虚拟计算资源的全面控制,使他们可以根据自己的偏好选择操作系统、编程语言和应用程序服务器来定制实例。
  • 用户可以配置安全组和网络访问控制列表(ACL),以控制实例的入站和出站流量,从而为应用程序提供安全的运行环境。
  • EC2 提供多种购买选项,包括按需实例、预留实例和竞价实例,用户可以根据应用需求优化成本。
  • EC2 提供丰富的监控和日志功能,例如 Amazon CloudWatch 允许用户实时监控实例、应用程序和资源,而 Amazon CloudTrail 则记录所有 API 调用的日志。
  • EC2 支持多种存储解决方案,包括 Amazon 弹性块存储 (EBS)、Amazon 弹性文件系统 (EFS) 和实例存储卷,用户可以根据应用程序需求灵活选择合适的存储方式。
  • EC2 允许用户创建自定义机器映像 (AMI),以便快速部署具有相同配置和软件环境的新实例,从而节省应用程序部署的时间和精力。

凭借其强大的功能和灵活性,EC2 已成为开发人员、企业和各类业务的首选,助力构建可扩展且强大的云端应用。

架构图

图片引用自whizlabs平台,想亲自动手实践的小伙伴推荐到whizlabs进行动手实验 

创建默认VPC

通过点击顶部的服务菜单,选择VPC或通过链接https://console.aws.amazon.com/vpc/ 打开VPC控制台,选择导航窗格中的“Your VPCs”,找到默认VPC列为“yes”的VPC并删除。

勾选“确认删除默认VPC”选项,输入“delete default VPC”并点击“删除”按钮。 

刷新控制台,进入操作菜单并点击“创建默认VPC”。

 

 点击“创建默认VPC”按钮,即可创建默认VPC。

 根据所需规格启动EC2实例

  • 确保您位于美国东部 (N. Virginia) us-east-1 区域,开始在Amazon云中启动EC2实例。
  • 点击顶部服务菜单,选择计算分类下的EC2。
  • 在左侧面板点击“实例”选项,再点击“启动实例”按钮。
  • 名称:输入MyEC2Server。

 在搜索框中搜索Amazon Linux 2 AMI,并点击“选择”按钮。

注意:如果有两个Amazon Linux 2 AMI,任选其一。实例类型选择t2.micro,用于配置计算资源。

 AWS 密钥对用于登录和访问 EC2 实例,包含放置在实例上的公钥和保存在本地的私钥,确保认证安全。

密钥对(登录):选择“创建新密钥对”

  名称:WhizKey
  类型:RSA
  私钥格式:.pem

网络设置:点击“编辑”
  自动分配公有IP:启用
  选择创建安全组
  安全组名称:MyEC2Server_SG
  描述:允许流量进入EC2的安全组。

 现在添加安全组规则,SSH规则已存在。
对于HTTP,点击“添加安全组规则”按钮,选择类型:HTTP,来源:Anywhere。

安全组是控制云计算环境中特定网络中实例入站和出站流量的虚拟防火墙。这里我们选择了SSH和HTTP规则,允许关联到该安全组的实例接收SSH和HTTP流量。

保留其他设置为默认,点击“启动实例”即可。

要查看已创建的实例,选择“查看所有实例”选项。

启动状态:启动实例后,进入左侧菜单的“实例”页面,等待EC2实例状态变为“运行中”,并确保健康检查状态为2/2通过,以保证最佳性能。

选择您创建的实例,在详情部分复制公共IPv4地址,并粘贴到编辑器中以备后用。流程示例如提供的截图所示。

使用密钥对通过SSH登录到EC2实例

 选择您的EC2实例 (MyEC2Server),点击“连接”,选择EC2 Instance Connect并点击“连接”。浏览器将打开新标签页供执行Linux命令。更多SSH选项参考相关步骤。

 在实例上安装Apache服务器

本任务目标是配置Amazon EC2实例运行Apache Web服务器,并通过实例的公共IPv4地址在浏览器中验证其功能。

切换到root用户:

sudo su

现在运行以下命令进行更新:

yum -y update

完成后,安装并运行Apache服务器:

安装Apache Web服务器:

yum install httpd -y

启动Web服务器:

systemctl start httpd

现在启用httpd,检查Web服务器状态

systemctl enable httpd
systemctl status httpd

如果状态显示“Active”,表示服务器正在运行。
在浏览器地址栏中输入您的EC2实例的公共IPv4地址,验证服务器是否正常运行。如果看到Apache测试页面,说明服务器已启动;否则请检查步骤和安全组的入站规则。

创建一个网页并在实例上发布

在此任务中,使用"echo"命令将内容添加到index.html文件并重启Web服务器。然后通过在浏览器中输入公共IPv4地址后跟"/index.html"查看内容,确保使用HTTP协议。

使用echo将内容添加到index.html,复制以下命令到终端。

echo "<html>Hi Whizlabs, I am a public page</html>" > /var/www/html/index.html

使用以下命令重启Web服务器:

systemctl restart httpd

在浏览器中输入公共IPv4地址后加/index.html即可查看HTML内容,确保使用HTTP协议而非HTTPS。

示例URL: http://52.87.50.168/index.html

注意:如果页面未加载,移除链接中的's'确保是HTTP。

总结

本文详细讲解了如何在AWS EC2实例中配置Apache Web服务器。步骤包括创建和删除默认VPC,启动EC2实例,并通过SSH登录来安装Apache服务器。在服务器启动并启用后,通过实例的公共IPv4地址可以验证服务器的运行情况。接着,使用echo命令在实例上创建并发布网页,并通过浏览器访问实例上的index.html文件,确保使用HTTP协议。如果页面未能加载,需检查是否误用了HTTPS协议。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 使用 grep 进行文本文件搜索
  • 网页开发——DOM与BOM
  • watchEffect 函数 与 watch 函数的区别
  • HTTP 请求流程
  • LeetCode 234 - 回文链表 C++ 实现
  • 设计模式之结构型模式
  • 深入浅出:理解TCP传输控制协议的核心概念
  • Go 语言错误处理
  • keepalive原理详解及应用
  • Windows采用VS2019实现Open3D的C++应用
  • ~Keepalived高可用集群~
  • CAPL使用结构体的方式组装一条DoIP车辆识别请求报文(payload type 0x0002)
  • [Datawhale AI夏令营 2024 第四期] 从零入门大模型微调之旅的总结
  • wordpress网站“ERR_CONNECTION_REFUSED”错误
  • string模拟
  • C学习-枚举(九)
  • JavaScript函数式编程(一)
  • javascript数组去重/查找/插入/删除
  • js递归,无限分级树形折叠菜单
  • Mocha测试初探
  • passportjs 源码分析
  • PHP面试之三:MySQL数据库
  • Redis 中的布隆过滤器
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • Twitter赢在开放,三年创造奇迹
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 编写高质量JavaScript代码之并发
  • 分享一份非常强势的Android面试题
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 基于游标的分页接口实现
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 微信开放平台全网发布【失败】的几点排查方法
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • 1.Ext JS 建立web开发工程
  • 2017年360最后一道编程题
  • ionic异常记录
  • RDS-Mysql 物理备份恢复到本地数据库上
  • #传输# #传输数据判断#
  • (2015)JS ES6 必知的十个 特性
  • (done) 两个矩阵 “相似” 是什么意思?
  • (Java入门)抽象类,接口,内部类
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (二)WCF的Binding模型
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新
  • (九)信息融合方式简介
  • (三)elasticsearch 源码之启动流程分析
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转) ns2/nam与nam实现相关的文件
  • .NET CLR Hosting 简介
  • .net 使用ajax控件后如何调用前端脚本
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • @Resource和@Autowired的区别
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成
  • [.net]官方水晶报表的使用以演示下载
  • [BZOJ]4817: [Sdoi2017]树点涂色