2013年,Pivotal公司率先提出云原生(Cloud Native)概念。
云原生以容器化、微服务、可持续交付性,帮助企业构建和运行可弹性扩展的应用。由于云原生应用构建简便快捷,部署轻松自如,运行按需伸缩等特点,近年来受到越来越多企业的欢迎。
随着虚拟化技术的成熟和分布式框架的普及,在容器技术、可持续交付、编排系统等开源社区的推动下,以及微服务等开发理念的带动下,应用上云已经是不可逆转的趋势,云原生(Cloud Native)的概念应运而生,更是火得一塌糊涂。
在过去的一个月里,我们开启了《六周玩转云原生》系列技术公开课,主要包括容器入门,kubernetes的介绍,DevOps与持续交付 ,监控与日志,微服务架构服务的治理体系以及Serverless 架构设计与落地应用等基本要素。
在整个课程中,我们的技术专家为开发者不仅介绍了云原生具体技术概念和理论,还加入了具体应用案例分析让开发者对云原生技术有更深入认识。同时,考虑到开发者理解云原生需要技术理论与实践应用结合,他们还详细介绍了每一种技术应用和上手实践方法。
由于这一系列内容真的是我们的“心头肉”,我们特将此次的内容做了一个整理合集分享给大家。
以下,Enjoy~
第一周:容器入门,Docker、Pod初探
容器是云原生概念的重要组成部分,作为一种计算单元,容器可以以更加轻量化、更小开销的方式来运行;而作为一种应用的包装形式,容器则赋予了应用独立和便携的能力。随着Docker、Kubernetes技术的成熟,容器也成为了时下最火的开发理念。
根据Gartner的预计,2022年有75%的全球化企业将在生产中使用容器化的应用(当前约为30%)、50%的应用软件将容器化适应超融合环境(目前约为20%)。Docker和Kubernetes将从成为成为跨环境的新标准。因此,了解容器、Docker的基本概念,是玩转云原生开发的基础。
京东云与 AI 云产品研发部专家架构师刘俊辉,从容器的基本构成出发,深入浅出地勾勒出容器的基本情况,包括容器的结构、基本使用方式等。不仅如此,还将引出 Docker 这一重要概念,为开发者们拨开容器应用的迷雾。此外,刘俊辉还会着重讲解 POD、了解 POD 的构成和基本应用,帮助开发者对容器有更深入理解。
而在动手操作上,通过基于京东智联云控制台对原生容器的创建,及对容器的基本操作,使得对容器有了更清晰的了解,也明白了原生容器与Docker容器的异同,为其学习打下了不错的基础。
点击图片查看视频回放:
快来进行【动手实操练习】吧~
第二周:走近kubernetes,从概念到基础应用
尽管以敏捷和高性能而著称的容器,已经成为了许多企业的首选方案。但如何解决大量容器的管理和部署,以及对容器化应用进行编排却是一个复杂的问题。针对这些问题,Google和Red Hat在2014年提出了Kubernetes解决方案。
近几年中,Kubernetes已经成为了数不多的,使自己成为所属领域的行业标准的新技术之一,是学习容器技术中不可忽视的存在,也是开发者及运维人员中最流行的开发工具。
不过,Kubernetes本身的复杂程度非常高,用户熟悉起来非常困难。
在容器入门课程之后,第二节课程继续由刘俊辉担任讲师,主要分享Kubernetes的主要组成部分和基本应用,以及POD、Deployment、Service等主要的Kubernetes资源,Kubernetes可以处理几乎任何类型的容器负载,Kubernetes的作用可以贯穿整个应用开发的生命周期。了解Kubernetes可以将帮助你更深入地理解软件的基础设施的运作。最后,他还就京东智联云Kubernetes的集群服务进行介绍。
为了让开发者对Kubernetes有更深的理解,刘俊辉还通过动手实操环节体验Kubernetes集群服务的基础功能。
点击图片查看视频回放:
快来进行【动手实操练习】吧~
第三周:云原生下的DevOps与持续交付
众所周知,Kubernetes + Docker 是 Dev 和 Ops 融合的一个桥梁。近几年,我们看到应用在开发流程和生产运维流程中的变化。在过去,开发团队的任务是创建应用、并交付给运维团队,然后运维团队部署应用并使它运行。
但是现在,公司都意识到,让同一个团队参与应用的开发、部署和运维会更好,这意味着开发者、QA和运维团队彼此之间的合作需要贯穿整个流程,这种实践被称为DevOps(Development和Operations的组合词,是一组过程、方法与系统的统称,用于促进开发)。
在《六周玩转云原生》的第三期课程上,井亮亮老师对DevOps与持续交付的基础支持进行了全面讲解,开发者们学到了关于DevOps与持续交付的基础支持,以及京东智联云在这方面的实践与应用。
点击图片查看视频回放:
快来进行【动手实操练习】吧~
第四周:走近监控与日志,云原生基石探秘
作为云原生的基石之一,监控和日志的重要性自是不言而喻。
云原生应用具有分布与动态的特性,而所有此类应用通常都会用到容器和无服务器函数等临时技术来予以部署。
在管理这些云原生应用的时候,能够在任何给定的时间内提供端到端的可视性就显得尤为重要。与此同时,由于云原生系统具有海量的数据流和抽象的复杂性,因此我们必须建立强大的监控和日志记录,以管控各种不可预知的中断或宕机。
没有监控,就无法知晓服务的运行情况,也没有办法知道集群中有没有Down机、机器的CPU使用率和负载是否正常、网站的Traffic是否正常、服务的出错率是不是在可容忍范围内。而日志则详尽记录着系统运行情况,每一次Service的调用,每一次数据库的访问,都应该写进日志,特别是当系统出现问题时。
为了让开发者学习到更多干货,高云川老师分享了云原生下的可观测性,Prometheus监控方案和EFK的日志方案,以及京东智联云在云原生监控&日志的落地实践,并与开发者们讨论在记录和监控云原生应用时各种值得借鉴和遵循的优秀实践与标准。
最后,他还邀请开发者们动手实践,深入参与并体验云原生监控体验。
点击图片查看视频回放:
快来进行【动手实操练习】吧~
第五周:微服务架构下,服务治理体系的演进历程
随着微服务已成为构建现代云应用的主导模式,“大平台、微服务”已成为一个典型技术特征。
当然,微服务架构下,服务之间的调用关系变得更加复杂,以往的开发、测试、运维模式会不可避免的要进行重构或调整,为保证服务更好的运行,就需要对这些服务进行监控和管理,这已成为令许多工程师头疼的问题。
提到微服务,当下最火热微服务治理的框架无疑就是Spring Cloud,它基于 Spring Boot 可实现快速集成,开发效率极高的特性,堪称中小型互联网公司的福音。而Service Mesh则以轻量级的网络代理的方式与应用代码部署在一起,用于保证服务与服务之间调用的可靠性,开发者更应了解其技术发展路径。
张俊峰老师讲述了服务治理理念演变史,由浅入深讲解Spring Cloud微服务架构特点、Service Mesh技术以及京东智联云在微服务方面的探索。
点击图片查看视频回放:
第六周:Serverless 架构设计与落地应用
除了以容器、微服务为代表的技术在各个层面不断升级云服务的技术能力外,Serverless架构的出现,同样带来了跨越式的变革。
2014年,亚马逊推出了Serverless最早的框架产品AWS Lambda,为云中运行的应用程序提供了一种全新的系统体系架构,在AWS发布Lambda之后,Serverless也从概念、愿景逐步走向落地,在各企业、公司应用开来,众多IaaS及Pass厂商相继入局。
对于一众互联网行业公司,尤其中小型公司而言,由于没有太多的技术人员,但设计系统时需要考虑Web应用服务器配置、数据库配置等诸多技术问题,Serverless架构的出现则能大幅降本增效。
《六周玩转云原生》的最后一讲的主题则为《Serverless 架构设计与落地应用》,张金柱老师将剖析Serverless的前世今生,从云原生的定义开始,详解Serverless 对于云原生的价值、挑战,并深入探讨了Serverless的架构设计模式与落地应用。
点击图片查看视频回放:
快来进行【动手实操练习】吧~
云原生是开发者不应错过的技术趋势
随着虚拟化技术的成熟和分布式框架的普及,在容器技术、可持续交付、微服务、编排系统等开发理念和开源社区的推动下,应用上云已是不可逆转的趋势。这既是云计算的必然趋势,也是互联网和数字化经济发展的必然结果。
我们也有理由相信,云原生技术可以帮助企业加速云边端应用一体系统,构建下一代动态的大规模无边界的云应用架构。同时,企业将云原生技术和异构计算、大数据和AI进行整合,可以帮助企业把数据资产变成核心竞争力,助力自身的数字化和智能化升级。
当然,率先入局的开发者将占据云原生技术红利,并推动这场技术变革。