根据一些参考文档,学习部署 ingress-http服务,出现了一些error信息,网上难找直接的处理方式,最后才发现是资源清单使用问题,还是得看官方文档说明。
创建ingress-http.yaml
使用的基本yaml配置如下——
# 文件名称: ingress-http.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-http
namespace: dev
spec:
rules:
- host: nginx.itheima.com
http:
paths:
- path: /
backend:
serviceName: nginx-service
servicePort: 80
- host: tomcat.itheima.com
http:
paths:
- path: /
backend:
serviceName: tomcat-service
servicePort: 8080
部署ingress服务
# 部署服务
kubectl create -f ingress-http.yaml
出现error信息
错误一:
error: resource mapping not found for name: "ingress-http" namespace: "dev" from "ingress-http.yaml": no matches for kind "Ingress" in version "extensions/v1beta1"
ensure CRDs are installed first
处理方式——
根据官方文档:Ingress对象资源清单说明
apiVersion: networking.k8s.io/v1
重新部署,仍然出现error信息
错误二:
* spec.rules[0].http.paths[0].pathType: Required value: pathType must be specified
paths下必须有pathType,否则创建就会失败,官方文档中也有说明文章来源:https://www.toymoban.com/news/detail-737285.html
PS:附上官方文档的对应的截图
文章来源地址https://www.toymoban.com/news/detail-737285.html
正确的yaml配置
apiVersion: networking.k8s.io/v1 # 注意最新的官方给定
kind: Ingress
metadata:
name: ingress-http
namespace: dev
spec:
rules:
- host: nginx.itheima.com
http:
paths:
- path: /
pathType: Prefix # required
backend:
serviceName: nginx-service
servicePort: 80
- host: tomcat.itheima.com
http:
paths:
- path: /
pathType: Prefix # required
backend:
serviceName: tomcat-service
servicePort: 8080
# 最终部署情况查看——
$ kubectl get ing -n dev
NAME CLASS HOSTS ADDRESS PORTS AGE
ingress-http <none> nginx.itheima.com,tomcat.itheima.com 80 12m
$ kubectl describe ing ingress-http -n dev
Name: ingress-http
Labels: <none>
Namespace: dev
Address:
Ingress Class: <none>
Default backend: <default>
Rules:
Host Path Backends
---- ---- --------
nginx.itheima.com
/ nginx-service:80 (10.244.1.91:80,10.244.1.92:80,10.244.1.93:80)
tomcat.itheima.com
/ tomcat-service:8080 (10.244.2.100:8080,10.244.2.101:8080,10.244.2.102:8080)
Annotations: <none>
Events: <none>
到了这里,关于ingress-http部署error: resource mapping not found for name...no matches for kind “Ingress“ in version的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!