我可以在 Kubernetes Ingress 中使用 IP 地址代替域名吗?

cle*_*ond 4 kubernetes kubernetes-ingress traefik-ingress

我使用 Traefik 作为 Kubernetes Ingress,我想知道是否可以使用 IP 地址而不是域名。例子:

http://ipaddress/service1
Run Code Online (Sandbox Code Playgroud)
http://ipdadress/service2
Run Code Online (Sandbox Code Playgroud)

我的入口配置:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: service1
  namespace: staging
  annotations:
    kubernetes.io/ingress.class: traefik
    traefik.frontend.rule.type: PathPrefixStrip
spec:
  rules:
  - host: mydomain.dev
    http:
      paths:
      - path: /service1
        backend:
          serviceName: service1
          servicePort: 3000
Run Code Online (Sandbox Code Playgroud)

Aki*_*zer 13

由于它是第 7 层负载均衡器,因此您不能直接使用 IP 地址。但是,如果您使用nip.io(例如 192-168-1-1.nip.io)作为主机名,那么它就可以工作,并且您可以执行使用普通主机名定期执行的所有操作,例如重定向 app1.192-168- 1-1.nip.io 到 app1 和 192-168-1-1.nip.io/app2 到 app2 等。