AWS IAM (Identity and Access Management)

  • 用户(User):代表访问AWS的终端用户
    • 可使用密码来访问AWS管理平台
    • 可使用Access Key ID和Secret Access Key并通过API, CLI或SDK的形式来访问AWS服务(主要针对应用程序对AWS资源的访问)
    • 默认用户没有任何权限,我们需要用策略赋予每个用户所需要的最小权限
  • 组(Group):拥有相同权限的用户组合
    • 拥有相同权限的用户可以归入一个组,方便权限的统一管理和控制
    • 一个组可以拥有多个用户,一个用户可以属于多个组
  • 角色(Role):角色可以分配给AWS服务,让AWS服务有访问其他AWS资源的权限
    • 角色不包含任何用户名/密码
    • 角色比用户更加安全可靠,因为没有泄露用户名/密码或者Access Key的可能性
    • 举个例子,我们可以赋予EC2实例一个角色,让其有访问S3的读写权限(后面课程会有关于这一点的实操)
  • 策略(Policy):定义具体访问权限的文档
    • 策略具体定义了能访问哪些AWS资源,并且能执行哪些操作(比如List, Read, Write等)
    • 策略的文档以JSON的格式展现

例子

policy给用户赋权访问服务/资源,role给服务赋权访问服务/资源。

例子:您可以创建一个RAM 访问权限策略,向一个用户授予某一个ECS实例的“停机”权限。

使用tag-based policy可以做到。https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/access_iam-tags.html

EC2 (Elastic Cloud Compute)

Amazon Elastic Compute Cloud (Amazon EC2) 在 Amazon Web Services (AWS) 云中提供可扩展的计算容量。使用 Amazon EC2 可避免前期的硬件投入,因此您能够快速开发和部署应用程序。通过使用 Amazon EC2,您可以根据自身需要启动任意数量的虚拟服务器、配置安全和网络以及管理存储。Amazon EC2 允许您根据需要进行缩放以应对需求变化或流行高峰,降低流量预测需求。

EC2的特性

  • EC2是AWS提供的一种计算服务,它以EC2实例(EC2 Instance)的形式存在,因此一个EC2实例可以被认为是一个虚拟机
  • 预配置的EC2镜像被称之为Amazon Machine Images (AMI),一个AMI包含了你打包的好操作系统,以及相应的应用程序和配置
  • 不同的EC2实例类型包含了不同的CPU,内存,存储和网络性能
  • AWS默认以及建议使用密钥对(Key Pair)的形式访问EC2实例,AWS将保存公钥,您将负责保存私钥
  • EC2实例存储(Instance store volumes)是一种短暂性的存储,一旦您停止或者终止您的EC2实例,这个存储内的数据将永久消失
  • EBS存储(Amazon EBS volumes)是一种持续性的存储,不管EC2实例是什么状态,你都可以保留EBS存储内的数据。这种类型的存储对于进行数据盘的迁移非常方便,使用场景也比较多。
  • 安全组(Security Group)会通过检测数据包的端口、协议、源IP地址从而充当防火墙的作用
  • 弹性IP(Elastic IP address)可以方便您为您的EC2实例分配一个固定的公网IP地址,并且保证每次关机重启该地址依旧有效。
  • 虚拟私有云(Virtual Private Cloud, VPC)是AWS的网络组件,可以让你的AWS资源与其他用户的资源在逻辑上进行隔离。您也可以使用VPC与您的物理数据中心进行连接。

EC2实例的计费类型

EC2的实例计费类型有很多种,每一种都有自己的使用场景,不同的客户可能对计费类型的需求也不一样。

  • On-Demand Instances (按需实例)
  • Reserved Instances (预留实例)
  • Spot Instances (竞价实例)
  • Scheduled Reserved Instances (计划的预留实例)
  • Dedicated Instances (专用的实例)
  • Dedicated Hosts(专用的主机)

On-Demand Instances (按需实例)总结特点如下:

  • 按秒收费(以前是按小时收费,现在AWS更改了),用多少收费多少
  • EC2实例可以根据业务需求实时增加或减少规模
  • 不会有昂贵的初始投资成本
  • 适合用来部署有突发性,爆发性流量的应用程序,比如双11
  • 适合用来测试和开发新的应用程序

Reserved Instances (预留实例)总结特点如下:

  • 更低的每小时运行成本, 1年的合同可以获得40%左右的折扣,3年的合同可以获得60%的折扣。
  • 买断了一定的计算资源,不会出现AWS计算资源不足而无法创建EC2的情况
  • 费用在合同期内是固定的,因此费用可预期
  • 适合需要长期运行、稳定的、可预估的应用程序

目前预留实例还分两种类型,分别是标准RI可转换RI。可转换RI可以更改实例系列、操作系统、租期和付款选项,更加灵活,但是折扣率会比标准RI稍微少一些。

Spot Instances (竞价实例)总结特点如下:

  • 每个小时都会变化,依据是竞价实力的供需关系
  • 可以非常有效地降低运行EC2实例的成本(特别对于有大数量实例需求的情况下)
  • 在其上安装的应用程序随时可以中断,也就是数据和任务处理结果都需要保存在外部存储上
  • 对实例运行开始的时间没有太多要求

EC2实例的运行平台

目前,EC2上可以运行基于Windows和Linux操作系统的实例,不支持任何非X86架构的实例。

另外,在2017 Re:Invent会议上AWS发布了一种新型的实例,可以让你操作AWS的裸机(不含任何操作系统),因此方便你在上面直接安装类似VMware Esx的虚拟操作系统。

EC2 Linux实例的创建过程

连接使用EC2 Linux实例

EC2 Windows实例的创建连接过程

EC2 (Elastic Cloud Compute)小结

  •  了解不同EC2实例类型的区别,要知道在不同的使用场景需要使用哪一种类型的EC2
    • 按需实例(On Demand Instance)- 用多少时间付费多少,费用精确到秒,不用则可以随时关闭/终止并停止费用的产生
    • 竞价实例(Spot Instance)- 以低于按需实例的价格竞得实例,但价格高于设定得价格后会自动被终止
    • 保留实例(Reserved Instance) – 相当于买断一个实例1年/3年,期间不管实例开不开都需要付总得费用,但平均下来费用会比按需实例便宜
    • 专用主机实例(Dedicated Hosts)- 涉及到软件许可证的时候,会考虑使用专用主机实例
  • 终止一个竞价实例
    • 如果主动终止一个竞价实例,需要为当前这个完整小时付费
    • 如果因为价格上涨,AWS终止了你的竞价实例,那么这个小时的费用会被免费
  • 实例的终止保护(Termination Protection)功能是默认关闭的,有需要必须手动开启。开启后实例将无法被终止,除非先将终止保护关闭
  • 使用EBS为存储的实例,默认情况下如果该实例被终止,这个根EBS卷也会被随之删除
    • 但也可以设置为实例被终止的时候保留根EBS卷

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据