在 Kubernetes 的 Ingress 资源中,有三种常见的方式来定义路由规则:基于主机名、基于路径和基于路径前缀。

  1. 基于主机名:使用基于主机名的 Ingress 规则可以将流量根据不同的主机名路由到不同的后端服务。例如:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
spec:
  rules:
    - host: service1.example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: service1
                port:
                  number: 80
    - host: service2.example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: service2
                port:
                  number: 80

上述示例中,通过'host'字段定义了两个不同的主机名,分别路由到名为'service1'和'service2'的后端服务。

  1. 基于路径:使用基于路径的 Ingress 规则可以根据不同的 URL 路径来路由流量到不同的后端服务。例如:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
spec:
  rules:
    - http:
        paths:
          - path: /service1
            pathType: Prefix
            backend:
              service:
                name: service1
                port:
                  number: 80
          - path: /service2
            pathType: Prefix
            backend:
              service:
                name: service2
                port:
                  number: 80

上述示例中,通过'path'字段定义了两个不同的 URL 路径,分别路由到名为'service1'和'service2'的后端服务。

  1. 基于路径前缀:使用基于路径前缀的 Ingress 规则可以将具有共同前缀的路径路由到同一个后端服务。例如:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
spec:
  rules:
    - http:
        paths:
          - path: /api
            pathType: Prefix
            backend:
              service:
                name: api-service
                port:
                  number: 80
          - path: /app
            pathType: Prefix
            backend:
              service:
                name: app-service
                port:
                  number: 80

上述示例中,所有以'/api'开头的路径将路由到'api-service',而以'/app'开头的路径将路由到'app-service'。

通过使用这些不同的方式,你可以根据需要灵活地定义 Ingress 规则来路由流量到相应的后端服务。


原文地址: https://www.cveoy.top/t/topic/QSW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录