Skip to main content

MarkLogic Server on Kubernetes

MarkLogic Load Balancer Ingress configuration

An Ingress can be created to expose the MarkLogic Load Balancer via the HAProxy Ingress Controller.

To expose a MarkLogic cluster, deploy one Ingress per application server:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  labels:
    app.kubernetes.io/instance: ml-enode
    app.kubernetes.io/name: ml-lb
  name: ml-enode-ml-lb-admin
  namespace: ml-lb
spec:
  ingressClassName: haproxy
  rules:
  - http:
      paths:
      - backend:
          service:
            name: ml-enode-ml-lb
            port:
              number: 8001
        path: /
        pathType: Prefix
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  labels:
    app.kubernetes.io/instance: ml-enode
    app.kubernetes.io/name: ml-lb
  name: ml-enode-ml-lb-console
  namespace: ml-lb
spec:
  ingressClassName: haproxy
  rules:
  - http:
      paths:
      - backend:
          service:
            name: ml-enode-ml-lb
            port:
              number: 8000
        path: /
        pathType: Prefix
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  labels:
    app.kubernetes.io/instance: ml-enode
    app.kubernetes.io/name: ml-lb
  name: ml-enode-ml-lb-manage
  namespace: ml-lb
spec:
  ingressClassName: haproxy
  rules:
  - http:
      paths:
      - backend:
          service:
            name: ml-enode-ml-lb
            port:
              number: 8002
        path: /
        pathType: Prefix

Items specified

Code

Description

IngressClass

Set to haproxy in order to use the HAProxy Ingress Controller.