快速编译生成k8s组件的镜像
需求 实现 参考 需求 修改了kube-scheduler(1.21)代码,需要编译新的二进制。并且由于使用的容器方式部署,最好直接生成镜像。 实现 #脚本会从这个环境变量获取镜像的tag,且必须符合语义化版本号规则 export KUBE_GIT_VERSION=v1.21.5 KUBE_BUILD_PLATFORMS=linux/amd64 KUBE_BUILD_CONFORMANCE=n
需求 实现 参考 需求 修改了kube-scheduler(1.21)代码,需要编译新的二进制。并且由于使用的容器方式部署,最好直接生成镜像。 实现 #脚本会从这个环境变量获取镜像的tag,且必须符合语义化版本号规则 export KUBE_GIT_VERSION=v1.21.5 KUBE_BUILD_PLATFORMS=linux/amd64 KUBE_BUILD_CONFORMANCE=n
背景 解决思路 k8s调度器资源管理代码分析 启动时的资源扣减 调度结果确定后的资源扣减 方案3实现 参考 背景 项目中使用了内核的Isolcpus功能隔离CPU核心,然后通过扩展调度器和修改kubelet,实现了特定pod对隔离CPU的独享绑定使用。 但是最近发现一个设计之初没考虑到的大问题: 我们使用注解来标记pod对隔离cpu的需求,但是数量还是沿用了k8s默认的QOS体系。即扩展调
背景 项目内CRD 非项目内CRD step by step guide 代码框架 镜像构建 集群部署 验证 总结:证书问题 参考 背景 kubebuilder对webhook的支持主要基于同样用kubebuilder构建的CRD,而对于非kubebuilder项目内构建的类型,还是需要一些work around来实现webhook的构建。 项目内CRD 对于kubebuilder项目生成
等价转换公式 区别 参考 等价转换公式 定义结构体如下 type T struct{ a int } receiver为结构体本身的方法及其等价转换后的方法为 func(t T)Get()int{ return t.a } // 等价于 func Get(t T)int{ return t.a } 类似的,receiver为结构体指针的方法及其等价转换后的方法为 func
问题 方案 插件库维护 问题 原版openwrt中有些包是不存在的,而lede的版本中则各种软件包非常丰富。如何实现编译原版openwrt的同时,引入部分lede的包 方案 openwrt支持引入外部feeds,我自己建立一个git仓库,专门存储我需要的外部插件:lwabish/openwrt-package (github.com) 然后在fork的openwrt中的feeds.conf.d
xiaomi-ax6s 首次安装 更新 救砖 linksys-wrt32x 双分区 状态 切换 高级 参考 linksys-e8450 转UBI 刷lede netgear-r7800 xiaomi-ax6s xiaomi ax6s:Mediatek-Mt7622 首次安装 [OpenWrt Wiki] Xiaomi AX3200 / Redmi AX6S 更新 [OpenWr