主要内容
1.根设备类型
linux: /dev/sda1
windows: 系统盘
2.实例生命周期
生命周期状态:停止、终止、重启
3.用户数据(UserData)
实例在初始化,运行之前给定的用户数据让云主机自配置
根设备类型
实例存储作为根卷
也叫本地存储(EC2存储)
EBS存储作为根卷
也叫网盘,独立于EC2存储
确定实例类型
aws公有云有区域的概念,每个区域有多个可用区,每个可用区相当一个独立的机房,每个机房有多个单体服务器
本地存储和云主机放在同一个aws物理机上,而EBS存储和云主机放在不同aws物理机上,且EBS放在专门的存储主机上而且有备份
从性能看
因为网络的关系,本地磁盘读写快,EBS读写满
衡量EBS有两个重要指标:
IOPS: 每秒IO次数
吞吐量:每秒输出的字节数
从可用性看
EC2没了,本地磁盘也就没了
AMI镜像决定了实例存储作为根卷,还是EBS存储作为根卷
AMI镜像放在EBS中,则据其创建的云主机的根卷就放在EBS
如果要使用该镜像,则需拷贝一份出来创建EC2实例,否则该镜像会被覆盖
AMI镜像放在AWS S3中,则据其创建的云主机的根卷就放在实例存储(物理主机的本地磁盘)中
创建新云主机时,选择一个AMI镜像 ->页面左侧 -> 社区AMI -> 从操作系统、架构、根设备类型中的根设备类型选择"EBS"或者"实例存储"
当选EBS为根设备类型时
在选择实例类型界面中
通用类型,实例存储为EBS,附加存储也只能为EBS
在添加附加存储时,类型都是EBS
/dev/sda表示根卷,只能调整大小和存储类型(ssd)
/dev/sd[b-l]表示可以添加的附加存储
计算优化类型,实例存储为n*m(ssd)
在添加附加存储时,类型除了选EBS,还可以加m个实例存储
其中n*m(ssd)表示附加实例存储个数和每个存储的大小。n表示附加n个本地存储,m为每个本地存储为mG
注意:附加存储的目的是为了在架构方案中提高性能,例如做缓存
当选实例为根设备类型时
在选择实例类型界面中
实例存储为EBS都不能选了
在添加附加存储时
类型都是实例存储
设备可选/dev/sd[b-k],因为sda被用作根卷了,所以不显示
确定根卷的存储类型
找到实例,看实例的详细信息
EC2的生命周期
实例启动
运行实例,有两种方式:
1.从零构建后启动
2.构建后从stop状态启动
实例终止
实例销毁,数据不再保存到EC2,但附加存储上的数据会保存在EBS或这S3上
如果根卷是实例存储
删除EC2数据和实例存储
如果根卷是EBS存储
删除EC2数据,默认保留EBS存储
注意:是否保留EBS存储是由创建实例过程中的添加附加存储那一步来设置每个EBS存储的
实例停止
实例停止后,数据仍保存在EBS,可以启动后恢复
如果根卷是实例存储
不允许stop
本质原因是aws不希望用户在物理主机上保存数据来节省资源
如果根卷是EBS存储
允许stop
实例重启
方法:
1.在aws控制台点击"重启"按钮
2.远程登录后用reboot(linux)命令重启
建议用第一种方法,因为EC2会干预,强行重启
重启、终止和停止/启动的区别
重启:reboot
终止:ternimal
停止:stop
启动:start
从下面几个角度来说明几种状态的区别
底层物理主机
reboot: 实例不变
ternimal: 实例从物理主机上销毁
stop/start: 实例运行在新的主机上(EBS根卷)
私有/公有IP
reboot: IP保留
ternimal: IP消失
stop/start: VPC下:私有IP保留,公有IP更换
弹性IP
reboot: IP保留
ternimal: IP不关联实例。需要手动释放,不释放会产生费用
stop/start: VPC下:弹性IP保留
实例存储卷
reboot: 保留
ternimal: 消失
stop/start: 消失
EBS存储卷
reboot: 保留
ternimal: 保留或消失(在创建EC2时在附加存储一步指定)
stop/start: 保留
计费
reboot: 正常计费
ternimal: 实例不计费(但是弹性IP和EBS仍然计费)
stop/start: 停止不计费,开机后收取1小时费用
在界面上操作
选择实例 -> 操作 -> 实例状态
补充:"停用"表示aws的物理主机出现故障,我们作为用户没法处理
EC2用户数据
User Data
指定shell指令,EC2创建后启动进行预配置
创建实例的过程中,在"3.配置实例"一步的高级详细信息中
可以通过填入文本或上传文件的形式配置实例
例如选择填入文本
#!/bin/bash
echo "hello world" > hello.txt
在下面的步骤中,填写标签信息、选择已有的安全组以及密钥对
注意:这个脚本被root用户在/目录下执行
完成实例的初始化和启动后就能看到此效果
预配置实例
两种方式:
1.在安装实例时进行
2.安装实例后对停止实例,操作 -> 实例设置 -> 更改/查看用户数据
作用:安装软件、配置文件和配置数据,例如要做web站点
#!/bin/bash
yum -y install tomcat
使用User Data还是创建AMI
User Data:
创建实例时指定User Data,启动后执行里面的命令来预配置
创建AMI:
一台装好的EC2实例(例如php+mysql+tomcat),根据这个实例来创建AMI镜像,用这个AMI来创建新实例
从费用来说
User Data免费
AMI的存放需要花钱
从创建实例的效率来说
User Data每次都需要手动安装和配置软件
AMI在实例启动后就安装好环境了
有些客户明确启用时间有要求时建议用AMI
客户端登录EC2实例的方法
先创建弹性IP并给实例关联起来
windows客户端: putty,需要工具生成ppk文件(具体看AWS文档)
1.生成ppk文件
打开PuttyGen工具。点击Load加载.pem证书。点击Save private key来保存.ppk证书。
2.配置:
在Putty的设置Connection->SSH->Auth里添加.ppk证书
现在就可以使用Putty连接EC2的实例了,默认用户名是ec2-user。
linux客户端: ssh
ssh -i 证书.pem ec2-user@Instance的IP地址
- AWS系列-根设备类型
1.AWS根设备类型分为两类 实例存储(本地存储) EBS存储(网络存储) 2.实例存储 系统和磁盘在同一主机上 3.EBS存储 Elastic Block Storage EBS可能与云主机不在一台 ...
- System Operations on AWS - Lab 1W - Creating EC2 (Windows)
1. 创建CommandHost实例,登录到CommandHost,通过AWS CLI创建WebServer实例. 1.1 为CommandHost实例创建一个IAM角色 1.2 创建CommandH ...
- aws平台中为ec2实例添加双网卡
亚马逊平台创建ec2实例时默认创建一个网卡primary网卡,主网卡是不能分离的. 在ec2服务控制台为ec2附加网卡. 平台资料中为正在使用的ec2添加网卡用到的操作系统是Amazon Linux ...
- 线程生命周期状态UML图
- windchill系统——开发_生命周期状态的增加
步骤如下 ResourceBuild wt.lifecycle.StateRB ant -f codebase/MakeJar.xml 这样就可以了,下面是查看
- AWS云创建EC2与使用注意事项-踩坑记录
目录 AWS 一 创建 EC2(云服务器) 二.AWS 注意事项 三.AWS 申请 SSL 证书 四. 创建VPC AWS 文章 GitHub 地址: 点我 AWS云服务器价格计算器 AWS WEB ...
- AWS学习之EC2
1.AWS简介 AWS(Amazon Web Services )提供了一整套云计算服务,让您能够构建复杂.可扩展的应用程序.如今,成千上万各种规模的客户都在使用这些云计算服务,它们涉及各个行业,包括 ...
- 在NodeJS中配置aws ec2
获取access key和secret access key 自己账户下有security credentials的选项 然后点击Acce ...
- 亚马逊AWS免费套餐EC2安装centos连接登录并创建root
前言:刚开始使用亚马逊的AWS的免费套餐EC2,由于个人习惯使用centos系统,所以果断安装,但是AWS为了安全性,默认禁止用户使用root账户,导致安装配置环境各种问题.所以我把从安好系统后遇到的 ...
随机推荐
- 源码分析——迁移学习Inception V3网络重训练实现图片分类
1. 前言 近些年来,随着以卷积神经网络(CNN)为代表的深度学习在图像识别领域的突破,越来越多的图像识别算法不断涌现.在去年,我们初步成功尝试了图像识别在测试领域的应用:将网站样式错乱问题.无线领域 ...
- UVA 11389 The Bus Driver Problem 贪心水题
题目链接:UVA - 11389 题意描述:有n个司机,n个早班路线和n个晚班路线,给每个司机安排一个早班路线和一个晚班路线,使得每个早班路线和晚班路线只属于一个司机.如果一个司机早班和晚班总的驾驶时 ...
- 转:GEF 英文全称Graphical Editor Framework
http://blog.csdn.net/chancein007/article/category/2713827
- Blocks编程要点
[老狼推荐]Blocks编程要点原文:Blocks Programming Topics链接:http://developer.apple.com/library/ios/#documentation ...
- Flutter开发记录part3
(1) 获取当前屏幕宽度 width: MediaQuery.of(context).size.width, (1) pull_to_refresh,smartrefresh 自定义文字: new S ...
- ASP.NET Web API路由规则(二) 【转】
http://www.cnblogs.com/liulun/archive/2012/06/20/2556556.html 默认的规则 在ASP.NET MVC4中 global.asax.cs代码中 ...
- Android--数据库数据显示至屏幕
MainActivity.java 这段代码的作用是从数据库中获取到数据并显示在界面上 import java.util.ArrayList; import java.util.List; impor ...
- (Caffe)基本类Blob,Layer,Net(一)
本文地址:http://blog.csdn.net/mounty_fsc/article/details/51085654 Caffe中,Blob.Layer,Net,Solver是最为核心的类,下面 ...
- vscode 折叠所有区域
- struts2实现文件查看、下载
CreateTime--2017年9月7日10:25:33 Author:Marydon struts2实现文件查看.下载 1.界面展示 <a style="color: #199 ...