久负盛名的 EC2 是亚马逊云科技推出的云服务器产品。继上次免费注册了 亚马逊云科技 账号之后,最近又试用了亚马逊云科技的云服务器 EC2。和上次一样,我把试用的过程记录下来,希望对你有用。
云服务器介绍
上一篇 亚马逊云科技产品免费试用攻略(1) - 注册账户 中对云服务器做了简单的介绍。从本质上说,云服务器就是 CPU 算力的虚拟化,将 CPU 资源切分成可交付的单元,客户以远程访问方式利用这些资源。大幅降低了客户的购买和维护成本。你只需要付出一顿饭钱,就可以独占地使用高性能、高可靠、高速网络的服务器,而不用关心日常复杂的维护事务。
( ☝计算资源虚拟化 )
最近发现亚马逊云科技推出了 EC2 服务器 免费使用 12个月的活动,于是亲手体验一把,这里记录完整的使用过程,希望对你有帮助。
准备工作
为了能顺利试用 EC2 云服务器,需要事先具备以下条件:
- 一台联网的电脑
- 一个亚马逊云科技的账号(可以参考 这篇文章 免费注册)
首先登录亚马逊云科技,再打开 免费试用的页面,如下图所示:
( ☝免费使用入口 )
进入界面
进入控制台后,点击左上角的服务按钮,从菜单最底下找到 “计算”,就可以在子菜单里找到 EC2,如下图所示:
( ☝菜单入口 )
首先从右上角的下拉菜单中选择云服务器所处的地理区域。从图中可以看到,有北美、亚太、欧洲和巴西可以选择。
( ☝选择地理区域 )
选择好地理位置后,就可以创建新的云服务器 实例 下文会多次出现实例(Instance)这个术语,指你当前使用的云主机。因为云主机可以随时创建和销毁,所以就像一个内存中的实例对象一样。 了。
点击最醒目的橘红色按钮:
( ☝启动实例 )
进入 “创建云主机实例” 界面,接下来需要配置云主机的各项参数。
配置云主机名称
在创建云主机的界面,可以根据你的意愿,在表单中输入一系列主机配置参数,创建你想要的云主机。
这正是云主机的优势之一:如果是你自己购买硬件,如果遇到需求变更,需要升级或者降级原有配置,基本只有重新购买一种办法,这无疑提高了使用成本。
而对于云主机,只需要销毁原有实例,重新创建一个就可以了,前前后后只消几分钟。既节省了硬件成本,又节约了时间成本。
首先是填入云主机的名称,用于今后识别。
( ☝启动实例 )
配置云主机镜像
接下来是选择镜像的种类和版本。镜像用于建立云主机的操作系统,这一步是必不可少的。没有操作系统,就没有办法使用云主机。
从列表中可以看到有以下操作系统的镜像,涵盖了当今流行的所有操作系统版本,总有一款适合你:
- Amazon Linux
- macOS
- Ubuntu
- Microsoft Windows Server
- Red Hat
- Suse Linux
- Debian
以 Amazon Linux 为例,可以看到目前提供了三种免费镜像供选择:
( ☝Amazon Linux )
以 Ubuntu 为例,可以看到目前提供了2个免费版本(分别是 24.04 和 22.04 )供选择:
( ☝Ubuntu )
配置云主机的实例类型
选择好镜像后,可以选择云主机的实例类型。
实例类型也就是主机的配置高低,根据 CPU 的个数、内存的大小和网络接口速度的不同,有以下一些选项的组合:
根据网络性能分类:
- t2
- t3
- c4
- c5
根据 CPU 和内存资源分类:
- nano
- micro
- small
- medium
- large
- xlarge
- 2xlarge
以上两种维度的组合,就是全部可以选择的实例类型。
目前免费的实例类型仅有 t2.micro
,即 1个vCPU、1G内存,中等网络性能,这个配置是最适合新手试用的。
( ☝主机配置等级 )
选择实例类型后,接下来是创建密钥对的环节。
创建密钥对
密钥对(key pairs)用于在主机和访问者之间建立信任。
什么叫建立信任?我们用银行来打个比方:有一家银行,今天有10个人同时上门,要从同一个账户里取钱。银行当然不会付钱给每个人。因为在银行眼里,每个陌生人默认是都不信任的。要发生交易,需要事先和银行建立起信任关系。
一般的做法是:银行向每个人询问密码,能说出和早前设定的密码相一致的密码的人,才能获得银行的信任,才能取走钱。
反过来,有一个人打算到某银行存一笔钱到自己账户里,这时有10家银行声称本行有这个人的账户,希望他来存钱。这个人当然不会每个银行都去存,他必须会挨个检查银行的公章,能有正确公章的银行,才是可以相信的银行。
以上是通行的做法,但是这种单方面提供的信物,仍然有许多不足之处,比如:第一,只有单向验证,建立的信任关系不够强,很多时候,不信任都是双向的,需要同时建立双向的信任;第二,如果密码长度过短,则强度不够,如果密码太长,人的记忆力又不够(很多人连 6 位密码都记不住)。所以需要更强、更方便的双向信任机制。这一点我们两千年前的老祖宗已经想到了解决办法。
( ☝杜虎符 )
战国四公子之一的信陵君窃符救赵的故事,讲的就是这个道理。信陵君为了调动驻扎在外的魏国大军营救赵国,就必须取得魏军的信任。而只凭自己一张嘴,到军队面前假传圣旨,肯定是行不通的。所以信陵君才不得不想办法窃取国君的虎符,去调动军队。当信陵君手中的一半虎符和将军手里拿的虎符相合时,才可能建立起信任。
密钥对就是今天的“电子版”虎符。顾名思义,密钥对包含了两个密钥,分别是公开密钥(public key)和私有密钥(private key)。公开密钥放置在远端的云主机上,私有密钥则由用户妥善保管。用户在每一次登录的过程中,同时指定远端和本地的一对密钥。为了 使用上的方便 代价是降低了安全度 ,可以为你的所有云主机使用同一套密钥对。
再说回 EC2 云主机,在网页上创建的密钥对,会在创建云主机的时候自动 把公开密钥配置进云主机 一般情况下会配置在 ~/.ssh/authorized_keys 文件中 ,当你持有对应的私有密钥登录云主机时,就可以畅通无阻的成功登录。
在 EC2 云主机中创建密钥对需要填写的信息如下图:
( ☝创建密钥对 )
密钥对名称
首先要为密钥对起个名字,这个名字将作为密钥文件的文件名。
密钥对类型
可以在 RSA 或 ED25519 两种加密算法间选择。RSA 是最经典最普遍的算法,而 ED25519 的性能更优。
私钥文件格式
私钥文件本身其实还是文本文件,文本格式分为 OpenSSH 和 Putty 两种格式,它们相互不兼容。如果你使用 MacOS 或者 Linux 的 Terminal 程序登录,可以用 OpenSSH 格式;如果在 Windows 下使用 Putty 登录,则可以使用 Putty 格式的私钥。
点击“创建密钥对”按钮,将弹出下载框,这是为你生成的私钥文件,把它保存在安全的地方。后面登录云主机的时候用得上。注意,创建密钥对是必选步骤,这一步只有创建了密钥才可以以 SSH 方式登录。
网络设置
由于云主机主要是从网络上接受远程连接,所以这一节网络配置主要是安全角度考虑。一般按照默认选项即可。
( ☝网络设置 )
配置存储
接下来配置你的磁盘分区,从下图上的提示可以看到:免费使用的客户最多可以获得 30GB 的磁盘空间。
( ☝配置存储 )
磁盘介质有 SSD 和 机械磁盘两种,存储格式则也有多种,如下图所示:
( ☝磁盘格式 )
其他高级配置
对于免费试用的用户来说,可以暂时忽略这些高级配置。
( ☝高级详细配置 )
创建云主机实例
在页面的右侧,有一个关于云主机信息的摘要。里面简要描述了当前即将创建的云主机的配置。
( ☝高级配置 )
点击下方的“启动实例”按钮,启动创建云主机过程。创建过程会显示进度条,整个过程会在 10 秒钟以内完成。
( ☝启动实例 )
成功创建后,页面提示有三件事可以做:
- 创建免费使用量提醒
- 如何从本地电脑连接到云主机
- 连接数据库
( ☝成功创建实例 )
我们目前只需要做其中第 2 项:连接到主机。
点击“连接到实例”按钮,会跳到另一个页面。
连接到实例
在 “连接到实例” 页面中,提供了 4 种连接方式,分别是:
- EC2 Instance Connect,通过浏览器界面连接云主机实例
- 会话管理器
- SSH 客户端,用你本地安装的 Terminal 或者 Putty 登录
- EC2 串行控制台
( ☝连接到实例 )
从界面上可以看到,你的云主机已经有了一个 公网 IP 图中 13.124 开头 ,所以可以从浏览器端直接访问这个 IP 地址。
下面仅介绍第 1 种和第 3 种方式:
EC2 Instance Connect
从网页登录是最方便的登录主机的方式。
点击右下角“连接”按钮,就出现网页版的云主机界面,这是第一次见到你的主机。注意:云主机的 hostname 是按照其私网地址命名。
( ☝EC2 Instance Connect )
查看主机的资源:
( ☝查看主机资源 )
SSH 客户端
上文中 创建密钥对 一节中提到,只有创建了密钥对才能以 SSH 方式登录。这里介绍如何用私钥以 SSH 方式登录。
我们假设前一节中提供下载的私钥文件名称为 key.cer
,我们将其保存在 ~/.ssh/
目录下,然后执行命令:
$ chmod 400 ~/.ssh/key.cer
因为私钥的保密工作极其重要,所以 SSH 程序一般会检查私钥文件的读写权限,要求只有 owner 可读才能进行下一步登录工作。
接下来修改 ~/.ssh/config
,添加如下内容:
Host cloud
HostName 13.124.xxx.xxx
User ec2-user
IdentityFile ~/.ssh/key.cer
文件内容的解释:
第 1 行的 Host
后方的名字是云主机的别名,可以按你的喜好随意命名
第 2 行的 Hostname
则是真实的地址,可以用主机的公网地址,或者按页面上提供的 域名
例如:ec2-13-124-xxx-xx.ap-northeast-2.compute.amazonaws.com 这种形式 第 3 行的 User
一般都是 ec2-user
第 4 行的 IdentityFile
就是你的本地私钥文件的路径
保存 ~/.ssh/config
文件,接下来在命令行上输入:
$ ssh cloud
就可以登录到远程云主机,看到如下界面:
( ☝SSH 登录 )
这里是在询问你是否信任远端?输入 yes
后回车,就进入了 SSH 界面,和上一节 里的界面十分相似。
( ☝SSH 登录界面 )
查看实例列表
SSH 连接上主机后,就可以随意享用 EC2 提供的计算资源了。当我们有多台云主机后,就会需要一个主机列表,用于查询主机状态、操作主机等等。
从左侧的 “实例” 链接就可以打开主机列表的页面
( ☝实例列表 )
在勾选主机名称左侧的复选框后,还能进一步的查看主机信息:
( ☝主机详细信息 )
免费套餐
请时刻注意 EC2 控制台右上角的关于免费套餐用量的提示,以免意外扣费。
( ☝免费套餐的用量提示 )
试用总结
从云主机的申请流程,再到创建、登录、管理实例的界面,能看出亚马逊云科技的EC2云主机提供了非常专业的服务,整个使用过程丝滑流畅,没有任何歧义的操作,需要用户重点关注的按钮、提示文字也容易找到。作为一个新用户,我并不需要寻找帮助文档就可以轻松的完成整个使用流程。
主机连接流畅,无论是从 web 页面登录还是用本机的终端登录,都感觉不到任何的延迟。总之亚马逊云科技的 EC2 主机称得上主机界的 “保时捷”:外表华丽,内在强劲。
然而请注意:当你不再用云主机的时候,请记得删除实例,不然如果超过了免费期,会自动从你 注册 时候预留的信用卡中扣除费用。
再请注意:免费试用可能仅限于一个云主机实例,如果你起了多个实例,有可能会被收费。而且收费都是以美元计。
还请注意:当你使用云主机开启对外服务后,记得时刻注意流量的消耗。
下一篇将介绍亚马逊云科技的另一款著名产品:S3 对象存储。
如果您对本文有疑问或者寻求合作,欢迎 联系邮箱 。邮箱已到剪贴板
系列: 亚马逊产品试用
精彩评论
本站 是个人网站,采用 署名协议 CC-BY-NC 授权。
欢迎转载,请保留原文链接 https://www.lfhacks.com/tech/aws-ec2/ ,且不得用于商业用途。