视频课程 | Kubernetes的兴起

原创: 京小云 京东云开发者社区  4月3日

京东云开发者社区在3月底于北京举行了以“Cloud Native时代的应用之路与开源创新”为主题的技术沙龙,现场多位技术大咖与开发者们面对面就Cloud Native进行了深入交流,探讨涉及容器、开源数据库等诸多技术层面的问题。

现场有超百位开发者热情参与了交流与互动,尤其对容器、微服务、Serverless等技术应用与开源创新十分关注。想必这些探讨也将为云计算、架构等相关领域的从业者们提供借鉴与新思路,十分值得广大开发者们认真学习与总结!

我们将整理后的视频及内容资料在这里分享给大家,没能到场的小伙伴可以通过这些资料来学习和了解课程内容。

沙龙内容概要

沙龙活动重点聚焦云原生时代下,容器、微服务、Serverless以及数据库等技术应用与开源创新,同时高度结合京东云在Cloud Native以及开源领域的核心技术与一系列成功实践为开发者们进行答疑解惑!

以下是沙龙第一部分分享的全部内容,希望能给各位开发者带来帮助:

Kubernetes的兴起

—— 京东云专家架构师   刘俊辉——

(建议在Wi-Fi环境下观看)

https://v.qq.com/x/page/n08568uv40x.html

01虚拟化的兴起

其实众所周知的“虚拟化”在很早的时候就已经被“发明”出来了,主要是为了解决物理服务器的种种弊端;但碍于实际情况,并没有得到广泛应用,伴随着互联网应用的大规模出现,这种情况才得以根本改变。

我们了解到,在虚拟化“称王称霸”的时代,典型的应用架构还只是单一应用的一体化架构,涉及的技术主要是Hypervisor,从物理机到虚拟机的架构迁移完成了第一次虚拟化运动的主要内容,但是人们关注的是资源利用率的提高以及硬件升级维护的便利性等层面。

随着技术的更新迭代以及企业级需求的不断变化,第二次虚拟化运动闪亮登场!人们聚焦于提高资源利用率、应用的启动速度以及减少操作系统的开销等,果断促成了基础设施从虚拟机向容器方向的平滑转移,其中最重要的就是微服务架构,这局技术升级的赢家则为Docker。

刘俊辉简单举例说明了有关微服务架构的要点,比较大型的网站设置有web服务器,但是其中占用的内存资源甚至比操作系统占用的还要多;但如果将大型网站切割成小部分,尽管做到了每个部分只占用很小有限的内存与资源,可如此让每个系统背负更多显然是不值得的,在这种情况下如果使用微服务架构就另当别论了。

如果更进一步来讲,根据企业应用的差异性,为了达成更高的隔离性以及安全性,对资源的隔离性要求明显不同。具体来说,如果您是单一租户或者单一应用的话,刘俊辉强调,仅仅线程的隔离或者基于进程的隔离也就足够了;但如果是多租户或者对安全性要求较高,就需要花额外的资源进行更多的隔离,**所以确定在微服务的场景下,容器被认为是使用较为恰当的虚拟化平台。

如果简要总结下容器的特征,其具备的独立封装性,意味着自身就包含了完整的依赖关系,就算变换位置也不会带来功能性的影响,部署的随心所欲是吸引大众的首要因素。

02

Kubernetes的兴起

关注应用,而不是基础设施

此外需要着重明确的一点,微服务架构可以被认为是小的、独立的积木搭建而来,但并不是一个简单的堆叠,这主要取决于服务架构的动态性以及相互关联的关系,所以基于微服务应用,需要做到除了创建大量服务之外,**很重要的一点则是对微服务进行全面有效的管理,也就是编排(orchestration)。

据了解,目前这种管理会涉及到全生命周期的应用,例如创建时间、删除时间等;另外还有可靠性管理以及可用性管理,例如服务出现问题是否可以做到自动恢复、通过怎样的机制保证其可用性等。

