NOTE

使用 gateway api 作为 K8s 外部流量入口

目录 gateway api 概述 快速入门 部署 metallb 安装 crd 以及 istio 部署测试服务 配置入口 gateway 添加业务路由到 gateway 基于权重的路由 总结 gateway api 概述 gateway api 是 K8s 发起的下一代 in...

在 K8s 中使用 keda 进行应用扩缩容

目录 keda 概述 安装 keda 快速入手(以mysql为例) keda 的一些特性 缩容到 0 定时扩缩容 事件驱动,事件源丰富 一些参考 openkruise 基于HPA的极致弹性调度最佳实践 蚂蚁金服 Kapacity ...

在 K8s 中使用原生 hpa 进行应用扩缩容

目录 K8s 原生 hpa 快速入手 原生 hpa 是怎么工作的 工作过程 扩容算法 配置扩缩容行为 扩缩容策略(scaling policies) 稳定窗口(stabilization window) 默认行为(default behavior) hpa 指...

理解数据库事务 ACID

目录 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) read uncommit(读未提交) read commit(读已提交) repeatable read(可重复度) serializable(串行化) 持久性(Durability) 原子性(A...

在 controllerruntime 控制器中配置资源 webhook

目录 controllerruntime webhook 接口概述 controller 注册 webhook 自动签发证书 配置 webhook 不拦截自身 pod controllerruntime webhook 接口概述 K8s 支持 mutatingWebhookConfiguration 以及 validatingWebhookConfiguration 资...

使用 cert-manager 管理 ingress-nginx 证书

文章目录 概述 环境部署安装 ingress-nginx cert-manager 部署测试应用 部署 deployment 服务 部署 ingress 资源 测试访问 dns 验证 http01 验证 dns01 验证 ...

在 Go 中使用 mmap 映射文件到内存

目录 mmap 系统调用 在 Go 中使用 mmap mmap 系统调用 Linux 支持通过 mmap系统调用 将文件映射到内存中,然后我们读写映射之后的虚拟内存就可以了,不用再用 write/read 系统调用读写文件。系统会将我们对内存读写 flush 到文件中,flush 是由系统自动执行的,我们也可以调用 Flush 强制刷盘。 void *mmap(void ad...

使用 pulumi 进行 K8s 配置管理与交付

目录 pulumi 入门 环境初始化 写交付代码 pulumi 是怎么工作的 pulumi 中的依赖 pulumi 常用命令 使用技巧 将 pulumi.StringOutput 转换为 pulumi.ID 结构化配置 管理集群中已有资源 get 非 pu...

Go 中的 errors.Is 与 errors.As

目录 概述 通过 fmt.Errorf 来 wrap error errors.Is: 是否有错误 equal 理解与使用 errors.Is 实现 errors.As: 是否有错误类型匹配 理解与使用 errors.As 实现 Go 中的 Comparable ...

Golang profile 性能分析与运行时参数概述

目录 通过 pprof 与 trace 进行性能分析 profile 采集与分析 trace 采集与分析 GOMEMLIMIT 环境变量 automaxprocs 自动配置 GOMAXPROCS 参考 通过 pprof 与 trace 进行性能分析 官方文档 https://pkg.go.dev/net/http/ppr...