Я развернул кибану в среде kubernetes. Если бы я дал это сервису типа LoadBalancer, я мог бы получить к нему доступ. Тем не менее, когда я пытаюсь получить доступ к нему через nginx-вход, это не удается. Конфигурация, которую я использую во входе nginx:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
name: my-ingress
spec:
rules:
- http:
paths:
- backend:
serviceName: kibana
servicePort: {{ .Values.kibanaPort }}
path: /kibana
Я запустил свою кибану со следующей настройкой:
- name: SERVER_BASEPATH
value: /kibana
, и я могу получить доступ к штрафу кибаны черезLoadBalancer
IP. Однако, когда я пытаюсь получить доступ через Ingress, большинство вызовов проходит нормально, за исключением вызова GET на vendors.bundle.js
, где он почти постоянно терпит неудачу.
Сообщения журнала во входе во время этого вызова следующие:
2019/10/25 07:31:48 [error] 430#430: *21284 upstream prematurely closed connection while sending to client, client: 10.142.0.84, server: _, request: "GET /kibana/bundles/vendors.bundle.js HTTP/2.0", upstream: "http://10.20.3.5:3000/kibana/bundles/vendors.bundle.js", host: "1.2.3.4", referrer: "https://1.2.3.4/kibana/app/kibana"
10.142.0.84 - [10.142.0.84] - - [25/Oct/2019:07:31:48 +0000] "GET /kibana/bundles/vendors.bundle.js HTTP/2.0" 200 1854133 "https://1.2.3.4/kibana/app/kibana" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36" 47 13.512 [some-service] 10.20.3.5:3000 7607326 13.513 200 506f778b25471822e62fbda2e57ccd6b
Я не уверен, почему я получаю upstream prematurely closed connection while sending to client
в разных браузерах. Я попытался установить proxy-connect-timeout
и proxy-read-timeout
на 100 секунд, и даже тогда это не удается. Я не уверен, происходит ли это из-за какого-либо размера по умолчанию или фрагментов.
Также интересно отметить, что только некоторые вызовы кибаны сбой, и не все сбой.
Вв браузере я вижу сообщение об ошибке:
GET https://<ip>/kibana/bundles/vendors.bundle.js net::ERR_SPDY_PROTOCOL_ERROR 200
в консоли разработчика.
У любого есть идеи о том, какие параметры конфигурации мне нужно передать на мой nginx-вход, чтобы сделать kibana. proxy_pass отлично?