kubernetes v1.22版本中Ingress配置
- 部署Ingress-nginx过程中,在Ingress配置文件部署时遇到问题,查阅到网上的配置文件例子都是相对较旧的版本,于是查看官方文档,发现1.19版本以后,Ingress所在的apiVersion和配置文件参数都有所更改。
- kubernetes在1.19版本中已经将Ingress的apiVersion从extensions/v1beta1中移到了networking.k8s.io/v1中,并且在1.22版本中只能从networking.k8s.io/v1中获取,原话:“ The extensions/v1beta1 and networking.k8s.io/v1beta1 API versions of Ingress is no longer served as of v1.22。Migrate manifests and API clients to use the networking.k8s.io/v1 API version, available since v1.19.”
- 附上新版ingress.yaml参考(格式参考),文章最后附上k8s Ingress配置的官方说明文档,看不明白的可以去看官方文档
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: yourservice
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/use-regex: "true"
spec:
rules:
- host: yourhost
http:
paths:
- path: /
pathType: Exact #值类型说明参考官方文档,有Exact和Prefix两种
backend:
service:
name: yourservicename
port:
number: youserviceport
# name: yourportname
# port的number和name互相冲突,同时只能配置一个
kubernetes-v1.22 Ingress ApiReference:https://kubernetes.io/docs/reference/kubernetes-api/service-resources/ingress-v1/