跳转至

v1.0.0 版本发布说明

v1.0.0

欢迎使用 Spiderpool v1.0.0 版本! 与 0.9.9 版本相比,v1.0.0 版本有以下更新。


新功能

  • 添加注解 cni.spidernet.io/network-resource-inject:PR 4421

  • 支持 Kubevirt 虚拟机静态 IP:实现了为 Kubevirt 虚拟机分配静态 IP 地址的功能,使虚拟机可以像 Pod 一样获得固定且可预测的 IP 地址,简化了虚拟化环境中的网络管理。PR 3751

  • 节点 sysctl 配置支持:spiderpool-agent 现在可以为节点配置系统级别的网络参数,通过 sysctl 接口调整内核网络栈参数,提高网络性能和稳定性。PR 3772

  • AI 与 macvlan 文档:新增了详细文档,介绍如何在 AI 工作负载场景中使用 macvlan 网络模式,包括最佳实践和配置示例,优化 AI 训练和推理任务的网络性能。PR 3870

  • 节点 rp_filter 自动设置:agent 组件现在会自动将每个节点的 rp_filter(反向路径过滤)参数设置为 0,解决多网卡环境中的路由非对称问题,提高网络连接的可靠性。PR 3898

  • 支持大掩码 IPv6 子网:新增对 CIDR 掩码大于 64 位的 IPv6 子网的支持,允许更灵活的 IPv6 地址分配策略,满足不同规模网络的需求。PR 3804

  • chainCNI 支持:为 spidermultusconfig 添加了 chainCNI 支持,允许多个 CNI 插件按顺序链式调用,实现更复杂的网络功能组合,如安全策略和流量控制。PR 3918

  • Pod 网络资源自动注入:添加了 Pod 变更 webhook,能够根据预定义的规则自动为 Pod 注入网络资源配置,简化了多网卡环境下的 Pod 网络配置管理。PR 4179


功能变更

  • VLAN 子接口创建优化:修复了父接口关闭时的问题,现在会在创建 VLAN 子接口前自动将父接口设置为启用状态,提高了网络接口配置的可靠性。PR 3089

  • CRD 升级稳定性改进:修复了 coordinator 升级过程中由于 CRD 属性为空导致的系统崩溃问题,增强了版本升级的稳定性和兼容性。PR 3119

  • 动态 serviceCIDR 支持:增强了 coordinator 组件,使其能够根据不同的 Kubernetes 版本自动适配并支持相应的 serviceCIDR 格式,提高了跨版本兼容性。PR 3169

  • 组件启动控制优化:通过 Helm charts 值参数实现了对 coordinator 组件启动过程的精细控制,提供更灵活的部署和配置选项。PR 3183

  • kubeadm-config 获取逻辑优化:修复了获取 kubeadm-config 的逻辑问题,避免因配置获取失败而导致的 Pod 创建阻塞,提高了系统可用性。PR 3212

  • informer 稳定性提升:修复了 spidercoordinator informer 中的崩溃问题,增强了事件处理的稳定性和错误恢复能力。PR 3275

  • 边缘情况处理增强:改进了 spidercoordinator 对网络边缘情况的处理能力,提高了在复杂网络环境下的稳定性和可靠性。PR 3288

  • 配置事件同步机制:优化了 Spidercoordinator 对 kubeadm-config 事件的同步处理,确保配置变更能及时触发状态更新,提高系统响应速度。PR 3295

  • StatefulSet IP 分配策略优化:修复了 StatefulSet Pod 重新创建时的 IP 分配问题,确保在注解中指定新池时能正确更改 IP 地址,提高了有状态应用的网络稳定性。PR 3676

  • 多网卡 NodePort 访问修复:解决了 Pod 拥有多个网卡时无法访问 NodePort 服务的问题,优化了多网卡环境下的服务发现和访问机制。PR 3815

  • CNI 启动可靠性提升:修复了当 agent 健康检查失败且 multus.conf 丢失时,Pod 由意外 CNI 启动的问题,增强了网络配置的一致性和可预测性。PR 3813

  • 安装流程优化:解决了 init-pod 中导致 agent pods 无法运行的安装阻塞问题,提高了系统部署和初始化的成功率。PR 3816

  • StatefulSet IP 回收机制改进:修复了 Spiderpool 在 StatefulSet Pod 扩容/缩容期间错误回收 IP 地址的问题,避免了潜在的 IP 冲突,提高了动态伸缩的可靠性。PR 3913

  • rp_filter 设置范围优化:调整了 coordinator 的行为,使其只为 Pod 设置 rp_filter 参数而不影响整个节点,提高了配置的精确性和安全性。PR 3970

  • 多网卡路由表修复:解决了 Pod 具有多个网卡时策略路由表配置错误的问题,确保了复杂网络拓扑下的正确路由。PR 3971

  • 大型 CIDR IP 分配性能优化:解决了从超大 CIDR 请求 IP 时 Pod 创建速度过慢的问题,通过优化 IP 分配算法提高了大规模网络环境下的性能。PR 3630

  • Istio 兼容性增强:为支持 Istio 的重定向操作,在 veth0 接口上添加了链路本地 IP 地址,改进了与服务网格的集成。PR 3624

  • 网关检测机制改进:coordinator 现在使用 arping 技术检测网关是否可达,提高了网络连通性检查的准确性和效率。PR 3585

  • 默认路由接口获取优化:重构了 GetDefaultRouteInterface 函数,改进了获取 Pod 默认路由网卡的机制,提高了路由配置的准确性。PR 3308

  • 路由劫持安全性提升:确保 hijickRoute 功能的网关来源于 hostIPRouteForPod,增强了路由操作的安全性和可靠性。PR 3365

  • Chart 配置有效性修复:解决了 chart 值 tuneSysctlConfig 不生效的问题,确保系统配置能够正确应用到目标组件。PR 3989

  • GOMAXPROCS 配置优化:更新了 GOMAXPROCS 配置策略,根据容器资源限制自动调整 Go 运行时的并发度,提高了资源利用效率。PR 4015

  • Webhook 验证稳定性提升:修复了在验证 webhook 中创建带有空 podRPFilter 的 spidermultusconfig 时的崩溃问题,增强了配置验证的健壮性。PR 4079

  • MAC 前缀验证修复:解决了创建 spiderMultusConfig 时对单播 podMACPrefix 的错误验证问题,确保了 MAC 地址分配的正确性。PR 4109


