楼主: 仙豆

《从Docker到Kubernetes之技术实战》来自云端的深刻领悟,理论+实践,leader老师亲授

  [复制链接]
论坛徽章:
1
Openstack徽章
日期:2015-09-25 12:11:33
发表于 2015-8-15 23:36 | 显示全部楼层
请问这门课程需不需要一些语言功底?
我看docker的源码是用go语言写的,是否需要学习该语言?如果是的话希望提供一些比较权威的资料
回复 支持 反对

使用道具 举报

论坛徽章:
5
Openstack徽章
日期:2015-10-30 12:57:23Docker徽章
日期:2016-01-21 11:55:16Hadoop研习者初级
日期:2016-01-28 14:52:02Hadoop研习者初级
日期:2016-02-01 16:30:08spark徽章
日期:2016-04-01 14:17:34
发表于 2015-8-16 08:52 | 显示全部楼层
怎么没有试听的课程呢,虽然我已经报名了,但是还是想先试听一下!!
回复 支持 反对

使用道具 举报

论坛徽章:
63
架构徽章
日期:2016-08-18 11:48:34Tomcat徽章
日期:2017-08-03 18:16:45JS课程徽章
日期:2016-11-10 15:45:52redis徽章
日期:2016-06-30 15:54:52搜索引擎徽章
日期:2016-08-18 11:36:51Docker徽章
日期:2016-01-21 11:55:16bash徽章
日期:2017-06-01 17:10:16perl徽章
日期:2015-09-25 17:35:49STATA徽章
日期:2016-08-11 11:01:36高并发架构徽章
日期:2017-07-27 17:30:17Puppet徽章
日期:2015-09-11 14:42:22抽样调查徽章
日期:2015-06-09 14:18:25
发表于 2015-8-16 20:57 | 显示全部楼层
不错。                          
回复 支持 反对

使用道具 举报

论坛徽章:
6
抽样调查徽章
日期:2015-12-10 09:56:51数据陷阱解读徽章
日期:2015-12-10 09:58:39R研习者中级
日期:2015-12-17 11:38:03大型分布式徽章
日期:2015-12-17 11:50:47Java徽章
日期:2016-03-03 15:49:26Oracle研习者初级
日期:2016-04-14 10:44:11
发表于 2015-8-19 05:16 | 显示全部楼层
這课程,很厲害的樣子啊。要不要學呢?糾結
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-21 18:19 | 显示全部楼层
SyncHandler在这里就是Kubelet实例本身,它的SyncPods方法比较长,其主要逻辑如下:
•        根据传入的全量Pod,与statusManager中当前保存的Pod集合进行对比,删除statusManager中当前已经不存在的Pod(孤儿Pod)
•        调用Kubelet的admitPods方法以过滤掉不适合本节点创建的Pod。此方法过首先滤掉状态为Failed或者Succeeded的Pod;接着过滤掉不适合本节点的Pod,比如Host Port冲突、Node Label的约束不匹配以及Node的可用资源不足等情况;最后检查磁盘使用情况,如果磁盘可用空间不足,则过滤掉所有Pod
•        对上述过滤后的Pod集合中的每一个Pod,调用podWorkers的UpdatePod方法,而此方法内部创建了一个Pod的workUpdate事件并发布到该Pod对应的一个Channel上(podWorkers.podWorkers)…一入豪门深似海,至今未见君一面…
《Kubernetes权威指南》之拜读谷歌大神的源码
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-21 18:20 | 显示全部楼层
SyncHandler在这里就是Kubelet实例本身,它的SyncPods方法比较长,其主要逻辑如下:
•        根据传入的全量Pod,与statusManager中当前保存的Pod集合进行对比,删除statusManager中当前已经不存在的Pod(孤儿Pod)
•        调用Kubelet的admitPods方法以过滤掉不适合本节点创建的Pod。此方法过首先滤掉状态为Failed或者Succeeded的Pod;接着过滤掉不适合本节点的Pod,比如Host Port冲突、Node Label的约束不匹配以及Node的可用资源不足等情况;最后检查磁盘使用情况,如果磁盘可用空间不足,则过滤掉所有Pod
•        对上述过滤后的Pod集合中的每一个Pod,调用podWorkers的UpdatePod方法,而此方法内部创建了一个Pod的workUpdate事件并发布到该Pod对应的一个Channel上(podWorkers.podWorkers)…一入豪门深似海,至今未见君一面…
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-24 11:45 | 显示全部楼层
123.JPG
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-25 10:16 | 显示全部楼层
123.JPG
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-25 10:17 | 显示全部楼层
123.JPG
回复 支持 反对

使用道具 举报

论坛徽章:
0
发表于 2015-8-25 18:04 | 显示全部楼层
上面代码中,初始时资源版本变量resourceVersion为空,于是会执行Service的全量拉取动作(watcher.List),之后会开始Watch资源的变化(watcher.Watch)并将Watch的结果(一个Channel保持了Service的变动数据)也转换为对应的ServiceUpdate事件并写入到Channel中。另外,当拉取数据的调用发生异常时,resourceVersion恢复为空,导致重新进行全量资源的拉取动作。这种自修复能力的编程设计,足以见证谷歌大神们的深厚编程功力,另外,笔者认为kube-proxy这里的ServiceConfig的设计实现思路和代码要比kubelet中的好一点,虽然两个作者都是顶尖高手。——《Kubernetes权威指南》之源码分析
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

 

GMT+8, 2019-6-25 11:53 , Processed in 0.152348 second(s), 55 queries .