apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: elasticsearch-0
  namespace: efk
spec:
  ingressClassName: traefik
  rules:
  - host: elastic0.k8s.xunlang.home
    http:
      paths:
      - backend:
          service:
            name: elasticsearch-0
            port:
              number: 9200
        path: /
        pathType: Prefix

---

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: elasticsearch-1
  namespace: efk
spec:
  ingressClassName: traefik
  rules:
  - host: elastic1.k8s.xunlang.home
    http:
      paths:
      - backend:
          service:
            name: elasticsearch-1
            port:
              number: 9200
        path: /
        pathType: Prefix

---

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: elasticsearch-2
  namespace: efk
spec:
  ingressClassName: traefik
  rules:
  - host: elastic2.k8s.xunlang.home
    http:
      paths:
      - backend:
          service:
            name: elasticsearch-2
            port:
              number: 9200
        path: /
        pathType: Prefix

---

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: elasticsearch-3
  namespace: efk
spec:
  ingressClassName: traefik
  rules:
  - host: elastic3.k8s.xunlang.home
    http:
      paths:
      - backend:
          service:
            name: elasticsearch-3
            port:
              number: 9200
        path: /
        pathType: Prefix
---


apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: elasticsearch-ingress
  namespace: efk
spec:
  entryPoints:
    - web  # 使用 HTTP 入口点(如果需要 HTTPS,请改为 "websecure")
  routes:
  - match: Host(`elastic.k8s.xunlang.home`) && PathPrefix(`/`)
    kind: Rule
    services:
    - name: elasticsearch-lb
      port: 9200