Cka-2026-gateway解释

一、Gateway 修改原因

  1. metadata.name: example-gateway → web-gateway

· 原因:题目要求创建一个名叫 web-gateway 的网关。名字必须与题目一致,因为后面 HTTPRoute 要通过这个名字来引用它。

  1. gatewayClassName: example-class → nginx

· 原因:gatewayClassName 指定集群中实际运行的是哪个网关控制器(比如 Nginx、Envoy、Istio 等)。example-class 只是一个示例名字,不指向任何真实控制器;改成 nginx 表示你要使用 Nginx Gateway 实现(前提是集群已安装对应的 GatewayClass)。

  1. 监听器从 http:80 改为 https:443,并增加 hostname 和 tls

· 原因:

· 原来的 protocol: HTTP、port: 80 是明文传输,不安全。题目要求对外暴露服务,通常需要 HTTPS 加密。

· port: 443 是 HTTPS 的标准端口,浏览器访问时不需要手动写端口号。

· hostname: gateway.web.k8s.local:严格限定只处理这个域名的请求,避免其他域名的流量误入。

· tls 配置:既然要处理 HTTPS,就必须有证书来解密。mode: Terminate 表示网关自己解密(而不是透传给后端)。certificateRefs 指向存有证书的 Secret web-cert。

简单说:改这些是因为题目要的是一个安全的、绑定特定域名的 HTTPS 入口。


二、HTTPRoute 修改原因

  1. metadata.name: example-httproute → web-route

· 原因:题目明确要求路由资源名为 web-route,保持唯一性和可识别性。

  1. parentRefs0.name: example-gateway → web-gateway

· 原因:这条路由要挂载到刚才创建的 web-gateway 上,而不是旧的 example-gateway。parentRefs 就是用来建立路由与网关的关联的。

  1. hostnames: "www.example.com" → "gateway.web.k8s.local"

· 原因:网关只监听 gateway.web.k8s.local 这个域名,所以路由必须声明同一个域名,否则请求会被拒绝。域名不一致就无法匹配。

  1. matches0.path.value: /login → /

· 原因:原示例只匹配 /login 路径,意味着只有访问 /login 才会被转发。题目要求的是"所有路径"(相当于 Ingress 里的 paths: /),所以改成根路径 /。PathPrefix 类型下,/ 匹配所有请求。

  1. backendRefs.name: example-svc → web

· 原因:后端服务名字变了,题目要求转发给名为 web 的 Service(而不是 example-svc)。这是实际业务服务的名称。

  1. backendRefs.port: 8080 → 80

· 原因:目标 Service web 监听的端口是 80(常见 HTTP 端口),而不是 8080。端口必须匹配 Service 的定义,否则流量发不过去。


三、整体逻辑串联

  1. 网关定义入口:用 web-gateway 在 443 端口、域名 gateway.web.k8s.local 上接收 HTTPS 请求,证书从 web-cert 获取。

  2. 路由定义转发:用 web-route 挂载到 web-gateway,对所有路径(/)的请求,转发到 web Service 的 80 端口。

  3. 所有名字、域名、端口、路径都必须前后一致,否则流量无法正常流入后端。

一句话总结修改原因:题目要求的是一个特定的 HTTPS 网关加全路径路由,因此要把示例中的占位符(example-xxx、/login、8080、HTTP 等)全部换成题目给出的真实值。

相关推荐
Hadoop_Liang3 天前
使用Kubernetes Gateway API实现域名访问应用
容器·kubernetes·gateway
worilb3 天前
Spring Cloud 学习与实践(9):Gateway + JWT 统一鉴权
学习·spring cloud·gateway
java_cj3 天前
从kubectl学Visitor模式:如何优雅处理多态数据结构的遍历
云原生·golang·k8s·访问者模式
Dontla4 天前
Kong Gateway(OSS)(Open Source Software)与 Kong Gateway(Enterprise)区别
gateway·kong
java_cj5 天前
从kubectl源码学Cobra:打造专业级Go命令行工具的完整实践
运维·开发语言·后端·云原生·golang·kubernetes·k8s
逻极6 天前
Kubernetes 从入门到精通:云原生容器编排
kubernetes·k8s·服务发现·容器编排
yxl874646466 天前
磐创PCTG-9013 Modbus转ProfibusDP工业协议转换器
网络·科技·物联网·gateway·信息与通信
阿洛学长6 天前
Kubernetes超详细教程,从零开始学习k8s,从入门到实战
k8s·ks
__log6 天前
401鉴权问题完全指南:从“门卫拦人“到“畅通无阻“
gateway
暗夜猎手-大魔王7 天前
hermes源码学习8--Gateway 内部机制
人工智能·gateway