云服务器成本控制:云原生技术和最佳实践随着云计算的普及,越来越多的企业转向云服务器来托管其应用程序和数据。云服务器成本控制对于确保云服务的经济高效至关重要。本文将探讨云原生技术和最佳实践,以帮助企业最大程度地降低云服务器成本。本地服务器与云服务器成本对比为了理解云服务器成本控制的重要性,我们首先需要了解本地服务器和云服务器之间的成本差异。本地服务器成本硬件成本:本地服务器需要购买物理硬件,包括服务器、存储和网络设备。维护成本:本地服务器需要持续维护,包括软件补丁、硬件升级和基础设施管理。能源成本:本地服务器需要大量电力,这会产生额外的运营成本。空间成本:本地服务器需要专用的机房或数据中心空间,这会增加租金或租赁费用。云服务器成本按需付费:云服务器按使用付费,这意味着企业仅为他们使用的资源付费,从而消除了前期硬件成本。
可扩展性:云服务器可以根据需要快速轻松地扩展或缩小,从而消除了过量配置或容量不足。维护外包:云服务提供商负责维护基础设施,包括软件更新和硬件维护,这可以节省企业的时间和资源。通常情况下,云服务器的成本低于本地服务器,特别是对于波动性或不可预测的工作负载。如果没有适当的成本控制措施,云服务器成本可能会迅速增加。云原生技术降低成本云原生技术是专门设计用于在云环境中运行的应用程序和服务。这些技术可以帮助企业显著降低云服务器成本。容器化容器化将应用程序与底层基础设施隔离,这使企业可以高效地管理资源。容器可以轻松地扩展和移动,从而优化资源利用并提高成本效率。无服务器计算无服务器计算允许企业运行代码而无需管理服务器或基础设施。这消除了维护和运营成本,仅在代码运行时收费。自动化自动化可以简化云管理任务,例如资源调配、监控和故障排除。通过减少管理开销,自动化可以降低人工成本并提高效率。监控和警报实时监控和警报系统可以帮助企业及早发现成本异常情况并采取纠正措施。通过主动监控资源使用情况,企业可以防止意外开支并优化成本。最佳实践除了云原生技术之外,企业还可以采用以下最佳实践来控制云服务器成本:正确选型选择适合工作负载需求的实例类型和大小至关重要。避免过量配置或容量不足,以优化资源利用。调整大小定期调整服务器大小以匹配当前需求可以节省大量成本。在低峰时段缩小服务器规模,在高峰时段扩大规模。预留实例对于长期和可预测的工作负载,预留实例可以提供显著的折扣。预留实例预先支付一定数量的时间,可以比按需实例节省高达 75% 的成本。停止未使用的实例在不需要时停止未使用的实例可以消除不必要的成本。云服务提供商通常提供自动停止和启动机制,以简化此过程。利用折扣和促销云服务提供商经常提供折扣和促销活动。利用这些优惠可以进一步降低成本。供应商谈判与多个云服务提供商协商以获取最优惠的价格和条款。不要害怕谈判,特别是对于大型合同。结论通过采用云原生技术和最佳实践,企业可以有效地控制云服务器成本。通过理解云原生技术的优势、实施自动化和监控措施以及遵循最佳实践,企业可以优化资源利用,降低运营支出,并最大限度地提高云服务的价值。
使用serverless架构与传统服务器架构相比成本会降低吗?
网页里的电脑博物馆已成功实现服务器费用降至零的经济奇迹!网站架构在2022年12月底进行了重大调整,主站采用香港阿里云对象存储,每月费用不超过2元,这一成本远低于用于模拟CFido/瀛海威/IRATA等服务的轻量应用服务器,后者价格高达24元,是主站费用的10倍之多。
为了进一步降低成本,千禧年的中文Linux部分被优化至在腾讯云轻量应用服务器上运行,利用5个QEMU虚拟机,每月支出仍超过20元,支出占比网站总花费的约一半。
另外,每年2TB左右的CDN费用也是重要的支出项。
面对高昂的迁移成本和不断变动的云服务费用,网页里的电脑博物馆在2022年底停机一次后,终于决定彻底拥抱云原生架构。
在新的架构中,两台轻量应用服务器被云函数替代,实现了网站运营过程中的服务器“归零”。
由于Linux镜像存储在NAS中,NAS存储费用产生,而云函数费用仅为之前轻量应用服务器的1/10。
这一转变使得网站在技术上更加高效,成本大幅降低。
回顾过去,网页里的电脑博物馆在《网页里的电脑博物馆——为中文社区重建具有历史价值的数字体验》一文中提出,尽可能使用低成本设计,如静态网页提供内容、使用云上对象存储技术,以极低成本提供较大的存储空间、网络流量和传输带宽。
通过云函数的引入,无服务器架构在执行动态脚本能力上得到增强,同时,网站运营成本得以有效控制,维持在每年低于100人民币的水平。
目前,网页里的电脑博物馆通过完全云原生的设计,实现了无广告、纯公益的运营模式,年成本维持在200人民币之内。
这一模式不仅降低了运营成本,还确保了网站的稳定性和可靠性,为中文社区提供了重建历史价值数字体验的平台。
未来,网页里的电脑博物馆将继续探索和实践低成本、高效率的运营策略,为用户带来更加丰富、优质的内容和服务。
打造云上应用的最佳实践:云原生架构的模式实践指南
在云原生架构中,设计模式的应用对于提升解决方案的灵活性、效率和可扩展性至关重要。
本文将深入探讨云原生架构中常见的设计模式,包括服务化架构模式、Service Mesh 化架构模式、Serverless 架构模式、计算与存储分离模式、分布式事务模式、可观测架构模式、事件驱动架构模式、网关架构模式以及混沌工程模式,以助大家提升设计能力。
一、服务化架构模式
服务化架构的核心在于通过规约定义服务接口,实现服务间的高效通信。
实现服务规约的技术主要有三种:服务接口定义、IDL(Interface Definition Language)、OpenAPI。
服务分组有助于满足不同地理空间和服务等级需求,通过版本管理确保服务接口的兼容性,添加服务元信息便于查找,以及实现服务注册与发现机制。
二、Service Mesh 化架构模式
Service Mesh 引入网络代理层,负责处理服务间的通信,减轻应用负担,提供更好的可观测性、安全性和流量管理。
主要模式包括 Sidecar 模式、服务注册和发现模式、中心化 Broker 模式。
其中,Sidecar 模式下,每个服务旁部署 Envoy 代理处理通信,服务注册和发现模式则简化微服务间的交互,中心化 Broker 模式通过引入 Broker 协调通信,简化服务间交互并提高系统可维护性。
三、Serverless 架构模式
Serverless 架构无需开发者关心服务器运维,基于应用实际需求动态分配资源,提供高效、灵活和经济的部署方式。
通过按需付费、自动弹性伸缩和简化运维,降低成本、提高效率。
四、计算存储分离模式
在分布式系统中,计算与存储分离增强系统可伸缩性、可用性和容错性。
无状态应用简化设计和部署,有状态应用则需在云平台管理下优化状态管理。
五、分布式事务模式
采用微服务架构时,分布式事务模式确保数据一致性。
主要模式包括两阶段提交、BASE(基本可用、软状态、最终一致性)、TCC(尝试、确认、取消)、Saga(补偿性事务)、和 AT(原子事务)模式。
选择模式需根据业务需求、系统特性和技术栈权衡。
六、可观测架构模式
可观测性提供深入系统运行状态的能力,通过日志、度量、追踪和事件流订阅实现。
日志记录系统运行状态,度量量化性能和业务状态,追踪串联请求处理过程,事件流订阅实时反馈系统状态。
七、事件驱动架构模式
事件驱动架构通过事件进行通信,实现松耦合和异步化能力。
事件生成、捕获、通信、监听处理和持久化为核心概念,数据变更捕获、读写分离是重要应用场景。
云厂商提供的事件驱动产品简化了使用和维护。
八、网关架构模式
网关作为统一接入层,处理南北流向网络请求,提供高效、安全转发功能,具备高可靠、高并发、低延迟等特性。
负载均衡功能和多种类型网关划分有助于系统优化。
九、混沌工程模式
混沌工程通过主动引入故障验证系统弹性,提高系统在异常情况下的响应和恢复能力。
实施步骤包括注入故障、观察系统响应、验证恢复能力。
价值在于更真实地评估系统稳定性和培养团队应急响应能力。
十、声明式设计模式
声明式设计模式关注目标状态而非实现步骤,简化编程方法。
优势包括提高效率、简洁性,实际应用如 Kubernetes 和 IaC 领域。
面临挑战包括复杂性管理、依赖性问题和工具链集成。
综上所述,云原生架构中设计模式的应用为构建高效、灵活、可扩展的系统提供了强大的工具和方法论。
通过深入理解并灵活运用这些模式,开发者能够更有效地应对云环境下的挑战,构建出满足业务需求的现代云应用。
解析云原生 2.0 架构设计的 8 大关键趋势
云原生2.0是企业智能升级新阶段,企业的云化从“ON Cloud”走向“IN Cloud”,当一切应用都生于云,长于云,云架构的迭代也会进入一个新的阶段。
围绕云原生2.0,华为云首席架构师顾炯炯提出了8个关键模式: 分布式云,混合调度,应用驱动基础设施,存算分离与数据治理自动化,可信、平民化DevOps,基于软总线的异构集成,多模态可迭代AI模型,全方位立体式云安全。
分布式云
随着云化和数字化渗透到制造类、工业互联网类场景,5G技术在to B领域应用的快速成熟,以及物联网 、AI技术的成熟,现在云的服务对象不仅是企业的后台IT支撑系统,它延伸到了前端的“现场”,类似于工业场景里的近场计算。
如果还是将所有的数字化应用系统都放在集中的数据中心,它的时延无法满足实时生产系统的要求。
另外,有一些行业的敏感数据不能从现场或者数据产生地直接简单的上传到云端,它存在数据安全、隐私保密的问题。
再比如医疗里的基因大数据、视频监控等场景,如果所有数据都上传到云端,带宽的成本非常高昂。
所以,我们必须要引入云边端协同的分布式概念,构建分布式云的架构。
这个架构可以和核心侧架构配合,覆盖核心区域、热点区域、本地机房、业务现场等不同接入时延敏感度,数据隐私合规要求及数据上云带宽成本的应用上云场景。
举个例子,通过这样的方式,可以把云端的很多算力和计算逻辑,甚至是训练好的AI模型推送到更加靠近用户数据产生地的位置上,进行就近的计算,将海量的数据做一定的收敛、分析、脱敏等,再发送到云端进行闭环的处理和控制反馈。
混合调度
在很多算法专家的努力下,华为云通过瑶光调度平台大大提高了资源的分配效率,达到甚至超过了80~90%的程度,已经接近于业界的领先水平。
但是资源的实际利用率仍然处在一个比较低的水平,当然业界平均也不是特别理想,领先者差不多20%左右。
为了解决这样的问题,华为云引入混合调动、柔性计算的能力,将在线和离线的不同优先级的业务,进行QoS感知的智能调用,实现资源利用率最大化。
柔性计算不仅仅具备弹性的特征,保证了横向的资源扩展,而且它也能实现纵向资源规格的可大可小。
目前,消费者云已经在内部验证了柔性计算的能力,可以在不改变上层业务的前提下提高利用率,实现性能的倍增。
关于柔性计算的更多内容参考 华为云首席架构师顾炯炯:敢为人先,探索架构创新之路如何走。
应用驱动的基础设施
如今,软硬件的垂直整合,特别是靠近操作系统底层的硬件和云服务基础设施层的服务软件之间的纵向整合能力,成为新的趋势,它把基础设施服务底层的硬件和相应的服务封装层打包在一起。
云服务厂商可以设计研发定制芯片,比如存储和网络的硬件卸载的芯片、匹配深度学习逻辑处理框架的芯片等等。
如果有能力构建这样的软硬件垂直整合的能力,就能拥有相比其他云服务商更优的价格优势,也得以呈现自身独特的硬件、芯片优势。
有了应用驱动的基础设施之后,根据应用的性能SLA需求,来定义是使用与软件完全解耦的通用硬件资源,还是匹配应用场景特殊诉求的软硬件深度协同的卸载卡或异构计算资源。
这也能发挥华为软硬件兼长的优势,我们在硬件领域有不少核心创新:一个是 SDI, 叫软件驱动的基础设施,也就是把分布式存储\分布式网络,还有Hypervisor的一些系统能力从服务器卸载到PCI卡上,也即SDI/擎天卸载卡。
二是鲲鹏硬件支撑云存储和数据湖的处理, 鲲鹏单核处理能力虽弱于X86,但核密度则达到X86 CPU的2倍,因此在对IO及内存带宽作为其性能瓶颈的大数据及分布式存储场景,是比X86更好的选择。
同时,我们也在用自研的升腾NPU取代GPU构建AI平台, 它在深度学习的训练推理中体现出更高的能效比。
存算分离和数据治理的自动化
未来企业的所有的数据孤岛都将汇聚到云端的数据湖,进行统一生命周期的治理和管理,所以必须要解决数据计算分析的资源需求。
数据湖里有各种各样的结构化、半结构化、非结构化的数据,但这些数据的分析计算和底层的存储容量之间的需求,并不是线性匹配的关系。
比如对于深度学习的场景,数据量需要不断的计算迭代,它需要更多的计算能力,相对较少的存储需求。
因此在不同的业务场景下,数据分析计算和存储的要求是不一样的,最终一定要走向存算分离。
在存算分离领域里面,华为云已经积累优势,从最早的去中心化的分布式存储引擎FusionStorage开始,七年磨一剑,我们从内部验证到向外部的推广,从块存储延伸到对象存储、文件存储、分布式的集群数据库,把原先在开源架构里五花八门的底层存储技术引擎架构实现了统一。
经过实际的测试,在业界同样支持存算分离数据湖架构的云场景中,华为云体现了领先30-60%以上性能优势。
再就是数据治理自动化。
现在的数据治理的还是人力密集型工作,整个过程非常低效,很难满足很多行业的要求。
所以在这个架构模式里面,除了存算分离的数据库,还要构建数据治理自动化。
通过引入AI的技术,将数据的获取、清洗以及最终数据知识的提取,主题库的建立、数据目录的发布,都实现完全的自动化。
用户只需要指定入湖的数据源和所属业务主题域,系统自动化创建入湖任务,底层资源根据入湖数据量自动扩缩容,智能完成入湖数据的安全等级、分级分类、隐私等级等数据标签的自动识别打标。
这个能力对企业数据资产的快速沉淀能力的构建是至关重要的。
可信、平民化DevOps
通过将一系列安全可信措施嵌入到敏捷开发运维模式, 构建所谓的DevSecOps流水线,实现敏捷快速迭代与严格质量管控兼顾;并通过低代码/无代码实现更多行业应用资产的沉淀, 将行业应用的开发效率再上一个新台阶。
Devops实现了应用的敏捷开发,但在面向政企时,还需要满足应用质量和安全可信的要求。
因此在遵循DevOps的同时,将安全能力集成到其中,升级成为DevSecOps。
使用安全左移、默认安全、运行时安全、安全服务自动化/自助化、基础设施即代码(IaC)等技术, 实现管理与协同、设计与开发、CI/CD、应用管理、运维、安全可信等各个环节的一体化趋势。
此外,由于传统政企开发投入有限,需要通过低码化无码化,来实现对应用进行快速构建及改造。
华为云低代码平台AppCube可支持多种页面类型和丰富的组件能力,基于它的服务能力编排和业务流程无代码定制,可实现灵活流程触发方式、多种权限配置方式、自定义业务编排等。
基于软件总线的异构集成
即帮助企业构建可平滑演进的IT架构, 实现老旧应用与新建云原生应用,线上与线下应用的平滑融合集成。
云原生下,企业很多应用都要进行微服务解耦,遵从微服务的治理架构,进行水平扩展的架构的设计,甚至把原来的单体架构逐步进行拆解。
但这个过程不是一蹴而就的,尤其是那些包袱比较重的传统行业,他们还面临很多现实的挑战。
所以我们要在企业传统IT架构和云原生架构之间搭建无缝的桥梁,在确保企业业务连续性最大化的前提下,实现平滑的切换和演进。
以Roma Connect为例,它可以通过软总线的形式,把云原生和非云原生的传统世界无缝的连接起来,支持异构的应用和数据库源的对接,也可以对接到云上开发平台、数据湖,实现无缝互通。
在架构的平滑演进中,首先需要将传统非云原生应用封装为REST接口与云原生应用对接,通过统一接口服务层APIC进行开放,业务云原生应用通过标准接口即可获取老系统信息。
同样的机制可以将线上线下,及部署在多云环境上企业IT系统的无缝互通。
其次传统Oracle/Sybase等传统数据库及中间件与设备协议接入上云:云上云原生应用通过云上标准API调用、数据库访问、消息订阅等方式即可获取传统数据。
最后,通过全生命周期的API管理能力,包含从设计、发布、上架、治理的全过程,帮助企业构建整个跨地域,跨组织、跨部门的应用网络,并沉淀行业应用资产。
多模态可迭代的AI模型
AI在行业落地面临的问题是能够获取到的训练数据是非常有限的,单纯的依赖数据驱动的深度学习训练,使得行业AI模型是非常难以泛化、通用化。
预训练大模型是解决AI应用开发定制化和碎片化的重要方法。
通过一个AI大模型实现在众多场景通用、泛化和规模化复制,减少对数据标注的依赖,赋能AI开发由作坊式转变为工业化开发,比如华为云之前推出的盘古大模型。
另外也要引入知识计算的能力, 类似于把知识图谱这样的能力和基于感知计算的数据驱动的AI模型互补结合起来。
也就是说把知识模型和数据模型,在数据样本相对缺少的情况下结合在一起,更好服务于行业AI的落地。
帮助企业打造自己的知识计算平台,整合分散在不同系统、多种形态的企业数据,形成带有建议性的知识体系。
全方位的立体式云安全
1.0阶段的云安全服务更多的是孤立的安全能力:虚拟化安全,hyporvisor防逃逸能力,云防火墙能力其实都是割裂的,并没有跟所有的云服务形成互锁。
全方位的立体式运营安全通过打通离散的云安全服务能力,将其与其他云服务及客户应用形式互锁, 构建安全Build-in的云原生应用,以及引入可信智能计算,解决跨行业数据隐私保护与流通碰撞、价值挖掘之间的矛盾。
首先通过可信智能计算提供四个核心能力,进行安全可信的数据计算。包括:
1、跨组织、跨行业的多方数据融合分析和多方横向与纵向联邦学习建模;
2、支持对接主流数据源和深度学习框架;
3、支持安全多方计算(例如同态加密,差分隐私等),并支持用户自定义隐私策略;
4、基于区块链的数据计算轨迹的可追溯可审计。
此外,为了全方位安全,还需要将全栈云(及其子集)下沉部署(连线/非连线),彻底解决敏感行业上云安全顾虑,以及将全栈云服务、企业新开发云原生应用、aPaaS/SaaS等与全栈云安全能力互锁,为用户构建体系化的云安全平台。
本文分享自华为云社区,作者:技术火炬手。