除此之外就是策略管理,即那些管理可以无条件访问哪些服务,这是对安全性的基本保障;最后一方面则是性能管理,涉及到资源的种类以及如何被提供等细节。

“关于编排的最后一点就是弹性,可以伴随负载进行扩展以及收缩,这企业应用十分关心的问题之一。作为应用开发人员,如果过度关注这方面以及运维工作,很大程度上就无法集中注意力在应用研发的其他领域,这也是微服务架构甚至是容器着力改变的现实之一。”他补充道。

从微服务到容器再过渡到具体的 Kubernetes,刘俊辉对开发者们表示,之所以如此风靡,主要还是解决了两个十分关键的问题**:首先将用户对基础设施的关心与应用的构建完全剥离开,Kubernetes完全可以承担对基础设施的管理;此外整个应用过程的动态性很好地被Kubernetes掌控以及概括,为用户提供了最终状态的保证。

诚如大家所知,容器以动态、可靠以及弹性著称,具体来说 Kubernetes 又是如何通过分离平台和应用来显示以上这些优势的?**关于此类问题,刘俊辉认为:“完成这样的部署,主要归功于提供了开放的标准接口与基础设施对接。据了解,目前比较流行的开放接口CRI,也就是Container Runtime Interface。尽管目前比较标准的Kubernetes都使用Docker Runtime,但可以把它换成任何的Runtime,完全没问题;此外如今在Kubernetes的生态圈中网络插件的资源十分丰富,选择较多。”

03云原生平台的未来

从演讲中我们得知,目前来看云原生平台发展的趋势可以被概括为几个方面,分别是全托管的Kubernetes服务以及更多的Kubernetes开放的接口;还有面向特定领域的云原生平台等。

类比一下,我们知道如今的高开发级语言可不止是JAVA以及Python,为什么会有这么多语言呢?主要还是因为不同的语言在特定的场景下会显示出特定的优势。

针对特定领域的应用平台,不同的应用领域需要专门的能力,例如IoT和边缘计算,本身就与大规模的网站应用、互联网应用是完全不同的;上个月发布的K3s平台,主要应用于跟踪Kubernetes并对其进行一些精简,如果将其应用在边缘计算等资源受限的场景中就会比较适合。

“关于Kubernetes服务,其实京东云所做的实践被叫做JCS Kubernetes,并且已经通过CNCF的一致性认证,这表示在其他已经通过一致性认证的Kubernetes平台所部属的业务,可以百分百部署在京东云Kubernetes集群服务商,无须关心平台运维,只要细心把控应用即可。”他补充道。除了上述提及的插件系列之外,关于计算、网络以及存储的基础设施服务部分,还有一些其他的通用应用服务在列,例如数据库服务;基于身份、基于租户认证以及访问权限的管理;涉及监控、告警以及跨云部署等方面,其中高效完成业务在不同平台之间的迁移工作也十分关键。

以上为沙龙第一部分的内容,明天我们会继续在推送中为大家送上沙龙相关“干货”!Enjoy :)

点击“阅读原文”获得完整PPT

·END·

阅读原文

