深度广度并举,AWS容器服务再推利器!

2023-11-02 20:58

本文主要是介绍深度广度并举,AWS容器服务再推利器!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

据晶少了解,国庆假期后的首个工作日,AWS就在中国区域放出了一款“重量级”容器服务,名为 AWS Fargate,光环新网运营的 AWS 中国(北京)区域和西云数据运营的 AWS 中国(宁夏)区域均提供该项服务。

据悉这是一款可以适用于 Amazon ECS的计算引擎,主要帮助企业在生产过程中运行容器、却无需部署或者管理服务器,换句话说就是专注设计和构建应用程序,而不用挂心太多基础设施的“那些事儿”。

不得不说,针对容器服务的需求定位,AWS Fargate可谓一击即中,这一点从AWS现代化应用产品市场负责人Aaron Kao的介绍中我们就能深深感受到。

一段时间以来,以AWS为首的云服务提供商都会听到很多相似的用户反馈,其中构建属于自己的现代应用成为企业们不得不积极追逐并实现的。什么是现代应用?想必全球化、大规模,毫秒级延迟、PB级数据以及多模态等诸多特性是不可缺少的。

早在2000年,亚马逊网站构建的是单体性质的应用(monolithic application),非常大型但敏捷性表现缺乏。具体来说如果想要在其中添加新产品,必须做到对源代码进行编辑与修改,很多团队需要集中在一个管道中进行单体应用的开发,效率之低可想而知。

“2001年,我们想改变这种构建应用的方式,所以就分解成多个微服务的架构,打造'双披萨团队',这是一次组织上的变革,为的就是达成更加迅速的开发效率。”交谈中,晶少得知,所谓“双披萨团队”直观意义上是指团队成员的数量只需要两个披萨就可以满足食欲;引申来说则是这种配置的团队完全负责自身开发的服务,对应用有绝对的所有权,从发现应用、开发再到部署等环节,具备全面的问责机制,有人称这就是DevOps开发应用的模式。

从单一到微服务的过渡,我们发觉计算也在随着时间而变化,从虚机到各种实例的类型,然后是容器的崛起、无服务器计算Lambda的兴起。我们看到很多客户在容器方面做了许多有意思的事情,比如说麦当劳,推出了一个送货上门的服务,是在四个月之内使用Amazon ECS上运行的微服务而达成。

据悉这个云原生的微服务架构可以用不到100毫秒的延迟扩展到每秒两万个订单,而且能够轻松与全球交付合作伙伴进行集成。这是亚马逊对现代应用构建模式的探究,如今成千上万的用户早已经踏上了这条探索之旅。

回到AWS Fargate的新鲜出炉,归根到底还是在用户构建现代应用的过程中使用容器带来的启发。大家在此过程中经常会想到一个问题,如何对手上的容器进行整合?使用Fargate服务之后,用户就不需亲手处理服务器以及基础架构方面的工作,也能做到快速推出和扩充容器应用,这个过程只需要根据自身使用服务的情况完成付费即可。

提及安全的无服务器体验,不必花费过多精力管理基础设施的要求,我们至今记忆犹新,在2014 年 re:Invent 大会上发布的Lambda,如今Lambda 每月为数十万活跃客户处理数万亿次执行。作为事件驱动的无服务器计算的应用,Lambda 能够允许用户无需预配或者管理服务器即可运行代码,只需按被消耗的计算时间付费。

具体来说它能够自动扩展到工作负载,适用于流行的IDE工具包,也可以通过嵌套应用简化部署来提高工作效率;另外在不断增加功能集成方面,例如集成Lambda应用负载均衡、Lambda SQS等。

举个例子来说,作为使用AWS Lambda的用户,可口可乐公司高效使用Lambda和STEP函数来更新自动售货机通行证应用,并通过Lambda管理计算实例来促进开发人员进行创新,甚至可以做到让工程人员在几天内快速构建和部署新功能。截至目前的不完全统计,已经有数十万用户在使用AWS Lambda的过程中成功建立微服务以及现代化应用。

表述到这里,关于Fargate和Lambda的关系,可能会有很多人心存困惑,同样是专注应用与上层架构,区别呢?本质上来说,Fargate和Lambda是构建和包装客户应用的两种不同方式。如果用户想着手容器层面的运行,并将其包装成为容器类型的服务,即可以使用Fargate;如果用户只是要作为函数来打包代码的话 ,提及触发器就可以运用Lambda,简单来说用户想要涉及控制权的多少,以此来衡量抽象化的程度。

例如,美国金融业监管局FINRA,它主要针对美国证券交易市场上数以千计的证交所交易人员、几十亿美金的交易进行跟踪,发现可能的欺诈行为。“这样的工作内容决定有时候会遇到峰值情况,眼下的资源不够使用,所以就可以切换到Lambda来达成计算速度并满足峰值要求;美国著名的媒体公司Turner,因为不想花费太多精力掌管旗下的诸多实例,所以将其迁移到Fargate上,着手打造一个网站共享服务平台,不但降低成本还缩短了开发时间。”

