Nifi на Kubernetes с входом nginx получает ошибку CORS

Я пытаюсь развернуть Nifi на k8s в качестве развертывания и использовать Ingress для предоставления URL-адреса общественности.

Выгружены сертификаты TLS при входе и попытке завершить работу на уровне Nginx.

Получение ошибки CORS при загрузке шаблона.

Ошибка:-

      Invalid CORS request

развертывание.yml:

      kind: Deployment
apiVersion: apps/v1
metadata:
  name: nifi
  namespace: default
  labels:
    app: nifi
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nifi
    spec:
      containers:
        - name: nifi
          image: nifi
          ports:
            - containerPort: 8080
              protocol: TCP
          env:
            - name: NIFI_WEB_HTTP_PORT
              value: '8080'

ingress.yml:

      apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/ssl-passthrough: "false"
    nginx.ingress.kubernetes.io/enable-cors: "true"
    nginx.ingress.kubernetes.io/cors-allow-methods: "PUT, GET, POST, OPTIONS"
    nginx.ingress.kubernetes.io/cors-allow-origin: "*"
    nginx.ingress.kubernetes.io/cors-allow-credentials: "true"
    nginx.ingress.kubernetes.io/proxy-ssl-server-name: "on"
  namespace: default
spec:
  tls:
  - hosts:
     - nifi.example.com
    secretName: nifi-tls-certs
  rules:
  - host: nifi.example.com
    http:
      paths:
        - path: /
          pathType: Prefix
          backend:
            service:
              name: nifi
              port:
                number: 8080

Пытался NIFI_WEB_PROXY_HOST=nifi.example.com:443 тоже, но бесполезно.

Ошибка журнала входа: -

      2021/09/21 14:23:14 [warn] 1348#1348: *847786 a client request body is buffered to a temporary file /tmp/client-body/0000000012, client: 43.225.23.99, server: nifi.example.com, request: "POST /nifi-api/process-groups/08bbe91d-017c-1000-dec3-0d02076b6539/templates/upload HTTP/2.0", host: "nifi.example.com", referrer: "https://nifi.example.com/nifi/"

1 ответ

Я могу исправить это с помощью приведенных ниже изменений аннотации входа.

          nginx.ingress.kubernetes.io/configuration-snippet: |
      proxy_set_header Host $http_host;  
      proxy_set_header Origin http://nifi.example.com; 

Ссылка: изменения конфигурации Nginx