亚马逊AWS与DevOps

2022年04月24日讲师:刘通浏览:186次

亚马逊AWS云平台占全球公有云市场份额的1/3左右,现居云计算服务的龙头企业。其优势主要体现在是世界上第一个投入云服务领域的提供商,自身有其先发优势,比如其基于自研芯片(Nitro架构)率先实现云服务器与物理设备的解耦,而不是依靠如Linux操作系统的特定模块来实现虚拟化。 另外AWS的云产品与DevOps有着紧密的关联关系。对DevOps的概念认知,亚马逊与其他的云厂商是一致的。DevOps被认为是文化、工程实践和支持服务快速交付模式以及工具的组合,可以提升应用DevOps的企业或组织以更高速率和更高质量交付应用程序和服务的能力。 通用的DevOps工程实践包括,持续集成(Continue Integration)、持续交付(Continue Delivery)、基础设施即代码(Infrastructure as Code)和监控与日志记录(Monitoring and Logging)。 以下是DevOps工程实践的概略介绍: 1、持续集成:一种软件开发实践,开发人员定期将代码的更改或新增代码合并到中央存储库中,然后执行代码的自动编译和自动化测试; 2、持续交付:针对有更改代码的软件应用,以自动化的方式完成新代码的编译、测试,并把测试通过的软件应用投入到生产环境; 3、基础设施即代码:通过脚本或代码驱动云平台资源的动态部署,尤其是针对云虚拟机、云网络和云数据库等云产品的自动化部署能力,即实现在云平台上DevOps持续交付能力; 4、监控与日志记录:通过即时监控和状态日志的形式记录应用程序或云基础设施对使用用户的直接影响和最终的用户体验。 在持续集成层面,AWS云平台可以支持云用户在其所购买的云服务器上实现持续集成的能力,也可以通过AWS的Lamda无服务器产品服务以目前比较流行的方式来帮用户构建持续集成能力。并且,AWS同样支持与Ansible和Chef这样的经典的DevOps持续集成工具的整合。 在持续交付方面,AWS云平台有一种叫CloudFormation的产品工具来实现云资源的配置管理和自动化部署。云用户可以通过JavaScript Object Notation (JSON)或Yet Another Markup Language (YAML)格式的配置文件来提交各种云资源的组合部署需求,CloudFormation可以通过解析如上配置文件来实现多种云产品的联合部署。目前可以支持自动化部署的云计算资源涵盖多个方面,其中最为典型的是云虚拟机、安全组、弹性伸缩、云网络和云数据库等云基础设施产品的自动化部署。而云用户可以通过AWS提供的自动化部署软件Elastic Beanstalk轻松实现其所属应用的自动化部署。 在监控与日志记录方面,AWS云平台提供DevOps Guru的产品,该产品会持续分析异构数据的数据流并监控在云平台上的数千个指标,以确定应用程序行为的正常界限,自动识别偏离正常活动的情况,并显示严重程度较高的问题以快速提醒云用户执行必要的操作。DevOps Guru通过利用机器学习等技术手段帮助缩短用户在使用云产品的问题解决时间,结合问题上下文信息,协助识别问题的根本原因并生成解决的见解意见。 总之,类似于AWS的云平台对DevOps提供了很好的技术支撑,而DevOps也被人们称为是一种云原生的技术,即DevOps就是一种典型的云产品。
分享 0

您已经赞过了!