没有合适的资源?快使用搜索试试~ 我知道了~
T Hesa德博士学位L’UNIVERSITÉ DE RENNES和科尔 D八角形第601章数学与信息与通信科学与技术由Yasmina BouizemFaaS环境中的容错论文于2022年6月8日在雷恩提交并答辩研究单位:InriaRennes - Bretagne Atlantique论文编号:si pertinent答辩前的报告员:Sébastien MONNET萨瓦勃朗峰大学教授Thomas ROPARS格勒诺布尔阿尔卑斯大学讲师评审团组成:主席:埃里克·雷诺教授,ESIEE检查员:埃里克·雷诺教授,ESIEE塞巴斯蒂安·莫内萨瓦勃朗峰大学教授托马斯·罗帕格勒诺布尔阿尔卑斯Dir.论文:克里斯汀·莫林Inria Rennes研究总监-Co-Enc.论文:Djawida DIB特莱姆森大学高级讲师尼科斯·帕拉万察斯INSA雷恩高级讲师为了纪念我的母亲谁不能看到这篇论文完成我的父亲为他的爱和支持一个知识分子3首先,我想对论文评审团的所有成员表示衷心的感谢,感谢他们对我的研究工作感兴趣,特别是托马斯·罗帕斯和塞-巴斯蒂安·莫内接受了审查我论文的任务感谢埃里克·雷诺主持评审团。我享受着每一分钟的防守,这尤其是由于你们的组织在这一重要时刻的流动我非常感谢我还要向我的主管Christine Morin、Djawida Dib和Nikos Parlavantzas表示衷心的感谢,感谢他们允许我在他们的指导、耐心、支持和灵感下开展研究工作。我非常感谢他们在这漫长的旅程中不断的乐观和鼓励,伴随着所有的起起落落。我永远不会忘记他们是如何帮助我的,特别是当我一直在与财务问题作斗争的时候。没有他们的帮助,我是不可能完成的。特别感谢塞萨尔·维霍给我机会教一些课,并相信我的能力。非常感谢您的支持和宝贵的建议。我想感谢Inria的Myriads团队的所有成员,感谢他们的善良、支持和宝贵的反馈。感谢我的朋友们在过去的几年里对我的友谊和情感支持。我还要感谢所有给我经济帮助来完成我的研究和在法国生活的各方,特别是Inria,他们慷慨地让我在法国呆得更久。特别是,我想感谢Inria人力资源部的MyriamVinouze,感谢她在大流行期间为获得资金所做的善良和宝贵的帮助。最衷心的感谢和赞赏我的父母,他们无条件的爱和永无止境的祈祷,鼓励和支持,特别是,我最亲爱的妈妈谁不能看到这篇论文完成。谢谢你,妈妈,相信我。你激励我努力工作,正因为如此,我完成了一项看似不可能完成的任务。我还要特别感谢我心爱的姐妹和兄弟,他们在任何情况下都站在我身边,加强了我的道德他们对我的信任让我在论文中保持了高昂的精神和动力T ABLE来自C组51导言131.1背景131.2目标141.3主要贡献141.4论文组织52背景172.1云计算的基本概念2.1.1服务类型172.1.2部署模型192.2虚拟化212.2.1硬件虚拟化212.2.2操作系统级虚拟化222.3集装箱化222.3.1集装箱技术232.3.2容器编排242.4容错能力242.4.1容错定义252.4.2故障类型252.4.3故障检测262.4.4容错方法262.5复制策略282.5.1主动复制292.5.2被动复制292.6容错指标292.7云层中的容错302.8摘要30内容表63功能即服务333.1功能即服务定义333.1.1FaaS33的功能3.1.2FaaS35的执行流程3.2福利363.3挑战373.4使用案例413.5FaaS平台433.5.1商业平台433.5.2开源平台453.6FaaS中的容错463.7摘要514选择FaaS框架534.1标准534.2Kubernetes54概述4.2.1Kubernetes架构544.2.2FaaS56使用的Kubernetes功能4.3Kubernets-NativeFaaS框架584.3.1裂变584.3.2Kubeless604.3.3OpenFaaS624.4绩效评估634.4.1环境设置644.4.2工作负载设置644.4.3指标644.4.4结果分析654.5总体框架比较664.6摘要685FaaS71中高可用性的容错方法5.1裂变71中的回溯机制5.2裂变72中的主动备用5.2.1描述725.2.2在裂变73中实现内容表5.3裂变74中的请求复制T ABLE来自C组75.3.1描述755.3.2在裂变75中实现5.4摘要766评估796.1实验设置796.1.1环境796.1.2应用程序806.1.3工作负载806.1.4失败场景806.1.5指标816.2实验1:使用CoreDNS的活动备用与重试826.2.1绩效结果826.2.2可用性结果856.2.3资源消耗分析876.3实验2:路由器的活动备用与请求复制和重试6.3.1业绩结果896.3.2可用性结果936.3.3资源消耗分析976.4吸取的经验教训996.5摘要1007结论和观点101结论1017.1结论1017.2前景1037.2.1短期展望1037.2.2中期展望1037.2.3长期展望104参考书目105ISTF.伊古尔斯92.1云服务模型概述192.2虚拟化体系结构232.3云计算中的容错方法概述2.4云层中的容错313.1应用程序开发人员和FaaS提供商3.2FaaS36的执行流程3.3冷启动383.4FaaS41中的挑战概述4.1Kubernetes架构554.2FaaS框架与Kubernetes之间的关系584.3裂变结构604.4Kubeless建筑624.5OpenFaaS架构634.6具有1、5和20个重复函数的裂变的吞吐量............................................................654.7具有1、5和20个函数副本的无Kubeless的吞吐量4.8具有1、5和20个功能副本的OpenFaaS的吞吐量4.9响应时间为200秒,一个功能复制三个功能FaaS框架675.1裂变72中的回溯机制5.2使用Kubernetes的主动-备用机制的顺序图CoreDNS745.3裂变中的主动-备用机制概述(实施2)5.4使用路由器75的主动-备用机制的顺序图5.5裂变76中请求复制机制概述5.6裂变76中请求复制机制的顺序图6.1斐波那契应用没有失败8310图列表6.2没有失败的留言簿应用程序836.3带pod故障的斐波那契应用846.4有Pod故障的留言簿应用程序846.5节点失败的斐波那契应用856.6节点失败的留言簿应用程序866.7恢复时间在香草866.8AS86中的恢复时间6.9斐波那契在裂变香草和没有和的AS中的资源消耗pod和节点故障886.10 在没有和有吊舱和节点故障的裂变香草和AS中的留言簿应用的资源消耗6.11 AS、Vanilla和RR的响应时间,无故障6.12 分裂香草、AS和RR的吞吐量(吊舱故障)916.13 带吊舱故障的Vanilla裂变、AS和RR的响应时间6.14 节点故障的裂变香草、AS和RR的吞吐量926.15 节点故障的裂变香草、AS和RR的响应时间6.16 50毫秒延迟的响应时间6.17 100毫秒延迟的响应时间6.18 响应时间(延迟200毫秒)6.19 AS94中的恢复时间6.20 RR95中的恢复时间6.21 无pod和节点故障以及有pod和节点故障时的CPU消耗6.22 在没有和有pod和节点故障的情况下使用内存6.23 pod故障时每个节点的CPU消耗为986.24 pod故障时AS中每个节点的CPU消耗6.25 pod故障时RR中每个节点的CPU消耗IST T型台113.1FaaS环境中容错解决方案的4.1以毫秒(ms)为单位的请求响应时间百分比4.2裂变、Kubeless和OpenFaaS68的比较6.1裂变香草和舱故障AS中的恢复时间876.2在节点故障的裂变香草和AS中的恢复时间876.3Pod故障时AS、Vanilla和RR的恢复时间956.4从节点故障的AS、Vanilla和RR中恢复的时间6.5带吊舱故障的误差率为966.6节点故障时Vanilla裂变、AS和RR的错误率为9613C型HAPTER1一、引言本章详细介绍了我们研究的背景,并定义了博士论文的目标和关键贡献。最后,它概述了文件的其余部分。1.1上下文云计算是一种流行的模式,经过多年的发展。它使开发人员能够扩展他们的应用程序,这些应用程序不再托管在本地计算资源上,而是托管在按需获得的共享资源上,而无需配置数据中心。但是,部署和管理云应用程序既复杂又昂贵。为了将云模式转变为称为功能即服务(FaaS)的新模式,已经做出了许多这种新兴的范式是基于函数的,由于其简单性,最近受到了用户的极大关注。 根据这种模式,所有运营责任都转移到了云提供商身上。因此,开发人员不需要担心管理底层服务器基础架构来部署其功能,他们只需为功能执行期间使用的资源FaaS是在远程计算机上执行处理的按需计算;因此,由于通信延迟或硬件故障,故障可能会占用例如,在计算机节点故障的事件中,用户可能经历性能不稳定,直到故障被恢复。这意味着应处理故障FaaS系统可确保功能的高可用性在FaaS的上下文中,容错由FaaS提供商hence根据所部署功能在发生故障时的可用性进行管理独立、高可用性和内置容错能力都是商业FaaS平台的主要功能(例如,[10])。大多数当前的FaaS平台通过回溯幂等函数的执行来支持基本形式的容错。[81][51][92][93]这意味着当使用相同的输入数据调用多次时,函数将返回相同的结果。但是,虽然重试机制允许处理网络延迟,但它14第1部分从其他类型的故障(如节点故障)中恢复的无休止延迟。 其他容错方法具有不同的可用性、性能和资源消耗特性,使其适用于不同类型的故障和不同的操作系统。对于实例,使用部署在多个节点上的功能实例的复制方法适用于处理节点故障。主动、网络内复制方法可提高性能,适用于延迟敏感型应用程序。 被动复制方法有利于减少资源消耗,并且适合于资源受限的环境。因此,FaaS平台应支持额外的容错方法,以确保在存在不同类型故障的情况下FaaS功能的平稳执行,同时在不显著影响用户体验的情况下保持性能并从故障中恢复。1.2目标我们的主要目标是提供容错解决方案,以在FaaS环境中部署的应用程序出现故障的更具体地说,在本文中,我们假设函数是幂等的,这也是商业FaaS平台的假设,并且AIM容忍暂时性和永久性故障(如节点故障),因此故障不会影响应用程序的执行1.3主要贡献为了实现前一节所述的研究目标,本文做出了以下关键贡献:• 全面的FaaS环境,强调其提供的容错技术• 比较开源FaaS框架,以便选择其中一个框架进行容错方法的实验性评估• 在FaaS环境中集成两种复制方案(被动和主动复制)的研究,其中第一种方案以主动-备用模式应用,第二种方案以主动-主动模式配置;151.4.论文组织• 在开源FaaS框架(称为Fission)中实施复制方案• 在正常运行和各种故障场景(包括功能和节点故障以及网络延迟)下,使用无状态计算应用程序,对裂变香草(本机重试机制)、裂变活动-待机和裂变请求复制的性能、可用性和资源消耗进行比较实验评估1.4论文组织本文件的其余部分组织如下:• 在第2章中,我们介绍了云计算及其基本概念,包括服务模型、部署模型、虚拟化和容器化。本章还介绍了故障模型、故障检测技术和识别故障的不同方法。此外,还讨论了各种复制策略、度量和容错体系结构• 在第3章中,我们将详细介绍功能即服务模型,包括其主要特性、执行过程、优势、挑战和用例。还提供了FaaS平台的简要说明。我们还对FaaS系统中现有的容错方法进行了概述,对相关工作进行了总结,并与我们的工作进行了比较。• 在第4章中,我们首先讨论了为我们的工作选择合适的FaaS框架所需的一组要求为了选择一个满足所有特定要求的框架,我们介绍并评估了三个开源FaaS框架,这些框架都基于Kubernetes容器编排平台,并在下面进行了描述。最后,我们对这三个框架进行了比较分析• 在第5章中,我们首先介绍了Fission FaaS框架中的现有容错机制,该框架是我们为容错策略的实验评估而选择的。此框架使用重试机制来提供容错。然后,我们描述了两种基于复制的容错方法,即主动备用和请求复制方法,以及它们在裂变中的实现第1部分16• 在第6章中,我们进行了一项实验研究,旨在评估所提出的容错方法在不同故障场景下的性能、可用性和资源消耗,并将其与Fission中原生实现的基本重试机制进行比较还介绍了结果的解释。本章最后介绍了从容错方法的评估中吸取的经验教训。最后,最后一章通过总结我们的主要贡献和从我们的工作中吸取的教训来结束本文我们还提出了一些未来的研究前景。17CHAPTER 2B地面在本章中,我们提供了理解这份手稿的必要背景我们首先在第2.1节中介绍了云计算的概念、其服务类别及其部署模型。我们还在第2.2节中介绍了虚拟化。第2.3节介绍了云计算环境中使用的容器化技术。我们在第2.4节中概述了不同的容错方法,并在第2.5节中概述了复制策略,因为复制是我们工作中使用的容错机制最后,第2.6节、第2.7节和第2.8节介绍了容错指标、云层中的容错以及本章的总结。2.1云计算根据美国国家标准与技术研究所(NIST)的说法,云计算被定义为"一种支持无处不在、方便、按需网络访问可配置计算资源的共享池的模型(例如,网络、服务器、存储时代、应用程序和服务),可以通过最少的管理工作或服务提供商交互快速配置和发布。云计算由不同的服务层和部署模型组成,我们将在下面进行讨论。2.1.1服务类型向用户提供的不同类型的云服务可分为四类,如图2.1所示:基础架构即服务(IaaS)、平台即服务(PaaS)、功能即服务(FaaS)和软件即服务(SaaS)1. 基础架构即服务(IaaS)在IaaS模式中,用户拥有高度的控制权。它提供对各种计算基础架构资源(如虚拟机、存储和网络组件)的访问IaaS用户可以根据操作配置和管理系统。第2章18运行系统、应用程序和中间件,但IaaS提供商仍在管理和控制底层云基础架构。 这种类型的服务可以通过互联网使用按使用付费的模式来访问,其中用户根据容量和使用时间只为所消耗的资源付费。Microsoft Azure、IBM云和Amazon Web Services(AWS)都是IaaS的示例2. 平台即服务(PaaS)在PaaS模式中,资源由提供商通过平台提供给软件开发人员。这些资源包括具有各种编程语言的运行时环境(例如,Java、PHP、Ruby)以开发应用程序,应用程序框架以促进应用程序开发(例如,Joomla,WordPress,Spring),以及MongoDB和Redis等数据库,以启用与应用程序的通信。开发人员使用这些服务来开发、部署和管理他们的应用程序,而不必担心底层基础架构。提供商负责提供、管理和维护所有所需的硬件和软件资源。就像在IaaS中一样,PaaS是通过按使用付 费 模 式 提 供 的 。 PaaS 的 示 例 包 括 Google App Engine 、 Heroku 和CloudFoundry。3. 功能即服务(FaaS)在FaaS模型中,为开发人员提供了一个构建、运行和管理无服务器应用程序的平台。无服务器应用程序被分解为一组称为函数的独立部件,这些部件被触发以执行请求。这些功能在虚拟化容器中执行,并依赖于其他服务(如对象存储、数据库或消息传递)。与其他计算模型不同,只有在调用FaaS函数并在处理请求后终止该函数时,才会创建FaaS函数。开发人员只为函数执行期间使用的资源付费,从而节省成本。FaaS为现有的云范例添加了一个额外的抽象层,同时将开发人员从管理和配置服务器中解放出来。所有服务器配置、运营责任和管理任务都由云提供商完成。许多大公司已经采用并提供了FaaS,如亚马逊的4. 软件即服务(SaaS)在SaaS模式中,软件应用程序由云提供商托管和远程管理,并作为服务交付给最终用户。这些软件服务是-192.1.云计算通过互联网按需提供。在这种类型的服务中,客户不需要在自己的计算机上维护或下载软件软件维护、管理和系统管理在供应商端完成SaaS为客户提供了基于订阅的定价模型。这意味着用户需要支付每月或每年的订阅费才能使用软件。SaaS的一些例子是Salesforce、Slack、Zoom和Gmail。图2.12.1.2部署模型在云计算中已经确定了四种部署模式:公共云、私有云、混合云和社区云。1. 公共云公共云是一种计算模型,其中所有资源都可通过互联网远程供公众使用在此模型中,服务运行在由云提供商管理的服务器上供应商还承担其他责任,如维护和安全。在公共云中,计算资源池在多个客户之间共享,配置、可用性差异和安全保护有限。此外,用户通常根据即付即用模式收费此模型的主要优点是高可用性、安全性和简单性。第2章20可扩展性。最受欢迎的公共云包括亚马逊网络服务、谷歌AppEngine和微软Azure。2. 私有云私有云是公众无法访问的云服务它专用于单个组织(例如,公司)。在私有云环境中,云基础架构由组织本身、第三方或其组合拥有和控制,可以在内部部署或外部部署。可以访问私有云的云用户可以从任何位置使用私有云并将信息存储在私有云中,类似于公共云。私有云不是按需交付的。计费通常基于订阅。私有云与公共云共享云计算的许多优势,如可扩展性、弹性和灵活性。与公共云相比,私有云中的信息安全级别相当高私有云提供商的例子包括IBM、VMware和惠普。[102][103]3. 混合云混合云将私有云与公共云相结合。它旨在通过标准化或专有技术实现两个云之间的通信,从而允许数据和应用程序跨两个部署工作。例如,云爆发可实现云之间的负载平衡混合设置适用于需要利用公共云和私有云环境优势的企业或组织。例如,公共云的可扩展性优势与私有云的控制和安全性。[102][103]4. 社区云社区云基础架构专用于只有其成员才能访问云服务的特定社区 此模型允许共享相同问题的社区成员(例如,任务、安全要求、策略和合规性考虑因素),通过集成不同类型云解决方案提供的服务来解决这些问题。与私有云类似,社区云由社区中的一个或多个组织或第三方提供商拥有和管理,两者都可以在内部或外部使用。社区云被医疗保健组织、金融服务公司和其他专业社区广泛使用。[101][102
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- JDK 17 Linux版本压缩包解压与安装指南
- C++/Qt飞行模拟器教员控制台系统源码发布
- TensorFlow深度学习实践:CNN在MNIST数据集上的应用
- 鸿蒙驱动HCIA资料整理-培训教材与开发者指南
- 凯撒Java版SaaS OA协同办公软件v2.0特性解析
- AutoCAD二次开发中文指南下载 - C#编程深入解析
- C语言冒泡排序算法实现详解
- Pointofix截屏:轻松实现高效截图体验
- Matlab实现SVM数据分类与预测教程
- 基于JSP+SQL的网站流量统计管理系统设计与实现
- C语言实现删除字符中重复项的方法与技巧
- e-sqlcipher.dll动态链接库的作用与应用
- 浙江工业大学自考网站开发与继续教育官网模板设计
- STM32 103C8T6 OLED 显示程序实现指南
- 高效压缩技术:删除重复字符压缩包
- JSP+SQL智能交通管理系统:违章处理与交通效率提升
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功