Toggle navigation
Home
Archive
About
Archive
Show All
147
K8s
35
Golang
19
Etcd
17
网络
14
运维
11
K8s生态
7
存储
5
设计模式
5
Istio
5
数据结构/算法
4
Docker
4
Linux
4
Operator
4
cicd
3
gRPC
3
ingress-nginx
3
分布式
2
监控
2
随笔
2
boltdb
2
数据库
1
2024
2024-12-1: karpenter 集群扩缩容: 基本概念
2024-10-1: 使用 cgroupv2 限制进程资源使用
2024-8-1: docker harbor 管理 helm chart 生命周期
2024-6-1: 通过 github action 自动打包项目 helm chart 并发布
2024-5-1: 使用 kruise cloneset lifecycle 管理应用生命周期
2024-4-25: 配置 keda 使用 prometheus 数据源
2024-4-23: 使用 gateway api 作为 K8s 外部流量入口
2024-4-21: 在 K8s 中使用 keda 进行应用扩缩容
2024-4-6: 在 K8s 中使用原生 hpa 进行应用扩缩容
2024-4-3: 理解数据库事务 ACID
2024-3-30: 在 controllerruntime 控制器中配置资源 webhook
2024-3-1: 使用 cert-manager 管理 ingress-nginx 证书
2024-2-10: 在 Go 中使用 mmap 映射文件到内存
2023
2023-11-18: Go 中的 errors.Is 与 errors.As
2023-11-18: 使用 pulumi 进行 K8s 配置管理与交付
2023-11-9: Golang profile 性能分析与运行时参数概述
2023-10-7: B-tree 的定义及使用
2023-10-6: 通过 patch 修改 Kubernetes 中的资源
2023-10-2: controllerruntime 中的 cache 与 client 实现
2023-10-1: Golang 中的 reflect 机制解析
2023-9-20: 通过 Scheduler Plugins 扩展 K8s 调度器
2023-9-20: 阿里云的 cluster provider controller 是怎么设计的
2023-5-3: 通过 Istio gateway 将服务暴露到集群外
2023-5-1: 通过 Istio 配置应用超时和重试
2023-4-4: 使用 Calico 配置容器访问策略 NetworkPolicy
2023-3-11: vscode goland markdown 能效
2023-3-8: 使用 metallb 为 loadbalance 类型的服务分配 ip
2023-3-2: 运行 Istio Bookinfo 示例应用
2023-3-2: 我的 2022
2023-2-11: CNI实现:flanneld hostgw backend 相关实现
2023-2-4: Calico BGP 基本工作原理
2023-2-3: 通过 Keepalived 实现应用高可用
2022
2022-12-20: CNI 实现:使用 Golang 配置网络设备
2022-12-19: CNI 实现:以 flannel 为例解析 CNI 插件的实现
2022-12-17: CNI 实现:K8s dockershim CNI 实现
2022-11-27: Helm 使用中的一些最佳实践
2022-11-22: 一些 K8s 中 yaml 资源配置的例子
2022-11-7: 容器 PageCache 使用过多,导致内存利用率较高
2022-10-24: 通过修改 Config 文件的方式修改容器启动参数
2022-10-4: K8s 环境下部署 grpc 的几种方案[转载]
2022-10-1: 手动配置 K8s hostgw 网络
2022-10-1: K8s 框架中关于 pod 优雅退出的一些总结
2022-9-18: Linux Grep 正则表达式示例[转载]
2022-8-31: 解析 K8s 集群中的 Pod 驱逐机制
2022-8-27: flannel host-gw 网络概述
2022-8-26: 使用 kubeadm 部署一个 Kubernetes 集群
2022-8-20: 扩展 IPAM host-local 插件实现 IP 预留
"Openkruise 中实现 IP 预留的方式"
2022-8-20: Etcd 日志复制流程概述
2022-8-5: Go 语言 TCP Socket 编程[转载]
2022-7-31: Golang 中的 defer 关键字
2022-6-29: EtcdServer 架构及初始化
2022-6-23: Etcd 性能调优总结
2022-6-8: 通过 --force-new-cluster 实现 Etcd 容灾
2022-6-1: 通过 Learner 节点实现 Etcd 集群实时备份
"以 rke 环境为例"
2022-5-10: etcdctl snapshot 命令是怎么工作的
"snapshot save 实现细节分析"
2022-5-7: Etcd 中的 wal 处理流程
2022-3-26: K8s Service 中的 iptables 规则
2022-3-20: Etcd: sync wal 时间过长导致切主
2022-3-8: 通过 K8s ingress-nginx 实现 tcp 四层转发
2022-3-6: ingress-nginx 代理 websocket
2022-3-2: Etcd put 请求过程:EtcdServer 处理概述
2022-3-2: Etcd 监控之 Metrics 汇总
2022-2-10: Golang 反向代理 reverse proxy 示例
2022-2-6: Etcd raft 模块应用案例解析:raftexample
2022-1-3: Raft 在 Etcd 中的实现[转载]
2021
2021-12-18: 流式 gRPC 示例
2021-12-11: 《In search of an Understandable Consensus Algorithm》Etcd 论文简析
2021-11-18: too many open files 问题排查
2021-11-14: Etcd 超时:read-only request took too long to execute
2021-11-3: Etcd put 请求过程:clientv3 发送请求到 EtcdServer
2021-9-13: K8s Apiserver 中的存储层调用链路梳理
"参考《Kubernetes 源码剖析》"
2021-9-11: Cgroup 内存管理与容器内存监控
2021-8-28: 在本地安装 Etcd 集群进行测试
2021-8-28: Etcd 集群基础运维
2021-6-20: bbolt 初体验[转载]
2021-6-12: 使用 Context 设置 Http 请求超时
2021-5-22: awk 命令基础
2021-5-9: WAL 概述
2021-5-6: Golang TLS 编程
2021-4-12: 事件处理中的 DeletedFinalStateUnknown 是什么
2021-4-6: Statefulset 滚动升级实现
2021-4-2: tcp 协议的连接与断开
2021-4-1: flannel vxlan 工作原理分步骤详解
2021-4-1: 容器网络基础及 CNI 概述
2021-3-23: K8s 中的 Informer reflector 实现细节全解析
2021-3-14: Moby 代码中一个发布订阅模式的实现
2021-2-10: go-cache:一个简单内存 cache 设计
2021-2-9: 一些 Golang 日常读写操作
2021-1-2: K8s Scheduler 及 Apiserver 是如何处理 binding 请求的
2021-1-1: 为 K8s 编写可测试代码
2020
2020-12-20: 实现文件分片传输的一个小例子
2020-12-17: 基于 CAS 操作实现无锁队列
2020-11-30: 多副本选主 LeaderElection 的实现
2020-11-28: PromQL 是如何计算容器 cpu 利用率的
2020-11-27: cpuset/NUMA 相关知识
2020-11-27: 通过 Topology Manager 开启绑核功能
2020-11-27: K8s 里的 Client: Discovery 以及 Unstructured
2020-11-27: K8s Apiserver max-requests-inflight 流控实现
2020-11-27: prometheus 监控基础
2020-9-20: 关于 InClusterConfig 的一些知识
2020-9-19: 分布式系统:CAP 理论的前世今生[转载]
2020-9-19: 分布式系统:一致性模型[转载]
2020-8-22: Apiserver 问题排查: too old resource version
2020-8-21: Apiserver 问题排查: Too large resource version
2020-8-21: Apiserver 中缓存层 Cacher 的实现
2020-8-20: 使用 xfs_quota 实现磁盘容量隔离
2020-8-15: K8s 调度器 SchedulerCache 工作原理
2020-7-25: PV Controller 的本地 cache 及其 indexer
2020-7-18: 实现 K8s client-go 的监控
2020-7-18: Local volume provisioner 架构分析
2020-6-21: Kubelet 容器运行时/CRI/CNI 初始化
2020-6-6: 理解 K8s CSI 存储插件机制
2020-5-11: shell 运维命令集合
2020-5-1: 容器share pid 导致 restart 命令卡主
2020-4-7: linux 块设备 IO 栈浅析[转载]
2020-4-6: Golang 汇编入门-从输出 HelloWorld 说起[转载]
2020-3-25: 大概了解下 Golang 中的垃圾收集
2020-3-21: containerd runc docker 之间的关系
2020-3-21: 理解 Golang 中的 unsafe Pointer
2020-3-21: K8s 队列之基本队列实现
2020-3-21: K8s 队列之基本 Controller 设计模式
2020-3-15: Golang 内存框架[转载]
2020-3-15: 理解 Golang 调度器[转载]
2020-3-12: Golang 使用 channel 进行同步控制
2020-3-2: K8s 中的 ReplicaSet 源码解析
2020-2-28: K8s1.9 版本 Scheduler 调度流程概述
2020-2-25: centos 配置静态 ip
2020-2-25: 关于 K8s informer 的基本概念与原理
2020-2-22: 优先级队列及 Golang 中的实现
2020-2-22: K8s Scheduler framework 调度流程概述
2020-2-9: Golang 内存管理概述[翻译]
2020-1-16: K8s 资源控制概述
"cpu与mem的request与limit"
2020-1-6: K8s 中的 worker queue 并发控制模型
"K8s 中的设计模式"
2019
2019-12-17: gRPC Protobuf 语法介绍
2019-12-16: gRPC 示例:实现发布订阅模式
2019-12-14: Kubelet 运行过程概述
2019-11-7: Linux IPtables 规则基础
2019-10-25: 实现自己的 device mapper[翻译]
"这是一篇翻译"
2019-10-13: 回溯法
2019-10-5: have a fever
2019-10-4: Kubelet volume manager 工作原理概述
2019-9-23: K8s Statefulset 控制器设计
2019-9-21: 从宏观角度看 Golang map 实现[翻译]
2019-9-17: K8s 调度器中 findNodesThatFit 实现
"scheduler中的细节"
2019-9-10: K8s 中的 wait.Until
"K8s中一些设计模式"
2019-8-20: K8s volume expand 控制器介绍
"由点到线熟悉 K8s Controller Manager"
2019-8-20: Scheduler 调度 Pod 过程
"Scheduler 调度 Pod 的主线流程,及队列管理"