3.4 助理架构师认证的知识领域
四大知识域
1 设计:高可用、高效率、可容错低、可扩展的系统
2 实施和部署:强调部署操作能力
3 数据安全性:在部署操作时,始终保持数据保存和传输的安全
4 排除故障:在系统出现问题时,可以快速找到问题并解决问题
知识权重
- 设计:60%的题目
- 实施和部署:10%的题目
- 数据安全:20%的题目
- 排除故障:10%的题目
3.5 认证过程
需要在网上注册,找到距离家里比较近的地方考试(考点)
到了现场需要携带身份证,证明自己
并不允许带手机入场
证件上必须有照片
签署NDA保证不会泄露考题
考试中心的电脑中考试(80分钟,55个考题)
考试后马上知道分数和是否通过(不会看到每道题目是否正确)
通过后的成绩、认证证书等将发到email邮箱中
3.6 考试机制
助理级别考试的重点是:单一服务和小规模的组合服务的掌握程度
所有题目都是选择题(多选或单选)
不惩罚打错,所以留白没意义,可以猜一个
55道题
可以给不确定的题目打标签,没提交前都可以回来改答案
4 AWS架构的7大设计原则
4.1 松耦合
松耦合是容错、运维自动扩容的基础,在设计上应该尽量减少模块间的依赖性,将不会成为未来应用调整、发展的阻碍
松耦合
松耦合模式的情况
不要标示(依赖)特定对象,依赖特定对象耦合性将非常高
– 使用负载均衡器
– 域名解析
– 弹性IP
– 可以动态找到配合的对象,为松耦合带来方便,为应用将来的扩展带来好处
不要依赖其他模块的正确处理或及时的处理
– 使用尽量使用异步的处理,而不是同步的(SQS可以帮到用户)
松耦合模式2
4.2 模块出错后工作不会有问题
问问某个模块出了问题,应用会怎么样?
在设计的时候,在出了问题会有影响的模块,进行处理,建立自动恢复性
模块出错是常态
4.3 实现弹性
在设计上,不要假定模块是正常的、始终不变的
– 可以配合AutoScaling、EIP和可用区AZ来满足
允许模块的失败重启
– 无状态设计比有状态设计好
– 使用ELB、云监控去检测“实例”运行状态
有引导参数的实例(实现自动配置)
– 例如:加入user data在启动的时候,告知它应该做的事情
在关闭实例的时候,保存其配置和个性化
– 例如用DynamoDB保存session信息
弹性后就不会为了超配资源而浪费钱了
实现弹性架构
4.4 安全是整体的事,需要在每个层面综合考虑
基础架构层
计算/网络架构层
数据层
应用层
安全设计架构
4.5 最小授权原则
只付于操作者完成工作的必要权限
所有用户的操作必须授权
三种类型的权限能操作AWS
– 主账户
– IAM用户
– 授权服务(主要是开发的app)
最小授权原则
5 设计:高可用、高效率、可容错、可扩展的系统
本部分的目标是设计出高可用、高效率低成本、可容错、可扩展的系统架构
- 高可用
– 了解AWS服务自身的高可靠性(例如弹性负载均衡)—-因为ELB是可以多AZ部署的
– 用好这些服务可以减少可用性的后顾之忧
- 高效率(低成本)
– 了解自己的容量需求,避免超额分配
– 利用不同的价格策略,例如:使用预留实例
– 尽量使用AWS的托管服务(如SNS、SQS)
- 可容错
– 了解HA和容错的区别
– 如果说HA是结果,那么容错则是保障HA的一个重要策略
– HA强调系统不要出问题,而容错是在系统出了问题后尽量不要影响业务
- 可扩展性
– 需要了解AWS哪些服务自身就可以扩展,例如SQS、ELB
– 了解自动伸缩组(AS)
运用好 AWS 7大架构设计原则的:松耦合、实现弹性
6 实施和部署设计
本部分的在设计的基础上找到合适的工具来实现
对比第一部分“设计”,第一章主要针对用什么,而第二章则讨论怎么用
主要考核AWS云的核心的服务目录和核心服务,包括:
计算机和网络
– EC2、VPC
存储和内容分发
– S3、Glacier
数据库相关分类
– RDS
部署和管理服务
– CloudFormation、CloudWatch、IAM
应用服务
– SQS、SNS
7 数据安全
数据安全的基础,是AWS责任共担的安全模型模型,必须要读懂
数据安全包括4个层面:基础设施层、计算/网络层、数据层、应用层
- 基础设施层
1. 基础硬件安全
2. 授权访问、流程等
- 计算/网络层
1. 主要靠VPC保障网络(防护、路由、网络隔离、易管理)
2. 认识安全组和NACLs以及他们的差别
安全组比ACL多一点,安全组可以针对其他安全组,ACL只能针对IP
安全组只允许统一,ACL可以设置拒绝
安全组有状态!很重要(只要一条入站规则通过,那么出站也可以自动通过),ACL没有状态(必须分别指定出站、入站规则)
安全组的工作的对象是网卡(实例)、ACL工作的对象是子网
认识4种网关,以及他们的差别
共有4种网关,支撑流量进出VPC
internet gatway:互联网的访问
virtual private gateway:负责VPN的访问
direct connect:负责企业直连网络的访问
vpc peering:负责VPC的peering的访问
数据层
数据传输安全
– 进入和出AWS的安全
– AWS内部传输安全
通过https访问API
链路的安全
– 通过SSL访问web
– 通过IP加密访问VPN
– 使用直连
– 使用OFFLINE的导入导出
数据的持久化保存
– 使用EBS
– 使用S3访问
访问
– 使用IAM策略
– 使用bucket策略
– 访问控制列表
临时授权
– 使用签名的URL
加密
– 服务器端加密
– 客户端加密
应用层
主要强调的是共担风险模型
多种类型的认证鉴权
给用户在应用层的保障建议
– 选择一种认证鉴权机制(而不要不鉴权)
– 用安全的密码和强安全策略
– 保护你的OS(如打开防火墙)
– 用强壮的角色来控制权限(RBAC)
判断AWS和用户分担的安全中的标志是,哪些是AWS可以控制的,那些不能,能的就是AWS负责,否则就是用户(举个例子:安全组的功能由AWS负责—是否生效,但是如何使用是用户负责—自己开放所有端口跟AWS无关)
AWS可以保障的 用户需要保障的
工具与服务 操作系统
物理内部流程安全 应用程序
物理基础设施 安全组
网络设施 虚拟化设施
OS防火墙
网络规则
管理账号
8 故障排除
问题经常包括的类型:
- EC2实例的连接性问题
- 恢复EC2实例或EBS卷上的数据
- 服务使用限制问题
8.1 EC2实例的连接性问题
经常会有多个原因造成无法连接
外部VPC到内部VPC的实例
– 网关(IGW–internet网关、VPG–虚拟私有网关)的添加问题
– 公司网络到VPC的路由规则设置问题
– VPC各个子网间的路由表问题
– 弹性IP和公有IP的问题
– NACLs(网络访问规则)
– 安全组
– OS层面的防火墙
8.2 恢复EC2实例或EBS卷上的数据
注意EBS或EC2没有任何强绑定关系
– EBS是可以从旧实例上分离的
– 如有必要尽快做
将EBS卷挂载到新的、健康的实例上
执行流程可以针对恢复没有工作的启动卷(boot volume)
– 将root卷分离出来
– 像数据一样挂载到其他实例
– 修复文件
– 重新挂载到原来的实例中重新启动
8.3 服务使用限制问题
AWS有很多软性限制
– 例如AWS初始化的时候,每个类型的EBS实例最多启动20个
还有一些硬性限制例如
– 每个账号最多拥有100个S3的bucket
– ……
别的服务限制了当前服务
– 例如无法启动新EC2实例,原因可能是EBS卷达到上限
– Trusted Advisor这个工具可以根据服务水平的不同给出你一些限制的参考(从免费试用,到商业试用,和企业试用的建议)
常见的软性限制
公共的限制
– 每个用户最多创建20个实例,或更少的实例类型
– 每个区域最多5个弹性ip
– 每个vpc最多100个安全组
– 最多20个负载均衡
– 最多20个自动伸缩组
– 5000个EBS卷、10000个快照,4w的IOPS和总共20TB的磁盘
– …更多则需要申请了
你不需要记住限制
– 知道限制,并保持数值敏感度就好
– 日后遇到问题时可以排除掉软限制的相关的问题
9. 总结
9.1 认证的主要目标是:
确认架构师能否搜集需求,并且使用最佳实践,在AWS中构建出这个系统
是否能为应用的整个生命周期给出指导意见
9.2 希望架构师(助理或专家级)考试前的准备:
深度掌握至少1门高级别语言(c,c++,java等)
掌握AWS的三份白皮书
– aws概览
– aws安全流程
– aws风险和应对
– 云中的存储选项
– aws的架构最佳实践
![](https://img.haomeiwen.com/i1910343/a842d6213f919dee.jpg)
网友评论