您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 亚马逊AWS 云计算环境下的可扩展性架构
©2015,AmazonWebServices,Inc.oritsaffiliates.Allrightsreserved云计算环境下的可扩展架构-满足1,000万用户的扩展性王毅AWS解决方案架构师,区域主管一些基础概念…区域US-WEST(Oregon)EU(Ireland)ASIAPACIFIC(Tokyo)US-WEST(N.California)SOUTHAMERICA(SaoPaulo)US-EAST(N.Virginia)AWSGOVCLOUD(US)ASIAPACIFIC(Sydney)ASIAPACIFIC(Singapore)CHINA(Beijing)EU(Frankfurt)US-WEST(Oregon)EU(Ireland)ASIAPACIFIC(Tokyo)US-WEST(N.California)SOUTHAMERICA(SaoPaulo)US-EAST(N.Virginia)AWSGOVCLOUD(US)ASIAPACIFIC(Sydney)ASIAPACIFIC(Singapore)CHINA(Beijing)可用区EU(Frankfurt)节点网络PlatformServicesContainersDev/opsToolsResourceTemplatesUsageTrackingMonitoringandLogsFoundationServicesCompute(VMs,Auto-scalingandLoadBalancing)Storage(Object,BlockandArchive)Security&AccessControlNetworkingInfrastructureRegionsCDNandPointsofPresenceAvailabilityZonesApplicationsVirtualDesktopsCollaborationandSharingCachingRelationalNoSQLHadoopReal-timeDataWorkflowsDataWarehouseQueuingOrchestrationAppStreamingTranscodingEmailSearchIdentitySyncMobileAnalyticsNotificationsDatabasesAnalyticsAppServicesDeployment&ManagementMobileServicesManagedUserDirectories应用平台服务基础服务全球基础设施平台服务ContainersDev/opsToolsResourceTemplatesUsageTrackingMonitoringandLogs基础服务计算(VMs,AutoScalingandLoadBalancing)存储(Object,BlockandArchive)安全与存取控制网络基础设施区域CDN与PoP可用区应用虚拟桌面协同与分享CachingRelationalNoSQLHadoopReal-timeDataWorkflowsDataWarehouseQueuingOrchestrationAppStreamingTranscodingEmailSearchIdentitySyncMobileAnalyticsNotifications数据库分析应用服务部署与管理移动服务ManagedUserDirectories现在让我们就从一个用户的第一天开始起步第1天,1个用户•1个AmazonEC2实例–全栈服务器•Webapp•Database•Management•…•1个ElasticIP•AmazonRoute53用于DNSAmazonEC2instanceElasticIPAmazonRoute53User“我们需要更强大的服务器”•简单的方法•使用预配置IOPS•高I/O实例•内存优化实例•CPU优化实例•存储优化实例•轻松地改变实例的类型与规格•满足最终的需要c3.8xlargem3.2xlarget2.micro第1天,1个用户•我们可能支持几百个到几千个用户,基于应用的复杂性与网络流量•没有故障转移•没有冗余•太多的鸡蛋在一个篮子里EC2InstanceElasticIPAmazonRoute53User第2天,用户数1首先,让我们将单个服务器分成多个•Web•数据库–确定需要使用数据库服务?WebInstanceDatabaseInstanceElasticIPAmazonRoute53User自管理托管的服务数据库运行于AmazonEC2需要自行管理解决软件的许可证问题(BYOL)AmazonDynamoDB托管的NoSQL服务使用SSD存储无缝扩展零管理AmazonRDSMicrosoftSQLServer,Oracle,MySQL,PostgreSQL,AmazonAurora灵活的许可证管理模式AmazonRedshift大规模并行的PB级别的数据仓库服务快速,强大以及易于扩展数据库服务的选择如何选择所需要的数据库技术?SQL?NoSQL?为什么通常从SQL开始?•基于成熟的技术•大量的资源,代码、社区、图书、经验、工具等•清晰的可扩展性模式•打算在你拥有1,000万用户的时候还在依赖SQL?*除非你所做的事情过于特殊,你总会在你的架构中找到SQL适合的地方假设数据规模在几个TB(5),或者是数据密集型的工作负载,那么你应该考虑NoSQL!为什么需要NoSQL?•实现“非常”低延迟的应用•元数据驱动的数据集合•高度的非关系数据•需要无模式的数据结构•大规模的数据(在TB这个级别)•快速的数据采集(数千条纪录/秒)用户规模100首先,让我们将单个服务器分拆成多个:•Web•数据库–使用AmazonRDS让你更轻松一点WebinstanceElasticIPRDSDBinstanceAmazonRoute53User用户规模1,000接下来,让我们解决缺少故障转移和冗余的问题:•ElasticLoadBalancing(ELB)•另外的Web实例–部署在另外的可用区•RDS多可用区(AZ)WebInstanceRDSDBInstanceActive(Multi-AZ)AvailabilityZoneAvailabilityZoneWebInstanceRDSDBInstanceStandby(Multi-AZ)ELBBalancerAmazonRoute53User•创建高度可扩展的应用•负载可分布在多个可用区的EC2实例之上特性说明可用性跨多个可用区的实例上的负载均衡健康检查自动检查实例的健康状况,启动或者关闭服务会话的粘性请求路由到同一个实例SSL灵活的加密支持,支持SSL从Web和应用服务器卸载监控为AmazonCloudWatch提供检测数据,得到请求处理日志ELBBalancerElasticLoadBalancing用户规模10,000s–100,000sRDSDBInstanceActive(Multi-AZ)AvailabilityZoneAvailabilityZoneRDSDBInstanceStandby(Multi-AZ)ELBBalancerRDSDBInstanceReadReplicaRDSDBInstanceReadReplicaRDSDBInstanceReadReplicaRDSDBInstanceReadReplicaWebInstanceWebInstanceWebInstanceWebInstanceWebInstanceWebInstanceWebInstanceWebInstanceAmazonRoute53User也许目前的水平已经不错,但我们可以继续关注“性能”和“效率”,我们还可以优化的更好RDSDBInstanceActive(Multi-AZ)AvailabilityZoneELBBalancerAmazonRoute53User让我们来减轻Web和数据库的负载:•将静态内容从Web实例转移到AmazonS3和AmazonCloudFront•将会话/状态和DB缓存转移到AmazonElastiCache或者AmazonDynamoDB负载转移WebInstancesAmazonS3AmazonS3是面向互联网的云存储:•基于对象的存储•11个9的耐久性•适合以下场景:–静态资产(CSS,JS,图片,视频)–备份–日志–待处理的文件•无限的扩展能力•对象的尺寸高达5TB•用于托管静态网站•支持细粒度的权限控制•与AmazonCloudFront的结合•AmazonEMR的集成•充当S3,CloudFront,Billing,ELB,AWSCloudTrail等的日志端节点•支持静态以及传输中加密•仅仅是冗余存储成本的1/3•AmazonGlacierf用于超长时间的存储,成本是S3的1/3AmazonS3AmazonCloudFrontAmazonCloudFront是可扩展的内容分发网络服务:•在边缘节点缓存静态内容以实现更快的交付•有助于降低基础设施的负荷•动态和静态的内容•流媒体视频•根域名(Zoneapex)支持•自定义SSL证书•低的TTLs(短至0秒)•降低获得源数据的成本(AmazonS3/AmazonEC2和AmazonCloudFront)•与AmazonEC2,AmazonS3,ElasticLoadBalancing和AmazonRoute53的协同优化ResponseTimeServerLoadResponseTimeServerLoadResponseTimeServerLoadNoCDNCDNforStaticContentCDNforStatic&DynamicContent010203040506070808:00AM9:00AM10:00AM11:00AM12:00PM1:00PM2:00PM3:00PM4:00PM5:00PM6:00PM7:00PM8:00PM9:00PMVolumeofDataDelivered(Gbps)负载转移让我们来减轻Web和数据库的负载:•将静态内容从Web实例转移到AmazonS3和AmazonCloudFront•将会话/状态和DB缓存转移到AmazonElastiCache或者AmazonDynamoDBRDSDBInstanceActive(Multi-AZ)AvailabilityZoneELBBalancerAmazonS3AmazonCloudFrontAmazonRoute53UserElastiCacheDynamoDBWebInstancesAmazonDynamoDB•托管的、吞吐量可调整的NoSQL数据库•快速、可预测的性能•全分布式、容错体系结构•JSON支持(新特性)•项目支持高达400KB(新特性)特性描述预分配吞吐量向上或向下调整读/写能力可预测的性能基于SSD的基础设施提供了平均个位数(毫秒)的延迟强大的一致性确保你读取的是最近更新过的数据容错性跨可用区复制数据监控与AmazonCloudWatch集成安全与AWSIdentityandAccessManagement(IAM)集成AmazonEMR针对大规模数据的复杂分析可与AmazonEMR结合AmazonElastiCache•托管的Memcached与Redis–与传统的开源的项目Memcached有Redis相同的API•从一个到多个节点的扩展•自我修复(替代死掉的实例)•非常快(通常个位数的毫秒级别或者更少)•Memcache设置在单个的AZ,没有持久性以及复制功能•对于Redis可以设置在多个AZ间复制以提供持久性•使用AWSAutoDiscovery客户端在不影响应用的前提下简化集群的增长和收缩负载转移让我们来减轻我们的网站和数据库实例的负载:•从Web实例将静态内容转移到AmazonS3和AmazonCloudFront•将会话/状态以及
本文标题:亚马逊AWS 云计算环境下的可扩展性架构
链接地址:https://www.777doc.com/doc-6165091 .html