视频课程 | Kubernetes的兴起
视频课程 | 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的兴起的更多相关文章
- DDD建模案例----“视频课程”场景
接触领域驱动设计DDD有一年多的时间了,中间看过不少书,参与过一些讨论(ENode QQ群).目前对DDD的认知还停留在理论阶段,所以对领域建模非常感兴趣,这里说的建模是指以DDD的思想为指导再加上D ...
- Asp.NET Core2.0 项目实战入门视频课程_完整版
END OR START? 看到这个标题,你开不开心,激不激动呢? 没错,.net core的入门课程已经完毕了.52ABP.School项目从11月19日,第一章视频的试录制,到今天完整版出炉,离不 ...
- 【学习记录】第一章 数据库设计-《SQL Server数据库设计和开发基础篇视频课程》
一.课程笔记 1.1 软件开发周期 (1)需求分析阶段 分析客户的业务和数据处理需求. (2)概要设计阶段 设计数据库的E-R模型图,确认需求信息的正确和完整. /* E-R图:实体-关系图(Ent ...
- 《Python从菜鸟到高手》已经出版,开始连载了,购买送视频课程
好消息,<Python从菜鸟到高手>已经出版!!! JetBrains官方推荐图书!JetBrains官大中华区市场部经理赵磊作序!送2400分钟同步视频课程!500个案例,400道P ...
- Spring Boot 实战与原理分析视频课程
Spring Boot 实战与原理分析视频课程 链接:https://pan.baidu.com/share/init?surl=PeykcoeqZtd1d9lN9V_F-A 提取码: 关注公众号[G ...
- C++视频课程
一.视频课程 课程名称:C++学习教程 程序设计 C++基础教程 授课人:郭宏志 课程链接:http://study.163.com/course/courseMain.htm?courseId=63 ...
- IT视频课程集
马哥Linux培训视频课程:http://pan.baidu.com/s/1pJwk7dp Oracle.大数据系列课程:http://pan.baidu.com/s/1bnng3yZ 天善智能BI培 ...
- IT视频课程集(包含各类Oracle、DB2、Linux、Mysql、Nosql、Hadoop、BI、云计算、编程开发、网络、大数据、虚拟化
马哥Linux培训视频课程:http://pan.baidu.com/s/1pJwk7dp Oracle.大数据系列课程:http://pan.baidu.com/s/1bnng3yZ 天善智能BI培 ...
- 零基础快速掌握Python系统管理视频课程【猎豹网校】
点击了解更多Python课程>>> 零基础快速掌握Python系统管理视频课程[猎豹网校] 课程目录 01.第01章 Python简介.mp4 02.第02章 IPython基础.m ...
随机推荐
- 003.Oracle数据库 , 查询日期格式格式化
/*日期格式转换*/ SELECT TO_CHAR( OCCUR_DATE, 'yyyy/mm/dd hh24:mi:ss' ) FROM LM_FAULT WHERE ( ( OCCUR_DATE ...
- NIO 聊天室代码实现
服务器端 package com.ronnie.nio.groupChat; import java.io.IOException; import java.net.InetSocketAddress ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):带有字体图标的导航栏
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- HDU - 3729 I'm Telling the Truth(二分匹配)
题意:有n个人,每个人给出自己的名次区间,问最多有多少个人没撒谎,如果有多解,输出字典序最大的解. 分析: 1.因为字典序最大,所以从后往前分析. 2.假设后面的人没说谎,并将此作为已知条件,然后从后 ...
- 046-unset对静态变量无法销毁
<?php function digui() { static $count = 0; echo $count; $count++; unset($count); } digui(); digu ...
- 104-PHP定义并实例化类
<?php class ren{ //定义人类 } class mao{ //定义猫类 } echo '实例化一个人类:'; var_dump(new ren()); //实例化人类 echo ...
- 【转】ASP.NET Core MVC/WebAPi 模型绑定探索
前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...
- Vue.js(23)之 keepAlive和activated
阅读: vue中前进刷新.后退缓存用户浏览数据和浏览位置的实践 keep-alive 组件级缓存 keep-alive <keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而 ...
- c++ opencv 数学函数示例
// ConsoleApplication11.cpp : Defines the entry point for the console application. // #include " ...
- redis性能测试方法
redis本身设计为单线程服务器,性能本身并不随着多核而提高,但是会随着cpu本身而改变,AMD的可能只有Intel一半的性能,Intel是最好的选择. 性能会随着连接数的增多而下降,30000大概只 ...