总计

拉取请求数量:154

提交记录

  • 修复:无法获取 podCIDR 和 serviceCIDR:PR 4366

  • 修复 cilium ipam 多池情况下的控制器崩溃:PR 4433

  • 在 ipam 而非 coordinator 中检测 IP 冲突和网关可达性:PR 4560

  • 减少禁止资源访问的过多 WARN 日志:PR 4356

  • 修复:在多网卡设置中,一个网卡的 IP 池短缺导致其他网卡的 IP 耗尽:PR 4379

  • 修复:在多网卡场景中 StatefulSet 应用程序创建失败:PR 4359

  • 修复:helm 升级后 pod webhook 证书过期导致 pod 无法运行:PR 4420

  • 修复:无法获取 podCIDR 和 serviceCIDR:PR 4366

  • 修复 cilium ipam 多池情况下的控制器崩溃:PR 4433

  • 在网关检测前检测 IP 冲突以修复通信失败:PR 4474

  • 修复缺少 rdma 依赖:PR 4263

  • 移除 ServiceMonitor 重复的 namespaceSelector:PR 4271

  • 更新 GrafanaDashboard:PR 4264

  • 当 agent 健康检查失败且 multus.conf 丢失时,pod 由意外的 CNI 启动:PR 3758

  • rbac:移除 patch/update 节点和 webhook 资源的权限:PR 3880

  • 修复:Spiderpool 在 StatefulSet Pod 扩容/缩容期间 GC 错误的 IP 地址,导致 IP 冲突:PR 3778

  • coordinator 应该只为 pod 设置 rp_filter,而不是节点:PR 3906

  • coordinator:修复存在多个辅助网卡时的错误策略路由:PR 3873

  • 更新 GOMAXPROCS 配置:PR 4013

  • 修复:当安装了 sriovOperatorConfig 时无法卸载 spiderpool:PR 3925

  • 修复在验证 webhook 中创建带有空 podRPFilter 的 spidermultusconfig 时的崩溃:PR 4062

  • 修复创建 spiderMultusConfig 时对单播 podMACPrefix 的错误验证:PR 4098

  • 修复:避免由于资源版本冲突导致清理 spiderpool 资源时失败:PR 4130

  • 修复:优化 NotFound 资源的清理代码判断:PR 4156

  • 修复:由 multus.spidernet.io/cr-name 指定的同名冲突检查:PR 4168

  • DRA:修复 agent 启动错误:PR 3504

  • RBAC:避免权限过高导致潜在的 CVE 风险:PR 3608

  • 修复:从超大 CIDR 请求 IP 的 Pod 创建速度过慢:PR 3583

  • 为 istio 添加链路本地 IP 到 veth0:PR 3588

  • 修复:当在注解中更改池时,Statefulset pod 在重新创建时应该更改 IP:PR 3669

  • 优化清理作业以使用主机网络:PR 3692

  • 修复:当 pod 拥有多个网卡时无法访问 NodePort:PR 3686

  • 优化清理脚本:PR 3706

  • 修复:缺少 GLIBC 动态依赖导致 ovs 二进制文件不可用:PR 3752

  • 卸载时移除 sriov-network-operator 安装的 CRD:PR 3726

  • init-pod:支持 helm wait 并修复 agent pods 运行失败时安装阻塞:PR 3732


总计

拉取请求数量:306

提交记录

评论