01介绍
学习目标
- 总结AWS全球基础设施的好处。
- 描述可用分区的基本概念。
- 描述亚马逊CloudFront和edge locations的好处。
- 比较提供AWS服务的不同方法。
要理解AWS的全球基础设施,请考虑咖啡店。如果游行、洪水或停电等事件影响了一个地方,顾客仍然可以去几个街区外的另一个地方买咖啡。
这与AWS全局基础设施的工作方式类似。
02AWS全球基础设施
Selecting a Region
在为您的服务、数据和应用程序确定正确的Region时,请考虑以下四个业务因素。
-
符合数据管理和法律要求:
- 根据您的公司和位置,您可能需要在特定的区域运行数据。例如,如果您的公司要求其所有数据驻留在英国境内,那么您将选择London Region。
- 并不是所有的公司都有特定位置的数据规定,所以您可能需要更多地关注其他三个因素。
-
贴近客户:
选择一个靠近客户的区域将帮助您更快地向他们提供内容。例如,贵公司的总部设在华盛顿特区,而贵公司的许多客户居住在新加坡。您可以考虑在北弗吉尼亚地区运行您的基础设施,以便离公司总部较近,并在新加坡地区运行您的应用程序。
-
区域内可用的服务
- 有时,最近的Region可能没有提供给客户的所有功能。AWS经常通过创建新服务和扩展现有服务的功能进行创新。然而,要在全球范围内提供新服务,有时需要AWS每次在一个区域内构建物理硬件。
- 假设您的开发人员想要构建一个使用Amazon Braket (AWS量子计算平台)的应用程序。在这门课程中,Amazon Braket还不能在世界上的每个AWS区域中使用,所以您的开发人员必须在其中运行它
-
定价
假设您正在考虑同时在美国和巴西运行应用程序。按照巴西税收结构的设置方式,在São Paulo地区运行相同的工作量可能要比俄勒冈地区多花费50%。您将更详细地了解到有几个因素决定了定价,但现在我们知道服务的成本可能因地区而异。
Availability Zones
AZ是指区域内的单个数据中心或一组数据中心。可用区域彼此相隔几十英里。这足够接近可用区域之间的低延迟(请求内容和接收内容之间的时间间隔)。然而,如果灾难发生在区域的一个部分,它们距离足够远,以减少多个可用性区域受到影响的机会。
Running Amazon EC2 instances in multiple Availability Zones
-
Amazon EC2 instance in a single Availability Zone
假设您正在北加州地区的单个Amazon EC2实例上运行一个应用程序。该实例运行在us-west-1a可用分区。如果us-west-1a失败了,你就失去了机会。 -
Amazon EC2 instances in multiple Availability Zones
最佳实践是在一个区域中至少跨两个可用性区域运行应用程序。在本例中,您可以选择在us-west-1b中运行第二个Amazon EC2实例。
-
Availability Zone failure
如果us-west-1a失败,您的应用程序仍将在us-west-1b中运行。
03边缘站点
Edge locations是一个站点,Amazon CloudFront用来存储你的内容的缓存副本,离你的客户更近,以更快的交付。
关键点:
- Regions是地理上隔离的区域,在这里您可以访问运行企业所需的服务。
- 区域包含可用性区域(Availability zone),它允许您在物理上分离的建筑中运行,相隔几十英里,同时保持应用程序逻辑上的统一。可用性区域帮助您解决高可用性和灾难恢复场景,而无需您的任何额外努力。
- AWS Edge位置运行Amazon CloudFront,以帮助让内容更接近您的客户,无论他们在世界的哪个地方。
注:AWS Edge locations可以简单理解为CDN服务,但实际上Edge locations也不仅仅运行CloudFront,他们运行一个域名服务,或DNS,被称为Amazon Route 53,帮助客户以可靠的低延迟引导到正确的网站位置。
04如何发放AWS资源
与AWS服务交互的方式
AWS Management console | AWS Command Line Interface | Software Development Kits |
---|---|---|
AWS管理控制台是一个基于web的接口,用于访问和管理AWS服务。您可以快速访问最近使用的服务,并根据名称、关键字或首字母缩略词搜索其他服务。控制台包括向导和自动化工作流,可以简化完成任务的过程。您还可以使用AWS Console移动应用程序来执行诸如监控资源、查看告警和访问计费信息等任务。多个身份可以同时登录到AWS Console移动应用程序中。 | 为了节省API请求的时间,你可以使用AWS命令行接口(AWS CLI)。AWS CLI允许您在一个工具中直接从命令行控制多个AWS服务。Windows、macOS和Linux上的用户都可以使用AWS CLI。通过使用AWS CLI,您可以将您的服务和应用程序通过脚本执行的操作自动化。例如,您可以使用命令启动一个Amazon EC2实例,将一个Amazon EC2实例连接到一个特定的Auto Scaling组,等等。 | 访问和管理AWS服务的另一个选项是软件开发工具包(sdk)。sdk通过为你的编程语言或平台设计的API让你更容易地使用AWS服务。sdk使您能够在现有应用程序中使用AWS服务,或者创建将在AWS上运行的全新应用程序。为了帮助您开始使用sdk, AWS为每种受支持的编程语言提供了文档和示例代码。支持的编程语言包括c++、Java、. net等。 |
AWS Elastic Beanstalk
使用AWS Elastic Beanstalk,您可以提供代码和配置设置,Elastic Beanstalk部署执行以下任务所需的资源:
- Adjust capacity
- Load balancing
- Automatic scaling
- Application health monitoring
AWS CloudFormation
使用AWS CloudFormation,你可以把你的基础设施当作代码来对待。这意味着您可以通过编写代码行来构建环境,而不是使用AWS管理控制台单独提供资源。文章来源:https://www.toymoban.com/news/detail-419986.html
AWS CloudFormation以安全、可重复的方式提供您的资源,使您能够频繁地构建基础设施和应用程序,而无需执行手动操作。它确定在管理堆栈时要执行的正确操作,并在检测到错误时自动回滚更改。文章来源地址https://www.toymoban.com/news/detail-419986.html
到了这里,关于【AWS云从业者基础知识笔记】——模块3:全球基础设施和可靠性的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!