Gateway + HTTPRoute:主机名不匹配导致路由无效(实战总结)
本文总结了一次在 Higress/Gateway API 环境中,HTTPRoute 无法生效的排查与修复过程。 背景 集群用了 Higress 作为 Gateway API 的实现(gateway 名为 higress-gateway)。 Gateway 上配置了若干 HTTPS listener:services.zlinkcloudtech.com(名为 https)、blog.zlinkcloudtech.com(https-blog)、workflow.zlinkcloudtech.com(https-workflow)、repo.zlinkcloudtech.com(https-repo)等。 我们在 app-harbor 命名空间创建了一个 HTTPRoute,host 是 repo.zlinkcloudtech.com,parentRef 指向 higress-gateway 并使用 sectionName: https(对应 services.zlinkcloudtech.com) 现象 kubectl describe httproute ha...
理解 Gateway API 与 Higress:规范与实现的关系(实践指南)
摘要本文以实践视角解释 Gateway API(规范)与 Higress(实现)之间的关系,何时使用它们、如何理解常见概念、以及在集群中部署与调试时应注意的关键点。面向正在从 Ingress 迁移或者准备引入 Gateway API 的平台与应用开发者。 什么是 Gateway API(简明)Gateway API 是 Kubernetes SIG-Networking 推出的下一代边缘流量 API,一套由 CRD 构成的规范,目标代替传统 Ingress 的表达能力限制。核心设计目标包括: 将网关(Gateway)职责与路由(Route)职责分离; 支持多协议、多端口、多监听器(Listener)与更丰富的匹配规则; 更好地支持多团队、跨命名空间委托与权限控制(ReferenceGrant); 提供可扩展的“平台管理员负责网关,应用开发者负责路由”的工作流。 关键概念(快速参照) GatewayClass:类似于 StorageClass,定义一种网关实现类型,由某个 controller 负责实现(通过 controllerName 识别)。 Gateway:在命名空间...
PhotoPrism 在 Kubernetes 上 CrashLoopBackOff 的排查与 Gateway API / Higress 兼容性处理实战
摘要本文记录一次在 Kubernetes 上部署 PhotoPrism 时遇到 CrashLoopBackOff 的完整排查过程,以及在安装 Gateway API CRD(用于 Higress)时遇到的兼容性问题与解决办法。文中包含了要运行的命令、分析思路与最终的解决方案,便于在类似场景中快速定位与修复。 环境说明 Kubernetes Server: v1.21.1 kubectl Client: v1.34.2 PhotoPrism 镜像: photoprism/photoprism:250321 部署方式: Helm chart(StatefulSet,使用 PVC) 目标:启动 PhotoPrism 并安装 Gateway API CRD 供 Higress 使用 一、问题现象(简述)部署后 Pod 一直处于 CrashLoopBackOff,kubectl logs 看到 PhotoPrism 启动日志能走到打开 SQLite,但随后 s6 停止服务并退出;同时 kubectl describe pod 有大量 probe 报错(connection re...
PhotoPrism 在 Kubernetes 上 CrashLoopBackOff 的排查与 Gateway API / Higress 兼容性处理实战
摘要本文记录一次在 Kubernetes 上部署 PhotoPrism 时遇到 CrashLoopBackOff 的完整排查过程,以及在安装 Gateway API CRD(用于 Higress)时遇到的兼容性问题与解决办法。文中包含了要运行的命令、分析思路与最终的解决方案,便于在类似场景中快速定位与修复。 环境说明 Kubernetes Server: v1.21.1 kubectl Client: v1.34.2 PhotoPrism 镜像: photoprism/photoprism:250321 部署方式: Helm chart(StatefulSet,使用 PVC) 目标:启动 PhotoPrism 并安装 Gateway API CRD 供 Higress 使用 一、问题现象(简述)部署后 Pod 一直处于 CrashLoopBackOff,kubectl logs 看到 PhotoPrism 启动日志能走到打开 SQLite,但随后 s6 停止服务并退出;同时 kubectl describe pod 有大量 probe 报错(connection re...
实战笔记:修改 Kubernetes Master 节点 IP 地址
在生产集群中修改 Master 节点 IP 是一项高风险操作。这篇笔记记录了我在单 Master(kubeadm 部署)集群中,将控制平面地址从 43.139.105.42(master.cluster.zlinkcloudtech.com)迁移到 172.16.16.10 的完整过程。 ⚠️ 强烈建议:先在测试环境演练,并务必做好 ETCD 与 /etc/kubernetes 目录的完整备份,失败时才能快速回滚。 1. 前提检查与备份1234# 备份 /etc/kubernetes 全量配置(含 kubeconfig、证书、静态 Pod 清单)sudo cp -Rf /etc/kubernetes/ /etc/kubernetes_bak# 根据自身情况创建 ETCD 快照(略) 2. 替换配置文件中的旧地址集中处理 Master 节点本地配置以及当前用户的 kubeconfig。 12345678910111213# 1) 处理 /etc/kubernetes 下所有文件cd /etc/kubernetessudo find . -type f -exec se...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new "My New Post" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment
Kcptun 部署笔记
kcptun 极速网络隧道,让数据传输飞起来! 下载 kcptunLinux 下载1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071#!/usr/bin/env bash# Detect the operating system type and architectureOS=$(uname | tr '[:upper:]' '[:lower:]')ARCH=$(uname -m)# Map architecture to the corresponding string used in the release namescase "$ARCH" in x86_64 | amd64) ARCH="amd64" ;; i386 | i686) ...