视频课程 | Kubernetes的兴起的更多相关文章

  1. DDD建模案例----“视频课程”场景

    接触领域驱动设计DDD有一年多的时间了,中间看过不少书,参与过一些讨论(ENode QQ群).目前对DDD的认知还停留在理论阶段,所以对领域建模非常感兴趣,这里说的建模是指以DDD的思想为指导再加上D ...

  2. Asp.NET Core2.0 项目实战入门视频课程_完整版

    END OR START? 看到这个标题,你开不开心,激不激动呢? 没错,.net core的入门课程已经完毕了.52ABP.School项目从11月19日,第一章视频的试录制,到今天完整版出炉,离不 ...

  3. 【学习记录】第一章 数据库设计-《SQL Server数据库设计和开发基础篇视频课程》

    一.课程笔记 1.1  软件开发周期 (1)需求分析阶段 分析客户的业务和数据处理需求. (2)概要设计阶段 设计数据库的E-R模型图,确认需求信息的正确和完整. /* E-R图:实体-关系图(Ent ...

  4. 《Python从菜鸟到高手》已经出版,开始连载了,购买送视频课程

    好消息,<Python从菜鸟到高手>已经出版!!!   JetBrains官方推荐图书!JetBrains官大中华区市场部经理赵磊作序!送2400分钟同步视频课程!500个案例,400道P ...

  5. Spring Boot 实战与原理分析视频课程

    Spring Boot 实战与原理分析视频课程 链接:https://pan.baidu.com/share/init?surl=PeykcoeqZtd1d9lN9V_F-A 提取码: 关注公众号[G ...

  6. C++视频课程

    一.视频课程 课程名称:C++学习教程 程序设计 C++基础教程 授课人:郭宏志 课程链接:http://study.163.com/course/courseMain.htm?courseId=63 ...

  7. IT视频课程集

    马哥Linux培训视频课程:http://pan.baidu.com/s/1pJwk7dp Oracle.大数据系列课程:http://pan.baidu.com/s/1bnng3yZ 天善智能BI培 ...

  8. IT视频课程集(包含各类Oracle、DB2、Linux、Mysql、Nosql、Hadoop、BI、云计算、编程开发、网络、大数据、虚拟化

    马哥Linux培训视频课程:http://pan.baidu.com/s/1pJwk7dp Oracle.大数据系列课程:http://pan.baidu.com/s/1bnng3yZ 天善智能BI培 ...

  9. 零基础快速掌握Python系统管理视频课程【猎豹网校】

    点击了解更多Python课程>>> 零基础快速掌握Python系统管理视频课程[猎豹网校] 课程目录 01.第01章 Python简介.mp4 02.第02章 IPython基础.m ...

随机推荐

  1. 使用conda创建虚拟环境

    conda创建python虚拟环境 前言 conda常用的命令: conda list 查看安装了哪些包. conda env list 或 conda info -e 查看当前存在哪些虚拟环境 co ...

  2. java 如何爬取百度百科词条内容(java如何使用webmagic爬取百度词条)

    这是老师所布置的作业 说一下我这里的爬去并非能把百度词条上的内容一字不漏的取下来(而是它分享链接的一个主要内容概括...)(他的主要内容我爬不到 也不想去研究大家有好办法可以call me) 例如 互 ...

  3. 载域和运行域的理解(ARM程序是怎么运行的)

    对ARM加载域和运行域的理解 一般而言,一个程序包括只读的代码段和可读写的数据段.在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly):可读写的全局变量和静态变量被称作RW段( ...

  4. NASA航天技术演示实验集

    为了支持太空探索NASA开起了一系列先进太空技术演示实验. 具体的实验实验地址在:https://www.nasa.gov/mission_pages/tdm/main/overview.html 通 ...

  5. Linux 文件夹和文件大小排序

    Linux 文件夹和文件大小排序 文件夹排序 du -k | sort -rn 文件排序 ls -lS -r, –reverse 依相反次序排列 -R, –recursive 同时列出所有子目录层 - ...

  6. jquery快速常用技能

    jQuery入口函数与js入口函数 (window.onload = function(){})的对比: 1.JavaScript的入口函数要等到页面中所有资源(包括图片.文件)加载完成才开始执行. ...

  7. 145-PHP 使用<<<和HTML混编(一)

    <?php $html=<<<TEMP1 <title>PHP输出HTML代码</title> <body> <a href=#> ...

  8. c++ 字符串转数字或数字转字符串

    在C++中字符串转换为数字,或数字转换为字符串,用到如下函数: _itoa atoi.atof.itoa.itow _itoa_s 1.整形转换为字符串: wchar_t * _itot(int _V ...

  9. js 获取时间对象

    1.当前系统时间   var date=new Date(); 2.字符串转时间对象  var date=new Date("2018-01-01"); 3.获取年份: var y ...

  10. PHP循环语句练习题

    <?php //输出0-100所有数字 for ($i=0; $i <101 ; $i++) { echo($i . '<br />'); }; //输出水仙花数 for ($ ...