软件定义汽车时代已来,云原生成车企转型重要驱动力
在如今的数字经济浪潮下,汽车产业正面临着前所未有的转型大变局,汽车产品的属性正在从传统的机电一体化产品升级成为软硬件深度融合的智能终端,“软件定义汽车”已成业界共识。
从用户需求角度来看,随着车联网的不断发展,用户对于和软件相关的性能体验的需求越来越强烈,“更聪明的、更高科技的车”正在取代“更好操控的车”,而这对汽车软件的数据治理、存储能力、算力、迭代速度就产生了更高的要求,软件对于用户需求体验起到了愈发重要的作用。
从业务应用角度来看,车联网业务应用日渐多元化,车企的数据治理也日趋复杂,如何快速打破信息孤岛、统一系统架构、加速业务创新成为了车企亟待解决的问题。
从技术变革角度来看,云原生、人工智能等科技的飞速发展,大大促进了智能网联汽车的革新。软件的升级已经成为了全行业所必须拥抱的变化,汽车系统逐渐从封闭的系统发展转为开放的系统,以容器、微服务为代表的云原生技术也为车企数字化转型弯道“超车”提供了实现路径。
为了更好地提升用户体验、抢占市场优势,越来越多的车企也开始步入云原生化的进程,云原生作为一种更贴近应用的IT架构,能够在业务创新、用户体验提升等诸多方面帮助车企获得转型优势,如何更大程度地享受云原生技术的红利成为了车企的新焦点。那么,有没有一种标准的车企云原生转型范本呢?
本篇文章就将从车企所遇到的云原生转型实际问题入手,和您聊聊车企数字化转型那些事儿。
汽车行业面临的敏态IT挑战
新的市场竞争格局下,主机厂纷纷增加新业务形态,面对市场和客户扩展业务。汽车厂家也有自己的客户APP,基本上通过外包人员进行应用开发,应用架构多采用单体架构或分层架构。
车企面临着更为严峻的敏态IT挑战:
• 资源弹性需求应对能力不足:B2C业务高峰期压力大,内部计算资源无法动态调整应对。
• 跨云部署和跨云迁移: 双11或者618等临时性高并发场景,需要应用能够支持跨云部署、扩展以及迁移的能力以增强资源弹性。
• 应用迭代频率和开发速度慢:应用迭代周期最快为2月一次迭代,迭代频率过低,同时交付周期长,问题和缺陷发现和反馈慢,无法应对业务的快速变化。
• 应用架构转型云平台支撑:当前正在引入微服务等应用架构,目前缺乏对新一代应用架构的支撑PaaS云平台。
这时候,我们就需要一种全新的思维方式和解决方法来应对上述挑战,这个方法就是云原生。
云原生能为车企带来什么?
首先,从生产效率方面来看,成熟的全栈云原生平台提供的是一套开箱即用、灵活开放的工作方式,能够最大限度地帮助车企提高开发人员的生产力,提升开发、运维人员的工作效率,让企业能够将更多的时间与人力聚焦于业务创新。
其次,从IT化运营方面来看,云原生能够帮助车企抢占市场优势、实现卓越运营。未来每一个企业都将成为软件企业,车企IT的先进程度会直接影响到其汽车产品的核心竞争力,云原生能够帮助车企迅速构建起高并发、高可用、海量数据计算和存储的车联网产品和体系,同时减少80%以上的故障率,让车企有更多机会去试错,智能网联应用得以在最大化满足用户需求的基础上,实现快速开发。
此外,从资源配置方面来看,云原生转型能够帮助车企优化资源利用,节约更多的传统基础设施成本,整体资源利用率提升60%以上,并实现跨多云的统一管理、部署和迭代。
在这里我们直接以某大型车企的云原生实践为例:
2018年,在高并发访问、高吞吐量以及车辆的车联网接入需求推动下,其智能网联应用做微服务的改造和应用容器化,“智能网联开发院”和“数字化部门”联合起来对整个平台架构进行了相应的设计,在平台建设中核心痛点就是需要引入一个微服务的治理平台,以及一个业务应用的管理平台,来支撑整个智能网联平台的开发需要。
项目依托于灵雀云ACP管理平台,配合微服务治理平台,实现了业务应用的运行以及业务应用治理的工作。项目一期实现部分服务器的纳管,形成计算资源池,为业务应用提供部署资源。同时,通过微服务治理功能,实现为业务应用的不同部门或者不同开发团队,适配相应的容器化集群。
当然,平台的落地并不能只是把工具提供给了客户,让客户更好地用起来,也是一个非常大的挑战,尤其对于微服务这样比较新的概念来说。灵雀云在项目当中也为客户提供了微服务治理咨询服务,对于微服务的拆分,微服务改造,以及如何更好地使用平台的各种功能都提供了有针对性的咨询服务。
经过几年的努力,该车企的营销数字化业务的不同业务系统都逐渐迁移到这个平台上来。这么大规模的平台和业务应用,运维人员可能只需要3~5个人。
对于他们来说,能得到的收益,首先就是统一业务系统的开发架构,第二是统一了业务系统的部署架构,第三是极大地减少了复杂的业务系统运维,少量的人员就可以支持大量的业务系统的运维工作,同时,通过平台的资源自动伸缩、微服务治理能力,项目实现了自动化的业务运行、运维和业务治理。
车联网应用迁移应从哪些方面考虑?
车联网是未来交通系统的发展方向,它是将先进的信息技术、数据通讯传输技术、电子传感技术、控制技术及计算机技术等有效地集成运用于整个地面交通管理系统而建立的一种在大范围内、全方位发挥作用的,实时、准确、高效的综合交通运输管理系统。随着车联网日益受到各家车企的重视,很多车企都会将车联网应用纳入云原生转型的重点。
首先,从车联网应用架构来看,包括:车机、智能手机、地图导航、语音技术、 HUD(Head Up Display平视显示器)、OBD(On-Board DiagnosTIc车载诊断系统)、CAN(Controller Area Network控制器局域网络)、RFID(Radio Frequency IdenTIficaTIon射频识别技术)、ITS(Intelligent Transport System智能交通系统)、智能座舱、自动驾驶等等。
此外,从车联网应用上云策略来看,建议车企在车联网应用迁移时,提前制定好业务上云的策略体系,比如制定业务开发规范,结合容器、OAM、SpringCloud、ServiceMesh四种应用类型明确业务上云过程中应用分类规则、迁移策略、割接方法、运维方法等。
再者,在车联网应用迁移规划时,除了需要考虑上述核心业务应用能力之外,也要从“云端芯”一体化架构全局来进行合理规划。CNBPA最新的调研结果也表明,建设具备全栈能力的云原生平台已经成为先进企业数字化转型的最佳路径。传统的相对割裂的IT架构已经无法满足企业日益发展的创新需要,在如今的云原生时代,企业更应该从整个IT基础设施角度上,去考虑如何通过云原生促进业务创新和业务成功。
在实际执行时,建议车企可以考虑3步走的云原生转型策略,比如可以考虑先建设一个标准的、小规模但功能齐全的云原生全栈云平台,初步实现一个平台统一管理各类基础设施、构建平台的应用服务能力,快速让研发、运维、业务人员感受到云原生全栈云的便利。第二步再丰富中台业务能力,在统一的云原生平台基础上扩展更多的业务能力,扩大应用规模,提升管理水平。第三步可以继续丰富完善自身能力,优势能力持续推广,打造更完善的车联网云原生业务中台,享受云原生技术的红利。
车企如何平稳实现云原生化?
首先,在面对B2C业务流量不确定性,原有的单体业务和虚拟机部署方式无法对突发性高并发业务进行支持,需要构建一套基于应用级别的云计算平台,实现应用级的资源共享和统一调度。
其次,针对单体或SOA应用架构,在高并发业务适应性、高扩展性展现的不足,通过对现有应用架构和业务逻辑进行解耦 ,以微服务架构方式对现有架构进行重构,以容器化的方式进行应用部署,实现应用的快速交付、部署、上线。在新开发的功能以微服务架构开发,原有的SOW和单体架构架构保持不变,慢慢的把业务转移到微服务架构中。
此外,针对现有架构实现在短时间内实现2C高并发业务:建议把 双11或者618等临时性高并发场景的功能提前单独拆分出来,以微服务化方式交付,在基于PaaS云平台上进行业务承载,可能项目初期私有云资源不够时可利用云有云资源优势部署企业PaaS平台(只使用公有云资源),实现业务快速上线和高并发2B业务承接,在活动结束后把数据导入私有云库。
最后,针对多家开发商时,需要建立基于新一代业务开发、管理、交付体系 。从业务代码、开发规范、自动化构建、质量标准、测试流程、上线标准进行统一管理 。DevOps平台可实现以上能力,车厂和应用管理小组进行标准规范的制定,DevOps开发平台进行流程、规范的落地。通过DevOps标准化交付流程对应用交付质量、效率进行管理。实现在变现未来高效应用业务需求交付。
车企如何筑牢云原生安全防线?
智能网联和数字化的高速发展,给汽车行业带来了安全新挑战。一方面,车企开启数字化转型,IT基础设施全面上云,使得系统复杂度大幅增加;另一方面,智能网联的普及,让网联车辆在用车的各个环节都面临着网络安全风险。用户全生命周期的数字化,也给数据安全带来了新的威胁。与此同时,近年来我国不断强化在汽车数据安全方面的监管力度,颁布了一系列数据安全新规,使得安全合规成为汽车行业发展的必然要求。那么车企该如何应对新时代的云原生安全问题呢?
首先,随着云原生技术的不断发展,通过执行安全“左移”的DevSecOps模式,可以极大程度地保障安全性,从DevOps全流程为企业的业务系统注入安全风险免疫能力。
其次,建议优先考虑采用全栈云原生私有云平台,整个PaaS云平台环境部署在内网环境下,仅仅通过接入层(DMZ)实现互联网的接入。互联网上的请求通过接入层反向代理到内网PaaS云的节点上。如果PaaS云节点需要主动向互联网发送请求的话,就需要通过Proxy代理服务器的方式来实现。
另外,私有镜像仓库可以使用开源的企业级镜像仓库Harbor,Harbor使用自签名的SSL证书以HTTPS协议对外服务。PaaS云平台节点上的Docker进程只有配置了自签名的SSL证书,才能从Harbor的镜像仓库中拉取镜像。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。