背景 在k8s 1.36之前,只要设置了requests.memory,都会设置memory.min来预留内存,这样会导致系统可用内存很少,比如会增加BestEffort p...
背景 在k8s 1.36之前,只要设置了requests.memory,都会设置memory.min来预留内存,这样会导致系统可用内存很少,比如会增加BestEffort p...
背景 简单记录抢占调度的一些代码,方便后续理解 简单总结 调度失败,执行post filter plugin检查是否满足抢占条件 获取所有节点过滤候选节点(如节点上有低于当前...
背景 k8s 最近的版本加入 workload aware scheduling 功能,可以支持gang调度这里记录一下gang调度的实现 简单总结 通过gang plugi...
背景 以前管理grafana资源(如dashboard)通过grafana operator或者terraform方式但是这样没有变更记录,审核,版本控制等能力 grafan...
背景 当前控制器新增实例后要不就是只有单一可以执行要不就是多个分片执行(但是客户端还是会收到全量事件)k8s 1.36新增了ShardedListAndWatch这个特性来优...
背景 k8s 控制器因为往往会使用local cache,但是往往会遇到stale cache的问题,kep 5647 指在避免这个问题 这里以StaleController...
背景 istio dns proxy可以用于提升dns解析性能和可用性 介绍 cni模式(无需设置CAPTURE_ALL_DNS) istiod设置PILOT_ENABLE_...
背景 记录istio dns拦截相关源码,方便后续排查问题和进一步学习 简单总结 创建的pod 触发istiod的webhook,给istio-init容器注入ISTIO_M...
背景 应用较多时候一把梭对注入sidecar可能存在一定的风险,这里记录一下逐步注入的步骤 步骤 禁止自动注入 修改istio-system/istio-sidecar-in...
背景 有时我们线上发现某个pod异常,但是他本身是ready的,我们希望让他临时不接受流量,用于排查问题等问题解决了,想先分布部分流量给这个pod 解决方案 创建如下资源 隔...
背景 istio的sidecar日志出现response_flags为UPE的异常情况 排查 调整日志级别 UPE代表envoy作为client从server接收的响应不符合...
背景 k8s 1.36前想要获取节点当前运行的pod信息只能从apiserver获取,这样不仅不安全而且扩展性很差 在k8s 1.36中,新增了PodsAPI特性,开启后可以...
背景 记录ceph扩缩容的步骤 介绍 扩容 确认集群健康 查看新磁盘 添加host(如果需要新增host) 确认磁盘是否available 添加磁盘 查看恢复进度 查看poo...
背景 简单记录了相关代码和配置,帮助理解envoy的流量拦截 准备环境 分析 获取配置 查看 iptables 得到 重点关注 inbound 对应的listener为 其中...
背景 istio注入sidecar会重写pod原有的probe,这里记录一下相关源码 源码 istiod pkg/kube/inject/webhook.go中 pkg/ku...
背景 线上某个服务发邮件遇到了hang住 排查 istioctl proxy-config listeners yourpod -n yourns -o json 查看lis...
背景 roce 实现无损网络其中就依赖ecn(Explicit Congestion Notification)+pfc(Priority Flow Control),这里简...
背景 ceph是开源存储的常用解决方案,可以提供了块存储,文件存储,对象存储这边记录了一下部署ceph集群和测试rbd的过程 介绍 创建虚拟机 vagrantfile如下 启...
背景 最近看了uber的限流系统[https://www.uber.com/en-KR/blog/ubers-rate-limiting-system/],这里简单总结一下 ...
背景 早期kube apiserver准入策略只能通过webhook方式ValidatingAdmissionPolicy(1.30稳定)用于进行验证准入MutatingAd...