目录
一、选择AWS 的EC2(Amazon Elastic Cloud Compute)服务
二、启动一台EC2实例
三、EC2 实例密钥对
四、连接EC2实例
五、总结
六、小实验
以下实验均在Amazon Web Service 的一年免费套餐使用范围内,若有超出免费套餐使用范围麻烦各位指出谢谢。
使用Amazon Web Service(AWS亚马逊云服务)创建一台带有部分软件包EC2实例,以方便进行LAMP架构的搭建,使用的AMI(即系统映像)为Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type,Amazon Linux AMI自带AWS CLI(AWS命令行工具)使用相对比较方便, 但Amazon Linux AMI底层应该是基于Linux Centos 6进行开发的,并且不提供systemd,若你想享受更高内核、其他软件包时可以选择Amazon Linux 2 AMI (HVM), SSD Volume Type
下图是2018年Amazon Linux 2 AMI与Amazon Linux AMI,都属于一年的免费套餐可根据自己需求进行选择
好了不作多的废话,直接上图手把手教程?
Putty下载分享:
链接:https://pan.baidu.com/s/10D9uofWiNsDI2rREJm5WKA
提取码:q0r7
1. 可选:进入AWS首页后滚动至最下方,可将Language(语言)切换为中文简体
让你不好好学英语?
2. 点击最上方的services,选择EC2服务
启动EC2实例一般分为7个步骤,下面我将依次讲解
1. 选择Amazon AMI
获取AMI有四种途径:AWS Marketplace、社区AMI 、VM on AWS 与 自己制作的AMI(可跨Region共享)
关于 Amazon AMI 详细介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/AMIs.html
这里我选择 Amazon Linux AMI
2. 选择实例类型
实例类型分为多种:突发性能实例、通用实例、计算优化型实例、内存优化型实例、存储优化型实例、加速计算型与T1微型实例
同时你也可以在停止实例的状况下更换实例类型
关于 实例类型 详细介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/instance-types.html
3. 配置实例
选择启动实例的数量、网络、监控等等,你也在“ 高级详细信息 ”中写入用户数据(即启动实例时想运行的命令或脚本),但一个实例的生命周期内只能执行一次用户数据
关于配置实例详细信息介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide
4. 选择存储
Amazon EC2 为实例提供了灵活、经济且易于使用的数据存储选项。各选项都具有独特的性能和耐久性。这些存储选项既可以单独使用,也可以组合使用,以便满足业务需求
Amazon EBS 提供块级别的持久存储卷,可以创建大小高达 16TiB 的 EBS 通用型 SSD (gp2
)、预配置 IOPS SSD (io1
)、吞吐优化 HDD (st1
) 和 Cold HDD (sc1
) 卷,并将这些卷附加到正在运行的实例。
Amazon EC2 实例存储 很多实例可以访问物理附加到主机的磁盘中的存储。
Amazon EFS 提供可扩展文件存储以供和 Amazon EC2 一起使用。
Amazon S3 提供了可靠的廉价数据存储基础设施。
关于EC2 存储的详细介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/Storage.html
5. 添加标签
方便EC2实例的管理与数据追踪
6. 配置安全组
安全组起着虚拟防火墙的作用,可控制一个或多个实例的流量。在你启动实例时,可指定一个或多个安全组;否则AWS将使用默认安全组。你也可以为每个安全组添加规则,规定流入或流出其关联实例的流量。你可以随时修改安全组的规则;新规则会自动应用于与该安全组关联的所有实例。在决定是否允许流量到达实例时,AWS会评估与实例关联的所有安全组中的所有规则。
关于 安全组 详细介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/using-network-security.html
7. 审核
确认配置是否正确
关于密钥对可能是很多新手在使用AWS云服务时所遇到的难点,所以现在我单独列出来进行讲解:
Amazon EC2 使用公有密钥加密方法加密和解密登录信息。公有密钥密码术使用公有密钥加密某个数据(例如一个密码),然后收件人可以使用私有密钥解密数据。公有和私有密钥被称为密钥对。要登录你的实例,你必须创建一个密钥对,并在启动实例时指定密钥对的名称,然后使用私有密钥连接实例。在 Linux 实例中,公有密钥内容将放在 ~/.ssh/authorized_keys
内的一个条目中。此操作在启动时完成,使你能够使用私有密钥安全地访问实例,而不是使用密码,这确保了EC2实例的安全性
关于 密钥对 详细介绍:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ec2-key-pairs.html
注意:Amazon EC2 不保存私有密钥副本(如果保存了你就别用这个服务了,懂吧);因此,如果你丢失私有密钥,将无法恢复。
不过也并非没有解决办法,我将在后续讲解
1. 如果你之前存在密钥对则可以直接使用
2. 新建一个密钥对(Windows 10 连接EC2实例)
因为我使用的Windows 10所以得使用Putty工具进行远程连接,但Putty需要得是 .ppk 所以需要使用Puttygen工具将下载下来得 .pem 文件转换为 .ppk 文件,如若你使用得Mac或Linux计算则只需将 私钥文件 赋予 400权限确保只有你自己可以读取它,然后使用ssh命令连接即可
chmod 400 my-key-pair.pem
ssh -i "my-key-pair.pem" ec2-user@ip
例子:
ssh -i "Zhang-Test.pem" [email protected]
3. 使用Puttygen工具将pem文件转换为putty可用的ppk文件
1. 查看EC2 实例运行状况 与 公有IP地址
2. 打开putty工具,输入 Host Name
3. 导入对应私有密钥ppk文件
4. 登录并查看 EC2 实例
现在我们已经成功创建了一台EC2实例,对比AWS与阿里云,各位有没有发现在阿里云启动一台云服务器ECS和在Amazon Web Service启动一台云服务EC2有许多相似之处,却又有着巨大的差异。在安全性方面AWS考虑得更加细致,它让用户使用密钥对登录EC2实例,而并非用户名密码登录,这些需要各位在使用过程中去善于发现、对比。
既然我们已经有了一台EC2实例,你不妨做个小实验,试试将你现在的EC2实例停止后再启动,你会发现你的EC2实例的公有IP地址与公有DNS已经发生了改变,这是由于EC2实例一旦停止便会释放所有AWS 资源,所以当EC2实例停止后再启动,公有IPv4DNS与公共IPV4都会更改,这在业务上想必会造成许多麻烦,各位是不是觉得这可太恶心,难道AWS就没有应对策略么?答案是当然有,这我将在下篇博客进行讲解。