《腾讯云:Serverless架构的资源平衡管理(2023)(28页).pdf》由会员分享,可在线阅读,更多相关《腾讯云:Serverless架构的资源平衡管理(2023)(28页).pdf(28页珍藏版)》请在三个皮匠报告上搜索。
1、代 码 传 递 思 想 技 术 创 造 回 响腾讯云工具指南Serverless架构的资源平衡管理04编者按Serverless具备弹性、自由、灵活等云原生技术的天然优势,但是随着企业数字化逐步深化,Serverless在实际开发运维中也面临部署流程复杂、资源管理零散、管理难度大等新的挑战。腾讯云认为,资源安全可控、运维高效敏捷、成本消耗可预期是资源管理中的三种极致又相互矛盾的需求,如何在企业级运维中实现三者均衡的最优解,是Serverless能否从边缘的、离线的、非核心的业务,走向核心业务的决定性因素。本期指南将呈现腾讯云相关产品如何实现安全/性能/成本三者的资源平衡管理最优解目录CONTE
2、NTS腾讯云TVP、CNCF中国区总监陈泽辉CNCF云原生调研中的Serverless 趋势解读洞察技术专家解读趋势010502案例腾讯云“实战经验”分享腾讯云容器专家架构师邱凯使用TKE超级节点实现访问控制安全08腾讯云存储产品负责人崔剑Serverless数据湖存储在AIGC场景的架构与落地11腾讯云数据库产品经理陈昊使用TDSQL-C Serverless服务实现数据库极致弹性14腾讯安全云鼎实验室安全专家张恒Serverless架构资源的安全攻防演绎17小型电商系统的TDSQL-C数据库应用2703交流开发者的难点与解惑普遍趋势的数据解读技术场景问题探讨开发环境的动手实验222325T
3、echo小助手快问快答P A R T01洞察技术专家解读趋势Serverless作为云原生开发架构的核心组成部分,逐渐为更多开发者所采用它未来会有什么样的发展趋势?以及将会遇到什么样的挑战?且听腾讯云技术专家分享CNCF调研数据及成果腾讯云TVP、CNCF中国区总监 陈泽辉云原生时代,Serverless技术的发展趋势与面临的挑战云原生技术自2015年诞生以来,不断演进成为一种应用云化开发、部署和运行的主流方式。Serverless作为云原生开发架构的核心组成部分,可以更好地帮助企业和开发者实现敏捷创新。Serverless作为主要的云原生趋势,能够让开发者专注业务发展而无需关心其他底层技术,
4、同时提升云计算资源利用效率,而Serverless具备的极致弹性和自动扩展能力也被越来越多的开发者采用。在CNCF发布的云原生调查报告中,云原生三个方面Service Mesh(服务网络)、Serverless Architecture/FaaS(无服务器架构/FaaS)、Service Proxies(服务代理)在过去三年上升趋势明显,分别占比提升到了47%、53%、71%。云原生时代,Serverless技术强势崛起洞察技术专家解读趋势05腾讯云工具指南 Serverless架构的资源平衡管理趋势一,Serverless technology和其他技术整合(例如:边缘计算)。Gartner
5、预测,到2025年,四分之三的企业级数据将在边缘创建,这将会发生在传统数据中心或云之外。新兴的很多应用程序被安装并保持在本地,直到需要扩展时将无缝过渡到内置的Serverless云。这种部署对物联网领域已经采用的边缘计算极具吸引力,特别是令5G中使用边缘计算的延迟减少了(1-5 毫秒),这种边缘加上Serverless将使计算更接近终端用户。趋势二,功能即服务或FaaS不断扩大。Serverless作为端到端应用程序开发平台的推动者,在开发人员中普及了 FaaS编程风格。还能在多云部署的趋势下,在公共云服务提供商的产品之上构建抽象层,有助于将业务服务与云供应商的专有技术分离,并提供根据服务特定
6、要求选择Serverless平台提供商的灵活性。趋势三,Serverless平台和容器,两个世界力量的结合。容器与Serverless函数相比,被认为是更粗粒度的替代选择。当前Serverless平台已经开始支持容器来打包和部署应用程序代码。趋势四,Serverless将继续成为云提供商的重点领域。在此趋势下表明,新的创新产品将继续出现。采用Serverless模式后,会将更多服务器运维、安全相关的事情交给云提供商来操作。例如FaaS、BaaS、DBaaS、STaaS、Kubernetes和CaaS、MLaaS等,可以简化开发者的工作。Serverless持续发展,展现四大趋势挑战一,供应商锁
7、定。Serverless架构在设计和迁移阶段必须考虑供应商锁定问题。因为供应商在运行时的编程语言不都是统一的,一些供应商平台使用专有或内部开发的工具进行打包和部署。所以从一开始选择Serverless架构就应当清楚了解从一个供应商过渡到另一个供应商时可能发生的关键问题,减少锁定问题发生的可能性。挑战二,估算成本难。由于Serverless服务的定价模式是纯按使用收费,有时会存在供应商及套餐数量方面的不同,计算方法也存在差异,估算成本也会有难度。因此,在没有固定费用的情况下,分析各个供应商在资源支付时的报价,也算是应对估算成本挑战的好方式。挑战三,冷启动。Serverless在特定的情况下,可能
8、出现激活延迟(冷启动)。而造成冷启动的因素有三:编程语言、分配的和可用的资源、依赖项的数量和整体应用程序的复杂性。因此,如果想减少冷启动的发生,重要的是处理参数中的每一个以优化函数的启动时间,然后采用供应商推荐的具体技术改善冷启动的问题。挑战四,安全风险。所有Serverless供应商都会提供高级安全系统,但其系统是为多个客户提供服务所设计的,与专属的或是本地服务器相比,更易受到安全问题影响。Event Sources越大,反而也增加了潜在的攻击面。常见的安全风险主要是来自一些的开源软件和第三方软件的Serverless功能中的安全漏洞,以及分布式的拒绝服务(DDoS)攻击。对于其中开源软件的
9、漏洞,则需要清楚了解软件材料清单(Software Bills Of Materials)进行规避。总的来说,使用Serverless架构可能会面临挑战,但Serverless所带来的优势明显超过了其所带来的风险。CNCF非常看好Serverless发展前景,我们坚信Serverless会加速云原生的普及,将云原生创新性提升到一个新高度。Serverless加速落地,也面临四大挑战洞察技术专家解读趋势06腾讯云工具指南 Serverless架构的资源平衡管理P A R T02案例腾讯云“实战经验”分享开发者在使用Serverless的过程中,会遇到怎样的难点和挑战?业务Pod变更频繁,需要保证
10、访问安全;AIGC场景下模型训练数据复杂且高要求;突发性扩缩容,担心提前购买资源造成浪费;云原生安全如何做好多场景防护.腾讯云讲述实战中如何在企业级运维场景中真正实现安全高效、成本可控的最优解腾讯云容器专家架构师 邱凯TKE超级节点下的Pod网络安全一、项目背景某互联网金融企业,云原生场景因为业务的述求和成本述求,其业务Pod需要经常变更,扩缩容频繁。于是在Pod到Pod之间,Pod到数据库之间的访问控制,敏感信息的传递都需要一个更便捷高效,贴合云原生的方案。二、主要难点业务现有一套基于虚拟机的安全组,ACL的安全控制,因此希望1、容器化之后既能尽量复用之前的网络安全方案;2、让云原生的Pod
11、放开了调度。三、需采用的工具腾讯云容器超级节点及其安全产品(安全组、SSM、CAM)四、解法思路案例腾讯云“实战经验”分享08腾讯云工具指南 Serverless架构的资源平衡管理五、解法步骤1、场景一:Pod网络访问控制从虚拟机时代到容器时代,是网络安全解决方案在保证安全可控的前提下尽可能的提高运维效率的进化过程。下面通过“Pod网络访问控制”以及“Pod访问云上资源”两个典型场景来体现。1)1.0方案:网端管理(从虚拟机到容器的过渡)在虚拟机时代,网络访问安全管理有三个特点:以子网为业务安全域;资源变更不频繁;扩缩容需变更数据库端的安全组。网端管理跟虚拟机管理一样“以子网为业务安全域”,但
12、因为容器“资源扩缩容频繁,Pod还会漂移”,“数据库安全组直接按子网放通”,带来了新的挑战没有实现端到端安全访问管理按业务划分子网,后续子网的管理也相对复杂.0/216 .0/.0/.0/A C B 216 .0/业务A 业务B 允许 2)2.0方案:固定IP+控制器(从管理子网到管理IP)为了解决Pod偏移带来的管理复杂化,容器资源管理对象改为固定IP,具体实现过程是:通过旁路控制器监听Pod的创建和销毁,实现自动更新安全组Pod创建时,动态更新安全组,给业务Pod注入初始化容器检测安全组放通之后再运行业务容器Pod更新时,IP保持不变Pod删除时,动态更新安全组但它依然有比较高的复杂度,主
13、要是因为Pod比较多的状态,云API无法及时更新方案复杂度高,排障成本高 85 A C 85 业务A 业务B 允许 允许 允许 云API 3)3.0方案:超级节点(支持Pod直接绑定安全组)这是解决本文客户业务痛点的新解决方案。它的主要特点是支持按Pod绑定安全组为核心,具体实现过程是:但在服务客户过程中,发现还有进一步优化的空间因为客户业务场景需要大量的“双向访问”,安全组层面还有简化空间。自动创建安全组配置安全组访问规则自动生成yaml描述 业务和安全组的关系控制器拦截Pod创建请求,匹配标签,自动设置安全组业务可访问授权数据库 142 8 8.142 8 142 8 142 8 A C
14、8 36055 142 8 业务A 业务B 允许 允许 业务名称 数据库 访问控制 业务A 数据库A 允许 业务B 数据库B 允许 安全组A 安全组E 允许 安全组B 允许 SecurityGroupPolicy apiVersion: kind:SecurityGroupPolicy metadata:name:my-security-group-policy namespace:my-namespace spec:podSelector:matchLabels:app:my-app securityGroups:groupIds:-安全组B 1.2.配置安全组的访问规则 3.yaml描述
15、业务和安全组的关系 4.POD创建请求,匹配标签,5.业务可以访问授权数据库 安全组F4)3.1方案:超级节点(安全组绑定业务组)通过这个细节优化,客户无需每次访问都重新建立动态安全组。最终这个方案也实现了业务侧安全、成本、效率的最大化每个Pod都有独立的安全组,基于安全组到安全组的放通,简化Pod到目标端的IP管理逻辑,Pod的扩容,缩容,更新等不再受到约束,通过 SecurityGroupPolicy 组件 分离业务和安全的关注点,让安全一步到位 65:65:65:65:65:A C 65:14.33 65:业务A 业务B 65:允许 65:允许 业务名称 安全组 访问控制 业务A 安全组
16、A 允许 业务B 安全组B 允许 SecurityGroupPolicy apiVersion: kind:SecurityGroupPolicy metadata:name:my-security-group-policy namespace:my-namespace spec:podSelector:matchLabels:app:my-app securityGroups:groupIds:-安全组B 没有安全组增加旁路控制器基于安全组方案双向访问,安全组合并简化POD绑定安全组案例腾讯云“实战经验”分享09腾讯云工具指南 Serverless架构的资源平衡管理六、核心价值点1、Pod,
17、数据库之间访问可以实现访问双向管理,禁止未授权访问,支持同地域跨集群管理2、复用安全组和ACL,不打破安全同学的历史积累的安全边际3、Pod可控安全访问云上资源场景二:Pod访问云上资源1)1.0方案:ID与密钥通过环境变量传递安全访问云上资源,都需要ID和密钥以验证访问身份与权限,但直接通过环境变量传递会存在两个核心问题团队人员变动,信息会不会泄露?传递过程,密钥是否有机会隐藏起来?version:2.0,statement:effect:allow,action:cos:*,resource:“qcs:cos:ap-guangzhou:uid/125123456:存储桶A/*,effect
18、:deny,action:cos:*,resource:qcs:cos:ap-guangzhou:uid/125123456:存储桶B/*COS 存储桶A SecretId:xxxxxxxxxxxxxxx SecretKey:xxxxxxxxxxxxxxxxx 2)2.0方案:通过超级节点TKE的ServiceAccount(下文简称“SA”)代替腾讯云API访问密钥这是解决本文客户业务痛点的新解决方案。实现访问ID与敏感信息分开传递,并以动态Token取代了静态的密钥,即使泄漏,非授权账户或设备也无法访问。具体实现方式是:TKE通过OIDC接入CAMSA扮演腾讯云的云上角色Pod指定启动的S
19、A,即可拥有CAM权限,确认可访问的资源version:2.0,statement:effect:allow,action:cos:*,resource:“qcs:cos:ap-guangzhou:uid/125123456:存储桶A/*,effect:deny,action:cos:*,resource:qcs:cos:ap-guangzhou:uid/125123456:存储桶B/*COS 存储桶A BAD IC 3)2.1方案:数据库DB访问中,加入SSM系统实现高效与安全的折中2.0方案是比较理想的安全状态,但是在某些特殊场景,比如数据库DB访问中面临一些复杂度。主要是由于系统需要更换
20、驱动,对于很多老业务访问,性价比不高。在2.0方案上,对于数据库DB访问等场景中,进一步引入了SSM(凭据管理系统)简化人为操作,具体实现过程是通过SA的token调用云API获取临时密钥临时密钥调用SSM SDK初始化访问数据库信息SSM服务定时轮转写入账号密码version:2.0,statement:effect:allow,action:”ssm:*,resource:“qcs:ssm:ap-guangzhou:uid/125123456:业务A/TDSQL DB CB 通过密码访问数据库 CAM鉴权代码段核心逻辑,让TKE的SA,代替腾讯云API访问密钥引入SSM通过SA的token
21、API获取密码案例腾讯云“实战经验”分享10腾讯云工具指南 Serverless架构的资源平衡管理一、项目背景国内头部的一家AIGC文生图的公司,原始数据素材规模庞大,训练任务紧迫,且训练结果精度要求极高。三、需采用的工具腾讯云存储产品:对象存储COS、数据湖存储GooseFS、数据万象CI、企业网盘TCED四、解法思路二、主要难点1、原始数据素材规模庞大,存储成本高:素材准备阶段,客户需从多个数据源头进行数据拉取,完成海量、多格式数据存储。这需要Serverless化弹性的海量存储空间,同时享受极致成本。2、要求读写I/O性能实现高吞吐、低时延:需Serverless化的存储IOPS和读写吞
22、吐能力,匹配大模型训练过程中高效高质量的结果需求。3、内容审查要求要准也要快。在AIGC内容生成后,需Serverless化的数据二次加工、内容审核的能力,从而满足客户和监管机构对内容质量及合规性的要求。腾讯云存储产品负责人 崔剑Serverless数据湖存储在AIGC场景的架构与落地案例腾讯云“实战经验”分享11腾讯云工具指南 Serverless架构的资源平衡管理五、解法步骤 审核 、视频内容审核、视频、内容分类、共享、查询 主要分两大核心场景:1)训练场景诉求:数据湖统一存储、数据在业务间自由流动、高吞吐、低时延2)推理场景诉求:内容审核、内容管理AIGC是典型的Data lake+AI
23、 应用场景,数据需要统一存储,并同时对接多个处理平台,数据自由在多个平台之间流动。在与客户多次深度交流和POC后,我们很好地为他提供Serverless化存储数据湖三级加速解决方案。1、用Serverless存储数据湖三级加速解决方案系统性解决AIGC“训练-推理”全流程1)场景诉求a.支持多源数据存储:大模型训练数据集来源多样,数据集需要跨境跨机房交换和存储。b.支持多格式数据存储:训练数据集和模型产出有图片、视频、语音和文本等多种格式数据。c.支持海量数据存储:公开数据集规模庞大,需要消耗大量公网带宽,网络成本高。d.原始数据价值密度低:原始训练数据集中存在大量脏数据,进一步清洗后才能作为
24、模型输入。2)解决方案a.提供全球多地域核心机房,支持TB级公网带宽,提供数据下载。b.通过Flink和Spark等数据分析框架,提供流批一体的低延迟处理,满足预处理性能诉求。c.基于大数据组件容器化部署能力和云原生对象存储,实现计算资源和存储资源的弹性扩展。d.基于数据湖存储GooseFS跨园区缓存热数据。e.基于对象存储COS的跨地域复制能力,将境外数据集近实时传输至国内。实现价值:AIGC训练场景下原始数据素材规模庞大,如何应对?Step1:数据集下载与预处理案例腾讯云“实战经验”分享12腾讯云工具指南 Serverless架构的资源平衡管理审核能力 色情低俗/敏感时事/血腥暴力/广告/
25、谩骂/违禁违法/特殊符号/特殊服装/特殊语言/特殊旗帜/解决方案 自动化审核服务/场景化运营策略/定制识别服务/历史数据清洗/内容风险评分 审核结果 数据万象内容审核 AIGC 模型 000000010100101 0001001 0101001COS Data LakeACC实现价值:AIGC训练场景下训练要求精度高,如何解题?Step2:数据训练加速采用工具使用GooseFS,通过近计算端部署,以本地化文件系统缓存提供毫秒级低延时、百万级高IO的文件读写能力。实现效果1.将训练数据加载到GPU内存、本地
26、盘或可用区全闪存储集群等不同级别缓存中,缩短IO路径,提升数据访问性能。2.相比起从对象存储COS中直接读取,数十倍提升数据访问延迟、IOPS和吞吐。a.对象存储COS的单桶OPS指标可付费横向扩展至10w级 b.对象存储COS的单桶带宽指标可付费横向扩展至TB级。3.全量数据持久化在对象存储上,提供海量低成本存储;加速数据访问,达到高性价比。实现价值:AIGC推理场景下审核要求又全又准,怎么做到?核心产品工具:数据万象CI提供开箱即用的Serverless化数据处理和审核能力Step3:为推理过程提供全方位审核六、核心价值点1.云原生Serverless化存储:提供PB级云上对象存储能力,用
27、户无需关注数据存储边界问题。2.云原生化数据湖加速体系:毫秒级延时、百万级IOPS、TB级带宽,为海量大模型AIGC场景提供强力的存储性能。3.云原生化数据处理能力:针对多媒体提供近存储侧高弹性、低成本、低时延的智能数据处理能力。实现价值:AIGC推理场景下结果的分发与治理,如何妥善管理?核心产品工具:企业网盘TCED一助力企业提升数据管理效率,更大化地挖掘数据的业务价值Step4:为推理结果提供完善的管理服务推理结果管理特性一体化办公生态:企业网盘与腾讯会议、腾讯电子签、iDaaS等产品打通,形成腾讯云企业办公场景的全家桶AI智能化办公体验:结合腾讯云OCR、以图搜图、标签搜索及聚类等能力,
28、构建智能化办公体系企业办公效率提升:通过文档协同编辑、数据高效分发共享、一键化企业知识库提高办公效率推理过程审核方案优势接入:一体化的存储内容安全方案,增量数据一键开启审核模型:针对 AIGC 场景审核策略的专项调优和底层模型的定制开发性能:根据存储数据智能地调度处理集群,近存储侧的处理能力提供更优的数据传输时延和更低成本Serverless化存储数据湖三级加速案例腾讯云“实战经验”分享13腾讯云工具指南 Serverless架构的资源平衡管理一、项目背景该客户是电商平台客户,其业务场景有一些类似测试、定时任务、慢查询等流量负载不确定的业务,在节庆活动时也需要面对突发性高并发。如果前期采购数据
29、库资源太高会造成浪费,临时弹性扩缩容又当心响应不及时导致网站因并发量大而崩溃。三、主要场景慢查询 低频访问业务 定时任务开发测试环境 归档数据库 活动类场景腾讯云数据库产品经理 陈昊使用TDSQL-C Serverless服务实现数据库极致弹性四、需采用的工具腾讯云TDSQL-C Serverless服务五、解法思路二、主要难点弹性策略:在扩缩容的时候,数据库会遇到何时触发弹性的问题,及匹配客户业务流量及时调度合适规模扩容/缩容的需求。应对弹性过程中的毛刺现象:因为bp的影响,在弹性过程中很有可能会遇到毛刺现象。案例腾讯云“实战经验”分享14腾讯云工具指南 Serverless架构的资源平衡管
30、理 六、解法步骤七、核心价值点通过监控业务负载情况,系统对计算资源进行自动扩缩容,并对该时刻所消耗的资源进行计费;当没有数据库请求时,监控服务会触发计算资源的回收,并通知接入层;当用户再次访问时,接入层则会唤醒集群,再次提供访问。1)触发弹性时机:TDSQL-C Serverless服务的弹性策略是利用监控计算层实现的。TDSQL-C Serverless服务的弹性策略一开始会根据用户购买时选择的容量范围,将CPU、内存资源限制到最大规格,极大程度降低因CPU和内存扩容带来的时间影响和使用限制;CPU、内存、存储三层结耦,数十种监控指标触发弹性,根据实际负载情况进行三层独立弹性,将资源利用率发
31、挥到极致;当集群触发到自动弹性的负载阈值后,Buffer pool会根据监控提前进行分秒级调整。此方案下用户使用数据库可无感知进行CPU扩容,并且不会因为连接突增导致实例OOM;多种弹性方式融合,针对不同场景的业务形态,融合共享资源与独立资源的优势,保证资源利用率。2)扩缩容规格:多种弹性融合方式,融合共享资源及独立资源优势。1、难点一:什么时候触发扩缩容,扩缩容规格如何决定?缩容过程中,回收区的page转移到非回收区,频繁持mutex_enter,如果有事务一直未提交且占用了待收缩的page时,收缩会一直重试;回收chunk内的所有block,此过程会持有锁阻塞其他线程对page的访问;优化
32、遍历待回收chunk区域,向非回收区迁移时不再需要多次遍历LRU链表;管控层灵活自动化控制缩容步长,优化后缩容时可能遇到的毛刺问题,最高慢查询时间不超过600ms,整体毛刺数量降低80%。腾讯云数据库采用resize bp的优化可以很好地应对Serverless弹性过程中发生的毛刺现象:2、难点二:如何清理缩容过程产生的毛刺?传统云数据库存在无法自动扩缩容,无法按使用量计费,存储与计算绑定等问题。TDSQL-C云原生数据库在存算分离的架构下,实现了极致的弹性,弹性扩缩容触发的时机、触发的规模和方式,缩容时毛刺处理,秒级冷启动方面都做到了性能、成本、弹性的再平衡。案例腾讯云“实战经验”分享15腾
33、讯云工具指南 Serverless架构的资源平衡管理八、延展阅读:TDSQL-C Serverless服务的三大特性及案例应用1)资源池化及弹性能力:根据业务负载扩缩容实例,开发者无需预测负载并提前扩容资源a)算存分离,资源池化:计算存储分离,根据负载独立弹性,不受单机瓶颈限制,根据业务发展平滑拓展集群;b)极致弹性,自动扩缩容:结合时序算法等预测式弹性,提前触发扩缩容;c)全面Serverless化,充分调度:支持集群全面Serverless化,将资源更细粒度进行拆解,快速添加RO节点,每个实例可进行独立弹性。2)高可用、高性能能力:利用恢复感知器实现秒级冷启动,自动启停,业务不间断,基于云
34、原生数据库底座,提供超高性能的弹性能力a)链接不断保持能力:实例暂停状态下利用恢复感知器实现秒级冷启动,恢复时间最多仅需2000msb)毛刺清理能力:优化后缩容时可能遇到的毛刺问题,最高慢查询时间不超过600ms,整体毛刺数量降低80%3)丰富的拓展性及计费能力a)支持Data API方式访问数据库:利用restful api集成模式,可提高70%-80%的运维人效,有力帮助用户降低成本b)灵活的计费方式,不使用不付费:秒级采样计算存储使用量,根据使用使用量收费;提前购置资源包价格更优,最高可降低成本90%;实例暂停后无计算费用,只收取存储费用需求与痛点:海岛风暴水上乐园开通在线订票业务。但是
35、旅游业淡旺季明显,希望解决短暂高并发难点,并控制成本。解决及效果:腾讯云原生数据库TDSQL-C Serverless 依据监控数据预判五一假期的数据量会大幅增长,提前自动做好弹性扩容,无需更多设置。当五一期间白天大量购票者涌入后台数据暴涨时,数据稳定,晚上订票数量放缓,自动释放部分资源帮助盘点当天业绩。五一活动结束后,又回复到日常的资源采购量。不仅做到了弹性扩缩容满足业务需求,同时节约了成本,按使用付费。【案例】解决信阳海岛风暴水上乐园的淡旺季资源弹性诉求需求与痛点:晓餐冻品网原本的电商技术架构复杂,冗余多,希望能进行Serverless架构改造解决及效果:TDSQL-C Serverles
36、s 在Serverless框架之下,让晓餐冻品网加入云托管,大幅简化了该网站的技术架构与层级,仅需几行代码,2小时即实现后段业务上云,同时依靠云托管数据库,无需动辄改造,其业务请求成功率和链接速度得以提升,受到的网络攻击也有所下降。【案例】晓餐冻品网的Serverless改造需求与痛点:趣做局节日访问量较大,日常却低不少,希望云托管之后实现自动扩缩容,省成本,按用付费解决及效果:TDSQL-C Serverless 能够实现多种付费方式的选择,不仅能秒级采样付费或按实时CCU付费,也有资源包购买,同时自动扩缩容不仅能够实现区分节假日与日常,白天与晚上的资源也可以自动实现按用付费,不用仅收存储费
37、用。灵活计费方式极大满足了趣做局的自动扩缩容,真正按用付费的需要。【案例】趣做局网站需求云托管之后实现灵活计费案例腾讯云“实战经验”分享16腾讯云工具指南 Serverless架构的资源平衡管理三、需采用的工具腾讯安全产品:SSM、WAF等四、解法思路二、主要难点1、证书、密钥、敏感信息若以明文保存本地,攻击者可以轻易获取。2、在云文件调用上,经常需要各种形式的校验,且相比虚拟机时代种类更丰富,也存在更多潜在风险。腾讯安全云鼎实验室安全专家 张恒Serverless架构资源的安全攻防演绎一、项目需求某互联网金融企业,网站或应用开发场景下,提供 HTTPS 等服务时需使用证书、密钥。后台服务开发
38、场景下,开发配置文件中会设计敏感的配置信息、数据库连接信息等。案例腾讯云“实战经验”分享17腾讯云工具指南 Serverless架构的资源平衡管理五、解法步骤解决原理:1、所有的凭据均由密钥管理系统(KMS)进行加密保护2、用户可以将代码中的硬编码凭证(包括密码)替换为对凭据管理系统 API 的调用,以便用编程的方式动态查询凭据,由于该凭据中不包含敏感信息,所以可以保证敏感数据不被泄露。具体编码中,下图数据库需确认用户名和密钥。如用第1种明文编码,直接将ID和密钥展示出来,很容易造成泄漏。而第2种方法使用SSM将密码等信息隐藏在云端,客户首先调用SSM API发起敏感信息获取请求,以编程的方式
39、动态查询凭据,保证敏感数据不泄漏。1、明文编码:用户名、密钥均在其中2、使用SSM进行凭据管理,让密码隐藏起来1、敏感信息存储场景:创建任务时采用明文编码易造成敏感信息泄露,如何做好凭据安全管理?案例腾讯云“实战经验”分享18腾讯云工具指南 Serverless架构的资源平衡管理“一切用户可输入的问题,都不应该完全被信任”。文件名未过滤是一个从单体应用到云时代应用的常见安全隐患,容易变成隐性的攻击面。在传统的Web端,服务商会校验客户输入是否合规。但是在云文件调用上,其文件名总被系统默认是合规的,但有些文件尤其是第三方输入的文件被调用时,其文件名本身就会成为一个安全漏洞。不仅是文件名校验,开发
40、者还应该关注更多云安全性的信息校验,常见有:1.身份校验,校验用户是否合法以及有权限访问2.输入参数校验,常见有文件后缀,文件名,文件类型,文件内容等校验方式,例如限制png 后缀,文件名作正则校验,文件内容鉴定webshell,病毒木马等以上是常见的校验场景,更安全的校验需要结合应用场景,确定符合预期的内容是什么,再考虑使用白名单或黑名单的方式进行非预期的校验过滤。这种对云安全意识的提升,也是进入云时代后安全升级重要的一环。2、多个云服务调用场景:filename未过滤用户输入是否合规,导致命令被执行由于Linux命令行是可以被打断的,如图被系统截取到了不合规的文件名,却未经校验,依然执行后
41、出现右图的错误信息。从实战角度出发,围绕云原生场景,通过全方面分析攻击者战术与技术,推出云安全攻防矩阵。该矩阵共分9大阶段,每个阶段中都包含了多种用以实现此阶段能力的攻击技术,而利用Serverless的攻击方式也覆盖了每个阶段。腾讯云安全建立覆盖九大阶段的Serverless安全攻防矩阵Serverless一般的攻击流程:攻击者通过程序漏洞或者组件漏洞实现初始访问权限,当获取到服务器权限后,攻击者会尝试查找并窃取用户凭据或服务凭据,然后利用可用凭证进一步横向攻击其他云服务。3、核心价值案例腾讯云“实战经验”分享19腾讯云工具指南 Serverless架构的资源平衡管理加速一:ISA-L加速C
42、ontainerd镜像加载加速二:微服务通讯QAT-Crypto TLS handshake acceleration(QPS)optimizationCryptoMB TLS handshake acceleration optimizationEnvoy workers threads load balancing optimization with reduced latencyBypass TCP/IP stack to speed up packet transmission optimization提升服务网格的安全性利用SGX的安全保护机制(TLS/CA/Gateway priv
43、ate key protection,Trusted certificate service,Trusted Attestation Controller)通过Intel技术提升服务网格的各种应用场景的性能QAT-GZIP compression for Istio throughput optimization通过ISA-L/igzip的优化,在Containerd环境下拉取镜像时解压缩所需要的时间大大减低,进而降低应用程序部署和扩展所需的时间。Service MeshQAT提供高性能的安全和密钥保护,并提供压缩解压缩加速.他提供了卓越的能力:400/200Gbs Crypto,160Gbs
44、 verified compression,100kops PFS ECDHE&RSA 2K Decrypt.Intel QuickAssist Technology(QAT)DSA为高性能存储、网络、持久内存和数据处理的场景提供优化的数据流的移动和传输操作,腾出更多CPU资源用于业务使用.Intel Data Streaming Accelerator(DSA)Intel部分加速项目基于云原生的加速三:云原生底层云资源编排容器运行时中的 NRI 提供了一种可插入机制,用于通过容器运行时中的上游公共 API 大规模改进节点内工作负载放置。连同其策略插件,例如拓扑感知、气球等,它们提高了性能,减
45、少了干扰邻居问题和不可预测的性能变化。Node Resource Interface(NRI)DRA 为资源分配提供了用户友好的API,并通过插件管理复杂的设备。DRA 可以有效地管理多租户云环境中的英特尔高级加速器和设备.K8S Dynamic Resource Allocation(DRA)NFD 是一个 Kubernetes 插件,用于检测硬件功能和系统配置。英特尔至强 CPU 和 AVX 等平台功能需要识别 NFD 支持,并将其提供给 K8s 工作负载。NFD 使客户能够在 K8s 中无缝集成 IA CPU 和平台功能.K8S Node Feature Discovery(NFD)Co
46、ntainerd是目前主流的Kubernetes运行时ISA-L是一套针对存储类应用优化过指令集,igzip其中的一个子集,他提供了高效的压缩和解压缩能力案例腾讯云“实战经验”分享20腾讯云工具指南 Serverless架构的资源平衡管理P A R T03交流开发者的难点与解惑开发者在一线工作中,总会面临形形色色的具体问题我们通过问卷调研、具体问题问诊、快问快答进行更加全面的答疑解惑腾讯云认证开放了更多开放环境的实践课程助力开发者加深理解根据开发者调研数据显示,在“资源管理”场景下,开发者在开发及运维方面最常面临的的痛点主要是故障增加、存储的安全性问题、存储的监控和预警缺陷,以及峰值吞吐不足等
47、问题,这其中遇到的某些问题是Serverless技术结构可以解决的,某些则是云原生带来的新挑战。从Serverless架构来看,它在企业运维场景使用比例也逐步提高。采访中,30%受访者所在组织/企业有使用过Serverless产品技术,这其中,体感最明显的优势主要是“成本降低”、“灵活定制与扩展能力”、“提高资源效率”;而主要挑战则是集中在“运维可靠性”、“网络安全性”、“根据负载扩展部署”、“供应商选择与支持”。摘要从业者说1、安全性问题很难把握,公司公有云、私有云、混合云都有,因此安全管理的复杂性增加了不少。同时,可观测性问题需要实时监控,云原生应用程序中的组件数量和交互方式的增加,应用程
48、序的可观测性变得更加困难,目前还没有好的解决方案。某互联网企业云计算工程师2、一个是存储成本问题,存储成本是我司考虑的重要因素之一,需要考虑成本与性能之间的平衡,另一个是存储管理问题,随着存储数据量的增加,存储管理变得越来越复杂,需要考虑如何管理存储设备,包括存储容量的扩充、数据备份和恢复、存储设备的维护等方面。某物联网企业项目经理3、对于客户端单机软件数据存储格式较为单一,无法做到多台电脑下数据共享,存储的数据一旦发生错误,就无法进行回滚。某汽车企业JAVA软件工程师4、数据访问性能问题还没有更好的方案,由于客户端和存储服务器之间存在网络延迟,因此可能会影响数据访问性能,需要优化网络带宽、I
49、/O性能。某医疗企业架构师从业者说1、我们的云平台每日会受到大量病毒攻击,很苦恼。另外有些病毒容易潜伏,大概会半年左右才爆发一次,团队容易被打的措手不及。某新能源制造业企业系统架构师2、目前在用的K8s自动伸缩没有预测功能,部署不及时,无法实现运维自动化。某医疗企业架构师3、云原生应用程序的规模和复杂性不断增加,手动管理和维护越来越难了,希望能有自动化管理的方案。某互联网企业云计算工程师4、云原生还是比较新,太过专业化导致开发同学技术学习成本高、从传统的运维平台到转变使用Kubernetes来做发布管理很痛苦(所谓的技术惯性),能很好理解云原生逻辑跟K8s运维的人才很少。某Java高级开发工程
50、师一、在“资源管理”场景下,开发者面临的哪些开发及运维方面的痛点?二、开发者使用Serverless时,遇到的挑战以及价值感知点都有哪些?数据解读交流开发者的难点与解惑22腾讯云工具指南 Serverless架构的资源平衡管理遇到的挑战价值感知点提问方互联网企业运维团队负责人虚拟机vs.容器,云原生化关键词腾讯云产品技术专家解答核心需求我们是做互联网的业务,虚拟化技术非常成熟。由于技术惯性的缘故,团队从传统的虚拟化运维平台到转变使用Kubernetes来做发布管理很痛苦。1、云原生应用程序中的组件数量和交互方式太多了,手动管理太复杂了。2、业务部分有许多新的应用和玩法,在Kubernetes频
51、繁出错,“甩锅”给运维组,急需容器的自动化方案。腾讯云容器专家架构师 邱凯1、云原生化的核心收益是和云厂商解耦以及降本增效,对公司而言是收益明显的,但是需要公司各个团队配合。所以云原生改造是一个从上到下的工程,并不仅仅是需要运维驱动。腾讯云提供了兼容云原生的托管产品矩阵,帮助企业在享受云原生便利的同时,降低运维复杂度。2、如果基于虚拟机的日志监控是基于ELK,Prometheus,发布系统是基于jenkins等,上述方案是可以继续复用,否则建议在容器环境新建统一监控日志发布方案,然后虚拟机做迁移。3、如果现有监控日志方案无法放弃,可以考虑容器的ELK和Prom把数据送到现有的监控和日志系统中。
52、提问方某医疗企业架构师弹性扩缩容关键词腾讯云产品技术专家解答核心需求我们大约几十台服务器采用kubesphere生态,但是K8s自动伸缩没有预测功能,业务部门的挂号和抢号活动,会有大量用户突然访问,但是扩容仍需要时间,至少几秒,部署不及时会影响业务部门。腾讯云容器专家架构师 邱凯1、首先要理解K8s自动扩容资源的原理,被动的探测到扩容(HPA+CA)是没法满足流量暴涨的场景。在云上有充分资源的情况下,可以基于时间属性提前扩容,如八点放号,七点四十扩容,TKE 有HPC+HPA 可以满足述求。2、也可以预测性扩容,EHPA 会根据历史资源用量,预测性提前扩容。在IDC因为资源弹性问题,大多数场景
53、需要用buff去抗。3、如果有条件可以考虑IDC打通云上资源,弹性部分调度到云上(需专线支持)。腾讯云数据库产品经理 陈昊也可以直接使用数据库。挂号这个场景,跟“618”、证券放股票这些都很类似,在某个时间段有大量的访问,而TDSQL-C Serverless可以很好应对这个场景。比如说我在挂号的时候有大量的写请求或者读请求,这个时候用TDSQL-C可以做到更好的自动弹性伸缩,这是TDSQL-C Serverless很大的优点。首先如果你的访问特别大的话,CPU不会成为一个瓶颈,其次是CPU量上来以后,会根据你的CPU到达一个阈值去扩,在这个区间内也不需要去关心什么时候是高峰期,什么时候是低谷
54、期。技术场景问题探讨交流开发者的难点与解惑23腾讯云工具指南 Serverless架构的资源平衡管理提问方安全工程师云时代安全性、平台漏洞关键词腾讯云产品技术专家解答核心需求我们在工作中经常遇到一些平台漏洞问题,需要对容器环境进行审计和漏洞扫描,比如FAST-JSON反序列化漏洞、Log4j注入漏洞,还有应用程序上的程序漏洞、CVE漏洞等等,必须保证容器操作系统和依赖软件组件的更新和安全性,有没有好办法?腾讯安全云鼎实验室安全专家 张恒腾讯云的云鼎实验室负责整个云产品线的安全修复,从安全的角度来说分为几个方面,供参考:1、拉起安全情报。现在很多产品依赖于开源服务这些组件,很多大数据组件都有用到
55、云产品,我们要排查哪些产品受影响,针对性地做升级和修复。2、要有防护的产品。我们会沿着防护类的服务比如说防火墙,针对常见的攻击特征,从源头上解决再到防御的前置拦截,构建这块体系底层云平台的防护。3、针对上层,我们有安全警报,也会对外释放出来它的利用方式,包括云主机。攻击者不分云厂商,它是互联网的广泛攻击,我们会把这块的特征基于主机、网络沉淀到安全产品,帮客户做到安全的检测和防护。提问方某AIGC企业算法工程师AIGC、存储、模型训练与推理关键词腾讯云产品技术专家解答核心需求AIGC主要是训练跟推理两个阶段,对速度都有比较高的诉求。从材料看来,存储的主要加速阶段在训练,那推理有什么办法加速?腾讯
56、云存储产品负责人 崔剑训练过程相当于是从海量数据中挖掘信息,因此会有很重的数据流动和带宽吞吐;而推理过程则更多与计算有关,其性能更多取决于模型训练的成熟度以及推理服务器GPU算力的规模。交流开发者的难点与解惑24腾讯云工具指南 Serverless架构的资源平衡管理动手实验室小型电商系统的TDSQL-C数据库应用动手实践【适用人群】年龄:构建、使用和运维数据库的主流人群,18-35岁开发者为主;职业:包括但不限于开发工程师、运维工程师、架构师、测试工程师、项目经理、产品经理、数据库爱好者等;行业:电商、游戏、金融等【实验目的】1、掌握原理:掌握云原生数据库的通用原理、所需环境及资源准备2、了解
57、产品:深入学习并掌握TDSQL-C云原生数据库的技术原理和搭建步骤3、动手实践:自主亲自动手搭建TDSQL-C云原生数据库,体验 Serverless数据库运行,掌握紧急情况应对经验【实验过程】参与体验,动手完成小型电商系统的TDSQL-C数据库构建全过程【实验环境】准备合适云数据库体验的软硬件环境云服务器CVM云数据库TDSQL-CWin10/Mac10.0以上电脑硬盘:50 G以上空余空间交流开发者的难点与解惑25腾讯云工具指南 Serverless架构的资源平衡管理实践方可出真知。腾讯云为一线开发者提供“学-练-考”体系化认证体系。腾讯云开发者认证围绕云计算laaS、PaaS和SaaS产
58、品及服务展开,帮助开发者循序算、小程序云开发、大数据及人工智能等领域的技能转型。持有开发者认证还可以享受多种权益获腾讯云权威专业凭证,实现自身技术能力转型,助力事业发展。上述“通用实验过程&典型场景体验”属于TDSQL-C MySQL 数据库开发者认证“在线实验”环节,扫码右侧二维码进入官网了解更多。*模拟的业务逻辑是商品表的全表扫描,所以在模拟测试后,系统监控到并统计了监控告警当中的慢查询发生情况。*停止访问系统,再没有访问请求一段时间之后,数据库会自动进入暂停状态,这个最小周期为10分钟。*利用恢复感知器实现秒级冷启动,自动启停,业务不间断,基于云原生数据库底座,提供超高性能的弹性能力。*
59、从一小时内的CCU指标可以看到,在用户并发访问压力产生之后,TDSQL-C数据库的计算资源产生了自动扩展,用来适应来自业务端的突发性性能要求。以5秒为颗粒度,观察依据负载的资源弹性扩缩情况。*模拟多用户高并发下问题产生:先使用压测工具模拟并发,模拟10000请求,100个连接;再查看请求计数,如出现小于10000的情况,需要立即做出思考和判断。【典型场景-高并发的告警及启停】【腾讯云开发者认证及证书简介】交流开发者的难点与解惑26腾讯云工具指南 Serverless架构的资源平衡管理认证流程:扫描参与认证资格考试快问快答Q1:第三方写入的云服务需要开发者严格校验,除了文件后缀,还有哪些?主要注
60、意校验哪些呢?Techo小助手:1.身份校验,校验用户是否合法以及有权限访问。2.输入参数校验,常见有文件后缀,文件名,文件类型,文件内容等校验方式,例如限制png 后缀,文件名作正则校验,文件内容鉴定webshell,病毒木马等。以上是常见的一些校验场景,更安全的校验需要结合应用场景,确定符合预期的内容是什么,再考虑使用白名单或黑名单的方式进行非预期的校验过滤。Q2:在大活动期间,我们都会选择提前扩容导致浪费。按照serverless方案提前把CPU扩起来,是不是也会导致成本上升以及资源浪费?Techo小助手:不会的,提前扩容只是为了把可用空间提前扩起来,我们计费是按照实际使用负载去收费的。
61、Q3:通过Serverless部署容器,假如一个容器每天平均1vCPU只有900秒负载,其余时间都是空闲(但需要持续提供服务不能停止),Serverless是否有vCPU低负载计费措施?Techo小助手:Serverless部署容器,容器已经付费了,所以低负载的情况下,资源容器里面其他任务可以消耗资源。SCF自己可以提供0副本启动,也就是请求来的时候才启动实例,开始计费。Q4:好多虚拟机应用用K8s来维护不太兼容,换驱动又比较麻烦,有什么比较平滑的过渡性兼容方案?Techo小助手:富容器玩法,把环境都打包到一个大容器里面,比如用超级节点 跑一个完整的CentOS镜像,应用程序跑在里面和cvm区
62、别不大,很多公司可以通过发布系统把应用无缝地发布到容器或者虚拟机里面,同时业务无感知。Q5:请问腾讯云存储支持带宽范围是多少?Techo小助手:存储带宽分为多级,底层对象存储COS提供单桶15Gbps带宽;往上层我们也提供了COS加速器产品,支持将较热的数据预热上去,COS加速器提供200Mbps/TB的带宽;最上层是近计算端存储goosefs,其带宽取决于计算端可利用的资源,最高可达Tb级别带宽。Q6:一个虚拟机跑一个Pod是什么意思?要怎么实现它灵活扩缩的优势呢?Techo小助手:传统的k8s是通过pod peding触发ca扩容,采购节点,然后调度pod到节点;超级节点是通过pod pe
63、nd-ing直接采购虚拟机。交流开发者的难点与解惑27腾讯云工具指南 Serverless架构的资源平衡管理编后语本期工具指南为大家详细呈现超级节点TKE、Serverless数据湖存储、TDSQL-C Serverless服务、腾讯安全产品在资源管理场景中,如何利用Serverless技术,实现在企业服务及运维中的平衡最优解。关于产品更多信息,请点击官网了解。腾讯云工具指南旨在结合当前热点技术话题,以企业级开发运维场景为视角,以解决开发者具体工作痛点为目的,为广大一线开发运维人员梳理相关议题的技术专家趋势研判、腾讯云实战经验分享以及开发者具体问题洞察等。往期工具指南可扫码下载,希望对您的工作有所帮助!交流开发者的难点与解惑28腾讯云工具指南 Serverless架构的资源平衡管理第2期 云原生全栈开发与实践第3期 信息系统迁移难点与解法第1期 轻量级云开发与云应用云安全攻防矩阵容器服务TKE数据加速器 GooseFS云原生数据库 TDSQL-C