add-license-1
yinwenqin 5 years ago
parent 6c76e0f47b
commit cbccfb53b2

@ -24,16 +24,18 @@ git checkout v1.14.3 # 切换到tag为v1.14.3的版本
源码拉取完成后用自己的IDE打开准备工作完毕.
## 核心组件
- [Scheduler](https://note.youdao.com/)
- [Scheduler](https://github.com/yinwenqin/kubeSourceCodeNote)
- Controller
- 待补充
-
## Tips
md文档已同步至github:
md文档已同步至github,welcome star:
https://github.com/yinwenqin/kubeSourceCodeNote
Kubernetes这一整个项目颇为庞大一般情况下如果熟悉kubernetes的应用结合应用来理解源码的设计理念会容易许多因此对其应用不熟悉的朋友不建议直接阅读源码。另外目前处于边阅读代码边输出总结的阶段如文中有误请予以指正非常感谢
在此立一个flag源码干货总结笔记至少做到周不断更

@ -1,4 +1,4 @@
# 调度器启动
# 调度器入口
## 前言
本篇介绍scheduler的初始化相关逻辑
@ -180,10 +180,9 @@ Broadcaster record.EventBroadcaster
进入`sched.Run()`:
![image](https://github.com/yinwenqin/kubeSourceCodeNote/blob/master/scheduler/image/p1/scheRun.jpg)
`wait.Until`这个调用的意思是直到收到stop信号,在此之前循环运行`sched.scheduleOne`,终于找到启动函数最内部的主体啦:
`wait.Until`这个调用的逻辑是直到收到stop信号才终止,在此之前循环运行`sched.scheduleOne`,终于找到启动函数最内部的主体啦:
![image](https://github.com/yinwenqin/kubeSourceCodeNote/blob/master/scheduler/image/p1/scheduleOne.jpg)
`sched.scheduleOne`这个函数有代码点长,整体的功能可以概括为:获取需调度的pod、寻找匹配host、发起绑定host请求、绑定检查等一系列操作.
#### 本篇入口篇到这里就先告一段落,下一篇开始阅读学习调度过程的逻辑!

@ -1,4 +1,10 @@
# 调度器设计
# 调度器总体设计
## 调度器源码分段阅读目录
- [调度器入口](https://github.com/yinwenqin/kubeSourceCodeNote/blob/master/scheduler/P1-%E8%B0%83%E5%BA%A6%E5%99%A8%E5%85%A5%E5%8F%A3%E7%AF%87.md)
- 待补充
## 概览
首先列出官方md链接讲解颇为生动
https://github.com/kubernetes/community/blob/master/contributors/devel/sig-scheduling/scheduler.md
这里用结合自己阅读代码的理解做一下翻译。
@ -73,6 +79,3 @@ Kubernetes scheduler独立运作与其他主要组件之外(例如API Server)
### 修改调度策略
默认调度策略是通过defaultPredicates() 和 defaultPriorities()这两个函数定义的,源码在 `pkg/scheduler/algorithmprovider/defaults/defaults.go`我们可以通过命令行flag --policy-config-file CONFIG_FILE 来修改默认的调度策略。除此之外,也可以在`pkg/scheduler/algorithm/predicates/predicates.go` `pkg/scheduler/algorithm/priorities`源码中添加自定义的predicate和prioritie策略然后注册到`defaultPredicates()`/`defaultPriorities()`中来实现自定义调度策略。
## 调度器源码阅读目录
- [初始化启动](https://note.youdao.com/)
- 待补充

Loading…
Cancel
Save