Kubernetes Gateway API 正式发布,简化了 Gateway API 的升级。Gateway API 解决了 Ingress 在处理非 HTTP 工作负载方面的限制,并提供了更灵活、可扩展和强大的流量管理方式。它基于核心原则,使基础设施工程师、集群操作员和应用程序开发人员能够共同解决问题。ingress2gateway 工具简化了从 Ingress 迁移到 Gateway API 的过程。Gateway API 的设计具有可移植性、表达性和可扩展性的特点,提供了标准化支持。ingress2gateway 工具可以帮助简化从 Ingress 迁移到 Gateway API 的过程。Gateway API 是未来的 Kubernetes 网络标准,得到了 SIG Network 的支持和社区的积极参与。ingress2gateway 计划接入更多提供商,引入对更多类型的 Gateway API 路由的支持。Gateway API 即将发布 v1.0 版本,包含许多新功能。"
最近在升级服务网格 Istio,升级后有个必要的流程就是需要重启数据面的所有的 Pod,也就是业务的 Pod,这样才能将这些 Pod 的 sidecar 更新为新版本。
本文介绍了在 Kubernetes 和 Istio 中使用 gRPC 负载均衡的行为。首先,通过创建命名空间、部署资源和配置文件来准备环境。然后,介绍了没有 Istio 的情况下,gRPC 服务的负载均衡行为。接下来,介绍了如何使用 Istio 创建虚拟服务和目标规则来实现负载均衡。还讨论了 ConnectionPoolSetting 对负载均衡行为的影响。最后,介绍了如何通过入口网关访问 gRPC 服务,并提供了验证步骤。
在混部场景下,内存管理是一个很重要的话题:一方面,当节点或容器的内存紧张时,业务的性能可能会受到影响,比如出现时延抖动或者 OOM。在混部场景下,由于对内存进行了超卖,该问题可能会更加严重。另一方面,节点上可能存在一些较少被使用但未被释放的内存,导致可以出让给离线作业使用的内存量较少,无法实现有效的超卖。 针对上述问题,字节跳动将其在大规模在离线混部过程中积累的精细化的内存管理经验,总结成了一套用户态的 Kubernetes 内存管理方案 Memory Advisor,并在资源管理系统 Katalyst 中开源。本文将重点介绍 Kubernetes 和 Linux 内核原生的内存管理机制及其局限,以及 Katalyst 如何通过 Memory Advisor 在提升内存利用率的同时,保障业务的内存服务质量。
本文讨论了在 Kubernetes 故障排除中的两种路径:一种是增强操作员的分析工作,通过自动化和简化对故障排除知识的访问来提供帮助;另一种是将操作员从故障排除中排除,通过使用 AI/ML 模型和可观察性数据来自动化故障修复。同时强调了数据的重要性,以及继续共享故障排除经验和建立对可观察性的一致认识的必要性。
WebAssembly 可以作为一种部署应用程序的方式,可以在服务器操作系统上运行,且在许多不同的硬件环境中表现出色。与 Kubernetes 相比,WebAssembly 的优点在于简易性和安全性。但是,Kubernetes 始终有其用途,它将始终用于编排微服务和容器。因此,对于某些用例来说,WebAssembly 可以替代 Docker 和容器,但是在高度分布式的云原生环境中,使用 WebAssembly 来编排容器和微服务程度上与 Kubernetes 相同的程度是不可能的。
本文介绍了 Kubernetes 策略的七个步骤,包括基线、修复标签和注释、迁移到受限制的 Pod Security 标准、压制误报、加入常见加固指南、插入并播放、添加自定义规则以应对未预料的特殊情况。通过实施这些步骤,可以逐步减少配置错误和漏洞的数量,实现认证、合规和长期安全目标。
前几天 Gateway API 宣布在 0.8.0 中支持服务网格[1],这意味着 GAMMA[2](Gateway API for Mesh Management and Administration)有了新进展,虽然目前还是实验阶段。去年 6 月 Gateway API 发布 0.5.0 时,我还写了一篇 SMI 与 Gateway API 的 GAMMA 倡议意味着什么?[3]。如今,SMI 作为 sandbox 项目的年度审查已经 过了几个月仍未提交[4],唏嘘。 废话不多说,我们来看下 0.8.0 下的 Gateway API 如何在 Service Mesh 中工作。