ingress-创建对应的ingress
创建 nginx-deployment 的 Ingress 资源
题目要求
我们需要为名为 nginx-deployment 的部署(通过 nginx-service 服务暴露)创建一个 Ingress 资源,具体要求如下:
- Ingress 名称:
nginx-ingress-resource - 路径类型(pathType):Prefix(前缀匹配)
- 路径(path):
/shop - 后端服务名称:
nginx-service - 后端服务端口:80
- 禁用 SSL 重定向(ssl-redirect: false)
操作步骤
-
首先确认当前上下文:
kubectl config use-context kubernetes-admin@kubernetes -
创建 Ingress 资源 YAML 文件:
创建一个名为
nginx-ingress.yaml的文件,内容如下:apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: nginx-ingress-resource annotations: nginx.ingress.kubernetes.io/ssl-redirect: "false" spec: rules: - http: paths: - path: /shop pathType: Prefix backend: service: name: nginx-service port: number: 80 -
应用这个 YAML 文件:
kubectl apply -f nginx-ingress.yaml -
验证 Ingress 是否创建成功:
kubectl get ingress nginx-ingress-resource kubectl describe ingress nginx-ingress-resource
关键点解释
-
apiVersion:使用
networking.k8s.io/v1,这是 Kubernetes 1.19+ 推荐的 Ingress API 版本 -
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "false"明确禁用了 SSL 重定向
-
spec.rules:
- 定义了 HTTP 规则
- 路径
/shop会匹配所有以/shop开头的请求 - 这些请求会被路由到
nginx-service服务的 80 端口
-
pathType: Prefix:
- 表示路径匹配方式为前缀匹配
- 例如
/shop,/shop/,/shop/item1都会被匹配
这样配置后,所有访问 /shop 路径的请求都会被正确地路由到后端的 nginx 服务。

浙公网安备 33010602011771号