在本文中我们有三个任务。
第一:使用Amazon management console创建一个EC2实例。
第二:使用本地的命令行工具远程登陆到该EC2实例。
第三:在该EC2实例上创建一个web服务,并通过公共域名来访问该web服务。

如果你还没有AWS的账号的话,可以使用qwiklabs提供的免费实验来进行该练习。地址是https://run.qwiklabs.com

登陆到亚马逊的AWS服务的management console后选择EC2服务。

然后你就可以到EC2的控制面板了。

点击上面大大的Launch Instance按钮来开始创建一个新的EC2实例。

首先要选择机器的镜像文件AMI(Amazon Machine Image),有各种Linux的发行版,也有Windows系统。在本次实验中我们选取第一个,即Amazon Linux AMI,亚马逊自己的一个Linux发行版。

然后是选择机器类型,不同类型机器性能不同,收费标准也不一样,一切都是根据你的需求来决定。就选第一个吧,最便宜。

然后你有两个选择,一个是点击Review and Launch直接启动新机器,其余参数都采用默认值,另一个是点击Next:Configure Instance Details自定义其它配置。在这里我们选择第二个按钮,然后直到step6:Configure Security Group。

这里是配置安全组的,你可以使用已有的安全组,也可以创建一个全新的安全组。在安全组里可以设置一系列策略来管理该实例与外界的访问情况。

由于我们需要远程登录到该实例,并且需要该实例提供http服务,所以我们需要开放22和80端口。22端口默认是开放的,80端口则需要手动开放。方法是点击Add Role按钮并新加一个role。

配置完成后点击Launch按钮,会弹出一个页面让你设置key pair。

这个key pair是用来与该实例建立安全连接。亚马逊会存一个公钥,自己在本地存放一个私钥,当想要连接该实例时,需要提供私钥。这里我们选择新建一个key pair,并取名为awsworkshop,选择保存到本地。稍后会使用它来ssh到该实例。

点击Launch Instances按钮,实例就会被初始化了。

点击View Instances来查看新创建的实例。

一般需要等待3到5分钟来完成对新实例的初始化。在上图中可以查看该实例的相关信息。亚马逊给该实例分配了一个公共IP和公共DNS域名,稍后需要使用它们。

等到该实例的Instance Statusrunning后,我们就可以进行第二个任务了,就是远程连接到该实例。

打开你心爱的终端,然后先提升刚保存的pem文件的权限。

1
$: chmod 600 ~/Downloads/awsworkshop.pem

然后在AWS的控制面板上找到该实例的公共IP,使用ec2-user用户名来ssh到该实例。

1
$: ssh ec2-user@54.191.210.210 -i ~/Downloads/awsworkshop.pem

稍微等待以后就可以连接到远程实例了。

1
2
[ec2-user@ip-172-31-46-246 ~]$ who
ec2-user pts/0 2014-07-26 06:38 (123-243-183-184.static.tpgi.com.au)

怎么样?一切都非常简单吧?

下面就进行这个实验的最后一个任务了,在该远程实例上搭建一个web服务器。

ssh到该实例后,执行下面命令。

1
$: sudo yum install httpd

这句命令是安装Apache的httpd服务器。

然后跳转到/var/www/html目录下,并新建一个名为index.html的文件。

1
2
$: cd /var/www/html
$: sudo touch index.html

使用你习惯的编辑器在该文件中输入一个html格式的文档并保存。

1
2
3
4
5
<html>
<body>
<h1>Hello World!</h1>
</body>
<html>

接下来启动web服务器。

1
$: sudo service httpd start

大功告成,从该EC2实例的控制面板中找到其公共DNS,然后粘贴到浏览器中,就可以访问其提供的web服务了。

好了,这三个任务也就都完成了。希望大家喜欢这次EC2之旅。

AWS系列之二 使用EC2的更多相关文章

  1. AWS—Xshell工具远程登录EC2虚拟机

    一.创建AWS账户(已有AWS账号的请跳过) 访问 https://amazonaws-china.com/cn/,点击创建AWS账户,根据提示填写个人相关信息,创建AWS账户. 二.创建EC2虚拟机 ...

  2. 【疯狂造轮子-iOS】JSON转Model系列之二

    [疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...

  3. 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新

    上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...

  4. MySQL 系列(二) 你不知道的数据库操作

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 本章内容: 查看\创建\使用\删除 数据库 用户管理及授权实战 局域网 ...

  5. ES6+ 现在就用系列(二):let 命令

    系列目录 ES6+ 现在就用系列(一):为什么使用ES6+ ES6+ 现在就用系列(二):let 命令 ES6+ 现在就用系列(三):const 命令 ES6+ 现在就用系列(四):箭头函数 => ...

  6. CRL快速开发框架系列教程二(基于Lambda表达式查询)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  7. Web 前端开发精华文章推荐(jQuery、HTML5、CSS3)【系列十二】

    2012年12月12日,[<Web 前端开发人员和设计师必读文章>系列十二]和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HT ...

  8. C#微信公众号开发系列教程二(新手接入指南)

    http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...

  9. 当我们说线程安全时,到底在说什么——Java进阶系列(二)

    原创文章,同步发自作者个人博客,转载请以超链接形式在文章开头处注明出处http://www.jasongj.com/java/thread_safe/ 多线程编程中的三个核心概念 原子性 这一点,跟数 ...

随机推荐

  1. 多线程Server client

    项目结构 项目设计 客户端同时大量请求服务端,服务端多线程处理连接,并发序列化获得客户端发送的数据,并做出处理. IClients package simple.socket; import java ...

  2. 实验 2 用C语言编写简单程序

    #include<stdio.h> int main() { int x,y; printf("enter x:"); scanf("%d",&am ...

  3. IIS出现 分析器错误消息: 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的

    这是因为发布的时候按了“生成部署包”

  4. javascript code snippet -- Forwarding Mouse Events Through Layers

    Anyone who has worked with web apps has likely created a masking element at some point, and the grea ...

  5. nodejs研究笔记

    首先呢,安装 1:安装mongodb-win32-x86_64-3.2.5-signed.msi 2:手动创建目录 如 C:\data\db 及 C:\data\dbConf 3:管理员身份运行 cm ...

  6. mysql删除开放用户权限

    来访用户ODBC 1,在本地的cmd中用root用户进入mysql2,创建一个ODBC的用户create user 'ODBC'@'localhost';查看用户是否创建成功select user,h ...

  7. Android广播大全

    1.String ADD_SHORTCUT_ACTION 动作:在系统中添加一个快捷方式. 2.String ALL_APPS_ACTION 动作:列举所有可用的应用.输入:无. 3.String A ...

  8. ArcGIS10.1 api for Flex开发用于ArcGIS 9.3时QueryTask 'Error #2032'错误的解决方案

    因客户GIS软件需求,将应用降级到低版本ArcGIS9.3,不仅数据有些样式.配色.字符有些问题,API也要相应“降级”,解决如下: 利用9.3+flex做QueryTask时候出现了[RPC Fau ...

  9. oracle基本操作

    登入oraclesqlplus / as sysdba启动oraclestartup停止oracleshutdown 创建新用户create user username identified by p ...

  10. 最小和(min)

    题目描述: N 个数排成一排,你可以任意选择连续的若干个数,算出它们的和.问该如何选择才能 使得和的绝对值最小. 如:N=8 时,8个数如下: 1    2    3     4    5    6 ...