用户(User)
定义:代表访问AWS的终端用户。
访问方式:
使用密码来访问AWS管理平台。
使用Access Key ID和Secret Access Key,通过API、CLI或SDK的形式来访问AWS服务(主要针对应用程序对AWS资源的访问)。
权限管理:默认用户没有任何权限,需要用策略(Policy)赋予每个用户所需要的最小权限。
组(Group)
定义:拥有相同权限的用户组合。
管理优势:拥有相同权限的用户可以归入一个组,方便权限的统一管理和控制。
灵活性:一个组可以拥有多个用户,一个用户可以属于多个组。
角色(Role)
定义:角色可以分配给AWS服务,让AWS服务有访问其他AWS资源的权限。
安全性:角色不包含任何用户名/密码,比用户更加安全可靠,因为没有泄露用户名/密码或者Access Key的可能性。
示例:可以赋予EC2实例一个角色,让其有访问S3的读写权限。
策略(Policy)
定义:定义具体访问权限的文档。
格式:策略的文档以JSON格式展现。
作用:具体定义了能访问哪些AWS资源,并且能执行哪些操作(比如List, Read, Write等)。
示例
用户权限:创建一个RAM访问权限策略,向一个用户授予某一个ECS实例的“停机”权限。
策略示例:使用tagbased policy进行访问控制。参考:[AWS IAM标签策略](https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/access_iamtags.html)。
Amazon EC2 (Elastic Compute Cloud)
定义
Amazon Elastic Compute Cloud (Amazon EC2) 在 AWS 云中提供可扩展的计算容量。使用 Amazon EC2 可避免前期的硬件投入,因此能够快速开发和部署应用程序。通过使用 Amazon EC2,可以根据自身需要启动任意数量的虚拟服务器、配置安全和网络以及管理存储。Amazon EC2 允许根据需要进行缩放以应对需求变化或流行高峰,降低流量预测需求。
特性
1. EC2实例:AWS提供的一种计算服务,它以EC2实例(EC2 Instance)的形式存在,可以被认为是虚拟机。
2. 预配置镜像(AMI):预配置的EC2镜像被称之为Amazon Machine Images (AMI),一个AMI包含了操作系统以及相应的应用程序和配置。
3. 实例类型:不同的EC2实例类型包含不同的CPU、内存、存储和网络性能。
4. 密钥对(Key Pair):AWS默认建议使用密钥对的形式访问EC2实例,AWS将保存公钥,用户保存私钥。
5. 实例存储:EC2实例存储(Instance store volumes)是一种短暂性存储,一旦停止或终止EC2实例,存储内的数据将永久消失。
6. EBS存储:Amazon EBS volumes是一种持续性存储,不管EC2实例是什么状态,都可以保留EBS存储内的数据。
7. 安全组(Security Group):通过检测数据包的端口、协议、源IP地址从而充当防火墙的作用。
8. 弹性IP:Elastic IP address可以为EC2实例分配一个固定的公网IP地址,并且保证每次关机重启该地址依旧有效。
9. 虚拟私有云(VPC):AWS的网络组件,可以让AWS资源与其他用户的资源在逻辑上进行隔离,也可以与物理数据中心进行连接。
计费类型
1. OnDemand Instances (按需实例):
按秒收费,用多少收费多少。
实例可以根据业务需求实时增加或减少规模。
适合部署突发性、爆发性流量的应用程序,如双11。
适合测试和开发新的应用程序。
2. Reserved Instances (预留实例):
更低的每小时运行成本,1年合同可获得40%左右的折扣,3年合同可获得60%的折扣。
适合长期运行、稳定的、可预估的应用程序。
3. Spot Instances (竞价实例):
每个小时都会变化,依据是竞价实力的供需关系。
可以非常有效地降低运行EC2实例的成本。
安装的应用程序随时可以中断,数据和任务处理结果需保存在外部存储上。
对实例运行开始的时间没有太多要求。
4. Dedicated Instances (专用实例)和Dedicated Hosts(专用主机):
专用实例和主机提供物理隔离,适用于需要隔离资源的工作负载。
运行平台
EC2实例上可以运行基于Windows和Linux操作系统的实例,不支持任何非X86架构的实例。
裸机实例:允许用户操作AWS的裸机,直接安装虚拟操作系统,如VMware Esx。
这些信息详细介绍了AWS IAM和Amazon EC2的核心概念和功能。需要更详细的示例或实操指导,可以进一步深入探讨具体的应用场景和配置。
