GKE 入口 Https 重定向 - 无法识别 FrontendConfig
GKE ingress Https Redirect - FrontendConfig not recognized
我有一个同时具有 Http 和 Https 的 GKE 入口。我想将流量从端口 80 重定向到端口 443。
我找到了这个:
https://github.com/kubernetes/ingress-gce/issues/1075
这让这个:
https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#https_redirect.
提议的解决方案添加了一个带有 RedirectToHttps 标志的 FrontendConfig,它使用了一些 LoadBalancer 功能。然而,当我尝试添加 FrontendEndConfig 时,出现以下错误:
error: unable to recognize "ssl.yaml": no matches for kind "FrontendConfig" in version "networking.gke.io/v1beta1"
我也试过'networking.gke.io/v1'和'v1beta2'。
我的区域中可用的最新 GKE 版本是 1.17.13-gke.2001。我最近启动了集群,所以虽然我不知道如何检查 GKE 版本,但我估计最新版本是 运行。
有人知道为什么我的 kubectl 不能识别这种类型吗?
入口 yaml:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: basic-ingress
annotations:
FrontendConfig: my-frontend-config
kubernetes.io/ingress.global-static-ip-name: 'web-static-ip'
networking.gke.io/managed-certificates: mycertificate
# kubernetes.io/ingress.allow-http: "false"
spec:
rules:
- http:
paths:
- path: /*
backend:
serviceName: frontend
servicePort: 80
- path: /api/*
backend:
serviceName: backend
servicePort: 80
重定向 yaml:
apiVersion: networking.gke.io/v1beta1
kind: FrontendConfig
metadata:
name: my-frontend-config
spec:
redirectToHttps:
enabled: true
感谢您为我指明正确的方向!
我必须按照 MrKoopaKiller 的指示升级集群,并且还更改了注释:
FrontendConfig: my-frontend-config
至:
networking.gke.io/v1beta1.FrontendConfig: "my-frontend-config"
成功了!
另外:确保你有:
kubernetes.io/ingress.allow-http: "true"
我有一个同时具有 Http 和 Https 的 GKE 入口。我想将流量从端口 80 重定向到端口 443。 我找到了这个: https://github.com/kubernetes/ingress-gce/issues/1075 这让这个: https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#https_redirect.
提议的解决方案添加了一个带有 RedirectToHttps 标志的 FrontendConfig,它使用了一些 LoadBalancer 功能。然而,当我尝试添加 FrontendEndConfig 时,出现以下错误:
error: unable to recognize "ssl.yaml": no matches for kind "FrontendConfig" in version "networking.gke.io/v1beta1"
我也试过'networking.gke.io/v1'和'v1beta2'。 我的区域中可用的最新 GKE 版本是 1.17.13-gke.2001。我最近启动了集群,所以虽然我不知道如何检查 GKE 版本,但我估计最新版本是 运行。
有人知道为什么我的 kubectl 不能识别这种类型吗?
入口 yaml:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: basic-ingress
annotations:
FrontendConfig: my-frontend-config
kubernetes.io/ingress.global-static-ip-name: 'web-static-ip'
networking.gke.io/managed-certificates: mycertificate
# kubernetes.io/ingress.allow-http: "false"
spec:
rules:
- http:
paths:
- path: /*
backend:
serviceName: frontend
servicePort: 80
- path: /api/*
backend:
serviceName: backend
servicePort: 80
重定向 yaml:
apiVersion: networking.gke.io/v1beta1
kind: FrontendConfig
metadata:
name: my-frontend-config
spec:
redirectToHttps:
enabled: true
感谢您为我指明正确的方向!
我必须按照 MrKoopaKiller 的指示升级集群,并且还更改了注释:
FrontendConfig: my-frontend-config
至:
networking.gke.io/v1beta1.FrontendConfig: "my-frontend-config"
成功了!
另外:确保你有:
kubernetes.io/ingress.allow-http: "true"