前言某DN博客的页面样式实在不敢恭维,广告不少,最厉害的在于写作积分还不能用于下载,近两年Hexo挺火的,结合github pages使用,纯md文档输出,自动生成简洁好看的web页面,建站的步骤都可以省略了,试用一番下来体验确实尚可,记录一下部署过程 1. 创建github pages登录gith ...
Kubernetes源码学习-Scheduler-P3-Node筛选算法
P3-Node筛选算法前言在上一篇文档中,我们找到调度器筛选node的算法入口pkg/scheduler/core/generic_scheduler.go:162 Schedule()方法 p2-调度器框架 那么在本篇,由此Schedule()函数展开,看一看调度器的node筛选算法,优先级排序算 ...
Kubernetes源码学习-Scheduler-P2-调度器框架
调度器框架前言在上一篇文档中,我们找到了sheduler调度功能主逻辑的入口: P1-调度器入口篇 那么在本篇,我们基于找到的入口,来进入调度器框架内部,看一看整体的逻辑流程,本篇先跳过调度的算法(Predicates断言选择、Priority优先级排序),只关注pkg/scheduler目录内的s ...
Kubernetes源码学习-总篇
## 前言在熟悉kubernetes及常用组件、插件的管理使用后,总还觉得差了些什么,不够通透,是时候来读一读源码了,结合代码与实际使用场景来互相印证,有助于对kubernetes的理解更为透彻。这里将会分多篇介绍kubernetes各核心组件的工作模式、调度管理算法等。 版本Kubernetes ...
Kubernetes源码学习-Scheduler-P1-调度器入口篇
## 调度器入口前言本篇介绍scheduler的初始化相关逻辑 入口之前入口函数是位于cmd/kube-scheduler/scheduler.go中的main()方法,调用的是app.NewSchedulerCommand()方法,跳转至此方法,可以看到函数上方的注释: // NewSchedu ...
Kubernetes源码学习-Scheduler-总览篇
## 调度器总体设计调度器源码分段阅读目录 调度器入口 调度器框架 Node筛选算法 待补充 概述首先列出官方md链接,讲解颇为生动:https://github.com/kubernetes/community/blob/master/contributors/devel/sig-sc ...
golang算法练习:排序
## 需求排序操作,列举常见的几种排序模型:冒泡、选择、插入、快排 备注:需求和运行输出结果均已在代码中注释 冒泡代码: package mainimport "fmt"/*思路:从第一个元素开始循环,与其相邻的元素两两比较,若左边元素大于右边元素,则两者互换位置,保持右边的元素比左边元素大的排序 ...
golang算法练习:单链表/双链表/环形链表
## 需求链表,常见且非常灵活的数据模型,可定制性强,可根据需求调整满足不同的使用需求,如FIFO\LIFO,快速查找等,这里分别列举基础的单向链表和双向链表增删改查操作备注:需求和运行输出结果均已在代码中注释 单向链表代码 package mainimport ( "errors" "fmt") ...
golang算法练习:基于array的队列实现
## 需求队列,很常用的FIFO(先入先出)数据模型,下面尝试使用golang的array数据结构来实现队列模型备注:需求和运行输出结果均已在代码中注释 简单队列代码:package mainimport ( "fmt")type SingleQueue struct { Cap in ...
k8s(十六): VXLAN和Flannel
## 前言目前k8s中比较常用的cni有calico、flannel、kube-router等,个人比较熟悉的是kube-router的bgp纯直通方案,flannel则是另一款使用较多的比较简单易用的方案,这里着重了解一下flannel的vxlan这一常用模式 VXLAN在了解flannel之前 ...