我正在尝试使用以下配置在运行 v1.18 的 EKS 集群中配置 Ingress 资源。运行 kubectl apply -f blah.yaml
后,我返回 error: unable to recognize "blah.yaml": no matches for kind "Ingress" inversion "networking.k8s.io/v1"
我认为这是 apiversion 不匹配。我错过了什么?
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: foo
spec:
rules:
- http:
paths:
- path: /boom
pathType: Prefix
backend:
service:
name: foo
port:
number: 80
答案 0 :(得分:1)
您可以使用
检查系统中networking.k8s.io
资源的 apiVersions 是什么
kubectl api-versions | grep networking.k8s.io
检查输出中是否有 networking.k8s.io/v1
。
答案 1 :(得分:1)
这是一个版本问题,下面的作品。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: foo
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /boom
backend:
serviceName: foo
servicePort: 80