如此一来,从产品和服务触发,我们观察到AWS容器服务的整体格局,广泛性是表现突出一个特点。“整体涵盖三个层面,最底层是弹性的映像注册表,即Amazon ECR (Amazon Elastic Container Registry),可以存储容器映像文件且非常易用;中间层是计算引擎,容器要运行在某个计算平台上就可以使用Amazon EC2作为启动类型,也可以使用AWS Fargate来启动无服务器运行等;此外编排层,可以根据客户的需求选择,如果并没有自己明确的倾向,如果要求抽象水平低并专注于基础架构或者配置等,用户也可以自己搭建编排服务。” Aaron Kao表示。

谈整体后,聚焦如今大火的K8S,Aaron Kao进一步阐述随着时间的推移,用户又提及了关于Kubernetes的诸多需求,或许这就是推出Amazon Elastic Kubernetes Services的原因,那AWS的Kubernetes究竟优势何在?

众所周知,EKS是运行生产级工作负载的平台,安全和可靠是重中之重。“我们提供原生和上游(native and upstream)的Kubernetes体验,AWS的Kubernetes服务与开源层面的Kubernetes运行完全一样;此外我们还与社区共同合作,将代码贡献给上游。”

毋庸置疑,用户选择AWS之初很重要的一点就是服务的深度与广度,从存储服务、管理服务等出发的165种不同种类的云服务,可以高效帮助在EKS方面与AWS平台实现无缝的集成,能力的全面释放不容小觑。

具体来说,用户是如何使用Amazon EKS呢?整个过程主要包括通过微服务、平台即服务这样的运行架构,当然也有使用EKS来进行企业应用的迁移,此外还涉及到某些用户使用EKS进行机器学习等。“未来我们还要做的一些事情确保EKS针对任何想要用AWS的客户来说都是极其友善的,比如让EKS与AWS Identity and Access Management (IAM) 集成,每一个EKS的Pods都可以获得IAM的许可。相信EKS很快会在AWS中国(北京)区域、AWS中国(宁夏)区域、AWS南美洲(圣保罗)区域推出,值得提及的是目前51%的Kubernetes工作负载都在AWS上运行。”

除了让EKS使用起来更具友善之外,KAO表示更重要的创新举措还会集中在全堆栈的方向,例如硬件层面的Nitro系统,可以提高性能和硬件安全且让Hypervisor(虚拟机管理程序)更有效地运行;软件层面的Firecracker,作为一个开源的微虚机,让用户在运行容器时可以更安全。

据晶少获知的消息,这项用于运行多租户容器工作负载的新型虚拟化技术与开源项目,能够让服务拥有者将容器实现的速度、资源效率和性能与传统虚拟机的安全性与隔离性结合,从而运行基于容器的、安全的多租户服务。

Firecracker 在 Linux 基于内核的虚拟机 (KVM) 上运行虚拟机管理程序 (VMM),并提供 RESTful API 来创建和管理具备任何 vCPU 和内存组合的微虚拟机,从而满足应用程序的需求。

作为Apache 2.0 下的开源项目,其设备模拟量低的特性可以缩短启动时间、减少每个微虚拟机的内存占用空间,并为每个容器提供可信赖的沙盒环境。目前Firecracker 支持 Intel 处理器,并会在 2019 年推出对 AMD 和 ARM 的支持。 

“我们与客户密切合作,其密切程度可以集中表现在90%的产品路线图都来源于用户,他们会准确地告诉我们,希望达成的技术未来将是如何?未来我们的重点还是专注于安全性、可用性、可靠性以及开发人员、工具方面的创新,但用户需求是关键,这一点绝对重要。”

这篇关于深度广度并举,AWS容器服务再推利器!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/333257

相关文章

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

DNS查询的利器! linux的dig命令基本用法详解

《DNS查询的利器!linux的dig命令基本用法详解》dig命令可以查询各种类型DNS记录信息,下面我们将通过实际示例和dig命令常用参数来详细说明如何使用dig实用程序... dig(Domain Information Groper)是一款功能强大的 linux 命令行实用程序,通过查询名称服务器并输

Nginx进行平滑升级的实战指南(不中断服务版本更新)

《Nginx进行平滑升级的实战指南(不中断服务版本更新)》Nginx的平滑升级(也称为热升级)是一种在不停止服务的情况下更新Nginx版本或添加模块的方法,这种升级方式确保了服务的高可用性,避免了因升... 目录一.下载并编译新版Nginx1.下载解压2.编译二.替换可执行文件,并平滑升级1.替换可执行文件

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与