开源项目中的git实践

背景 DCO Test sign-off commit 已经提交PR后修复DCO 直接使用rebase修复 合并commit 如何优雅地同步上游仓库 参考 背景 对于利用业余时间参与开源项目的同学,由于是间歇性的接触,所以很多问题容易忘。比如基于git的多仓库开源协作模式,如果日常工作中用不到,那么每次参与开源项目时有些细节可能需要重新回忆一下。 本文主要记录我参与开源项目中的易忘点,供后

- 阅读全文 -

kubeedge-部署篇

云端组件 边缘组件 处理daemonset 为边缘节点增加污点 启用kubectl logs/exec功能 metrics server修改 排障 调度pod验证安装 参考 云端组件 云端环境kubernetes 1.21.6 直接使用helm chart部署cloudcore即可 需要注意证书的ip和域名配置。如果首次部署出现了问题,需要手动删除kubeedge命名空间下的secret以重新

- 阅读全文 -

go-delve远程调试

基本原理 代码同步 远程环境准备 启动远程环境的delve服务端 本地断点调试 基本原理 在开发过程中可能遇到以下两类问题: 本地开发完成后,在其他环境运行时程序表现和预期不一致 本地难以调试,比如kubelet 为了解决这些问题,可以结合使用delve和jetbrain家的IDE(goland/idea),方便地在远程环境运行程序,同时在本地打断点调试。 delve类似于一个cs架构的中

- 阅读全文 -

基于istio实现个人门户的双版本发布策略

目标 方案 增加负载版本 istio相关CR Makefile 效果 目标 本文所述的方案旨在将我的个人门户由原来的单一版本发布策略改为包含一个预览版本和一个稳定版本的发布策略,以实现对于门户的修改,可以先发布为预览版,仅特定用户可以看到并进行测试。待到测试无误后,再作为稳定版本发布以供所有用户使用。 原本的发布方式:门户基于flutter构建,打包成docker镜像,以helm char

- 阅读全文 -

jenkins快速批量执行多任务

需求 实现 传参 参考 需求 当我们为每个微服务配置了不同的job时,如果需要批量对所有job进行指定分支的更新,低效率的方法是逐个点进job,手动触发构建。当job数量大了以后,操作起来就比较费劲了。 此时可以通过总分结构,设置一个父job,一次构建完成所有微服务的批量构建。 实现 安装Multijob plugin 新建一个item,选择multijob project 一个m

- 阅读全文 -

kubelet非最佳配置导致的系统频繁OOM问题排查与解决

问题 排查 解决 取消kubelet对system.slice的硬限 重新配置system.slice的硬限 总结 参考 问题 开发环境集群中的业务pod每天频繁更新重建,最近发现部分节点出现以下问题: pod经常在创建时提示runc/pod sandbox相关的错误 想登陆节点时发现ssh也连不上节点 某个节点上的系统pod以及业务pod中的微服务均会出现不稳定的状态 node的状态会

- 阅读全文 -