aws基础架构学习笔记
文章大纲
Aws 学习笔记
Aws 的优势
4.速度优势
5.全球优势
数分钟内实现全球部署
Aws全球基础设施
Aws 数据中心
来自多家ODM(白牌机器)
1.考虑当地法律法律法规
2.考虑速度,和用户的距离,是否提供对应的业务
3.考虑成本
Aws 可用区
每个区由一个或者多个数据中心组成
专为故障隔离而设计
使用高速专用链接与其他可用区域互联
您可以选择可用区
Aws建议跨可用区复制以便实现弹性。
Aws 边缘站点协助客户实现高可用、高响应
架构完善的框架(WAF)
5大支柱:
1.安全性
2.可靠性
3.成本优化
4.性能效率
5.卓越运维
安全性
身份机制
实现可追踪性
在所有层确保安全性
风险评估与缓解策略
可靠性
动态获取计算资源以满足要求
成本优化
衡量效率
消除不必要的支出
考虑使用托管服务
卓越运维
能够运行和监控各种系统
持续改进支持流程和程序
部署方式
更新方式
操作方式
性能效率
选择有效的资源并在需求变化时保持资源效率
普及先进技术
了解技术
20191017 下午课程 aws 简单架构
Aws s3
Amazon s3 对象存储(扁平化,对象,元数据)
设计为提供99.999999999%的持久性(9个九+2个九= 11个九)
事件触发器
静态网站托管
S3访问控制
S3 使用案例
计算和大规模分析的的数据存储
限制:上传5G,存放5T
版本控制
备份工具
Aws Glacier
右上角换成amazon s3 智能分层
EC2 添加计算功能
使用amazon 系统镜像AMI 启动 Amazon EC2 实例
自定义启动配置的相关组件
EC2 和数据存储
EBS 弹性实例存储
实例存储是临时性的
跨可用区的数据复制要收钱,快照是可以复制。
跨可用区复制。
先对卷做快照-实际上是在s3上面,在另一个可用区用快照恢复
用户数据及实例元数据
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
EC2 实例类型
EC2定价选项
会话处理放在外部,ec2只是一个计算的模块。
架构一定是无状态的。
EMR按需结合竞价来做.任务可以提前完成而且成本更低。
标签最佳实践
添加数据库层
选择什么样的数据更适合什么样的场景
数据库层的选择注意事项
关系型与非关系型数据库对比
Oracle 大部分扩展是用垂直扩展,mysql 支持水平扩展
事务查询用关系型数据库。
Nosql 天生支持水平扩展形式
amazon aurora
老师强烈推荐了 amazon aurora 是自己提升了性能,并开始将自身的Oracle逐渐下线改为amazon aurora
Amazon DynamoDB
以购买火车票场景为例
查看余票:最终一致性
下单:强一致性
为什么有这两个区别:
CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
数据库的安全管理
RDS
DynamoDB
数据库的迁移
20191018 早上课程 网络
云中的安全性
链接网络
虚拟私有网络
VGW需要购买
Aws Direct Connect
多个vpc 互联互通
20191018 下午课程
AWS 负载均衡器
高可用
多区域高可用及DNS
Aws Identity and access management
弹性高可用和监控
弹性
高可用
监控
CloudWatch
获得弹性并扩展架构
20191019 上午课程
实现基础设施自动化
Aws CloudFormation
可以直接托拉拽的设计方式
快速入门由AWS 解决方案架构师和合作伙伴编写,旨在依据安全性和高可用性 方面的AWS 最佳实践,帮助您部署基于AWS 的热门解决方案。这些参考部署可在AWS 云上自动实施关键技术,通常只需单击一下即可在一小时内完成实施。 您可以通过简单几步构建测试或生产环境,然后便可立即开始使用。 (AWS)
Aws system manager
AWS Systems Manager 是一项管理服务,可帮助您自动收集软件清单、应用操作 系统修补程序、创建系统映像并配置Windows 和 Linux 操作系统。这些功能可 帮助您定义和跟踪系统配置,防止偏差,并确保Amazon EC2 和本地配置的软件 合规性。AWS Systems Manager 提供的管理方法是根据云的规模和敏捷性专门设 计的,可以扩展到您的本地数据中心,使您可以更轻松地将现有基础设施与 AWS 进行无缝桥接。
Aws Opsworks
缓存
Aws cloudfront
构建解耦架构
传统基础设施以紧密集成的服务器链为中心,其中每个服务器都有特定的目的。 然而,当其中一个组件/层发生故障时,就会对系统的造成灾难性的破坏。此外, 它这种情况也妨碍了扩展。如果在一个层添加或删除服务器,则每个连接层上 的每个服务器也必须相应地进行连接 (AWS)
Aws SQS
引入 SQS 队列有助于改进您的订购应用程序。您可以使用队列将处理逻辑隔离 到其组件中,并在一个独立于Web 应用程序的进程中运行它。这反过来又让系 统能够更灵活地应对流量峰值,同时支持系统仅在必要时快速执行工作以便管 理成本。此外,这还为您提供了一种机制,让您可以将订单作为消息持久保存 (队列充当临时数据库),并将您的事务范围与数据库向堆栈更下层移动。如 果发生应用程序异常或事务失败,这可以确保将订单处理停用或重定向到 Amazon SQS 死信队列 (DLQ),以便日后进行重新处理。 (AWS)
Amazon Simple Queue Service (Amazon SQS) 是一种分布式队列系统,它使Web 服务应用程序能够对应用程序中的一个组件生成的消息(以供另一个组件使用) 进行排队。队列是一个临时存储库,用于存储等待处理的消息,并将消息保留 1 到 14 天(默认为 4 天)。使用Amazon SQS,您可以将应用程序的组件解耦,以 便它们独立运行。消息可包含最多 256KB 的任何格式的文本。Amazon SQS 支持 多个生产者和使用者与同一队列进行交互。Amazon SQS 可与多种AWS 产品一起 使用,包括:Amazon EC2、Amazon S3、Amazon ECS、AWS Lambda 和Amazon DynamoDB。
Amazon SQS 提供了两种类型的消息队列。标准队列提供最大吞吐量、尽力排序 和至少一次传递。Amazon SQS FIFO 队列旨在保证消息严格按照其发送顺序仅处 理一次,吞吐量有限。以下情景描述了Amazon SQS 队列中消息的生命周期(从 创建到删除)。在这个情景中,有一个生产者向队列发送了一条消息,消息以 冗余方式跨Amazon SQS 服务器分布。 (AWS)
Amazon SNS
Amazon Simple Notification Service (SNS) 是一种Web 服务,让用户可以轻松地在 云中设置、操作和发送通知。该服务遵循“发布 – 订阅”(pub-sub)消息收发范 例,使用“推送”机制将通知传递给客户端。
您可以创建一个主题,然后定义策略来确定哪些发布者和订阅者可以与其进行 通信,从而控制对该主题的访问。发布者可以向他们创建的主题或他们发布权 限的主题发送消息。发布者不需要在每条消息中包含特定的目标地址,只需将 消息发送至主题。然后,Amazon SNS 会将主题与该主题的订阅者列表进行匹配, 并将消息传递给每个订阅者。每个主题都有一个唯一的名称,为发布者和订阅 者标识Amazon SNS 终端节点,以便他们发布消息和订阅注册通知。订阅者会收 到发布至他们所订阅主题的所有消息,且一个主题的所有订阅者收到的消息都 相同。
Amazon SNS 支持加密主题。当您将消息发送至加密主题时,Amazon SNS 会使用 由AWS KMS (https://aws.amazon.com/kms/) 提供支持的客户主密钥 (CMK) 来加密 您的消息。Amazon SNS 支持客户托管的 CMK,也支持AWS 托管的 CMK。只要 收到您的消息,Amazon SNS 便在服务器上使用 256 位AES-GCM 算法进行加密。 为实现持久性,这些消息以加密形式存储在多个可用区 (AZ) 中,并在传输到订 阅终端节点(例如,Amazon Simple Queue Service [Amazon SQS] 队列、AWS
Lambda 函数,以及HTTP 和HTTPS Webhook)之前解密。 (AWS)
上述两个组件的消息的延迟性比较大,而kinesis 的处理主要是针对近实时性的。
kinesis stream 相当于管道。
Kinesis firehouse 进行转发转接,kinesis 转发到另外的组件进行集成展示业务。
Kinesis 是一整套系统,kafka 只是数据接下来存好。
20191019 下午课程
微服务和无服务架构
Amazon ECS
Amazon Elastic Container Service (Amazon ECS) 是一种高度可扩展的高性能容器管 理服务,其支持Docker 容器,让您能够在托管的Amazon EC2 实例集群上轻松 运行应用程序。
Amazon ECS 是一种可扩展的集群服务,用于托管容器,可以: • 扩展到数千个实例 • 监控容器的部署 • 管理集群的完整状态 • 使用内置的计划程序或第三方计划程序(例如 Apache Mesos、Blox)对容器 进行计划
• 使用API 来扩展 群集可以使用 Spot 实例和预留实例 (AWS)
无服务架构
Aws api Gateway
防止暴露终端节点
防护DDos 攻击和注入攻击
灾难预防
存储备份
计算备份
恢复策略
参考资料
EMR 弹性扩展
https://aws.amazon.com/cn/blogs/big-data/best-practices-for-resizing-and-automatic-scaling-in-amazon-emr/
https://docs.aws.amazon.com/zh_cn/emr/latest/ManagementGuide/emr-automatic-scaling.html
aws基础架构学习笔记的更多相关文章
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- ZT Android4.2蓝牙基础架构学习
Android4.2蓝牙基础架构学习 分类: Jellybean Bluetooth Bluetooth 2013-10-13 23:58 863人阅读 评论(3) 收藏 举报 androidblue ...
- ASP.Net开发基础温故知新学习笔记
申明:本文是学习2014版ASP.Net视频教程的学习笔记,仅供本人复习之用,也没有发布到博客园首页. 一.一般处理程序基础 (1)表单提交注意点: ①GET通过URL,POST通过报文体: ②需在H ...
- Python基础教程学习笔记:第一章 基础知识
Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入“p ...
- Python基础班学习笔记
本博客采用思维导图式笔记,所有思维导图均为本人亲手所画.因为本人也是初次学习Python语言所以有些知识点可能不太全. 基础班第一天学习笔记:链接 基础班第二天学习笔记:链接 基础班第三天学习笔记:链 ...
- Coursera台大机器学习基础课程学习笔记1 -- 机器学习定义及PLA算法
最近在跟台大的这个课程,觉得不错,想把学习笔记发出来跟大家分享下,有错误希望大家指正. 一机器学习是什么? 感觉和 Tom M. Mitchell的定义几乎一致, A computer program ...
- typescript基础类型(学习笔记非干货)
布尔值 Boolean let isDone:boolean=false; 数字 Number let decLiteral:number=6; let hexLiteral:number=0xf00 ...
- 《计算机科学基础》学习笔记_Part 1 Computer and Data
Technorati Tags: 计算机科学基础,读书笔记 Chapter 1. Introduction Ø 计算机:黑盒,Output Data=f(Input Data, Program) Ø ...
随机推荐
- python刷LeetCode:21. 合并两个有序链表
难度等级:简单 题目描述: 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4输出:1 ...
- sendmail 的安装、配置与发送邮件的具体实现
Ubuntu 中sendmail 的安装.配置与发送邮件的具体实现 centos安装sendmail与使用详解 CentOS下搭建Sendmail邮件服务器 使用外部SMTP发送邮件 使用mailx ...
- Centos下nginx安装
安装很简单,这里记录只是为了记下下载地址: A.[root@localhost soft]# wget http://nginx.org/download/nginx-1.4.2.tar.gz B.[ ...
- ssh 账号密码登录设置
找到/etc/ssh/sshd_config文件中的 PasswordAuthentication no 改为PasswordAuthentication yes 并保存. 重启ssh服务:sudo ...
- C#——发送邮件
需要2个引用 using System.Net;using System.Net.Mail; using (MailMessage mailMessige=new MailMessage()) usi ...
- Java面向对象(概述,构造函数,类与对象的关系,this关键字,成员、局部),匿名对象的调用,构造代码块(5)
Java面向对象(概述,构造函数,类与对象的关系,this关键字,成员.局部),匿名对象的帝爱用,构造代码块(5)
- 88.QuerySet API使用详解:get_or_create和bulk_create方法
get_or_create 根据某个条件进行查找,如果找到了匹配的数据就会返回这条数据,如果没有找到匹配到的数据,就会创建一个.示例代码如下: from django.http import Http ...
- ZJNU 1223 - 素数距离——高级
因为最大可以达到int极限 明显直接筛选不可能完成 所以从其因子入手 因为任何不是素数的数都有除了1与其自身之外的因子 因此,我们筛出2^(31/2)≍46350之内的所有素数,以其作为因子再将题目给 ...
- tensorflow从训练自定义CNN网络模型到Android端部署tflite
网上有很多关于tensorflow lite在安卓端部署的教程,但是大多只讲如何把训练好的模型部署到安卓端,不讲如何训练,而实际上在部署的时候,需要知道训练模型时预处理的细节,这就导致了自己训练的模型 ...
- Adaboost算法及其代码实现
. . Adaboost算法及其代码实现 算法概述 AdaBoost(adaptive boosting),即自适应提升算法. Boosting 是一类算法的总称,这类算法的特点是通过训练若干弱分类器 ...