Как решить проблему отказа в подключении в Kibana?
Я написал функцию для создания графиков в Kibana.
Во-первых, я установил Kibana и Elasticsearch на локальном ПК. Я отправляю запрос на создание данных и графиков и беру оттуда код встроенного iframe.
В этом сценарии все в порядке. Я могу создавать графики четко, и мои функции работают отлично. Я могу показывать графики на своей странице.
Затем я установил свой проект, kibana и elastic search на сервер. И я получаю эту ошибку внутри тега iframe:
2**...**6 отказано в подключении.
В чем может быть проблема?
часть моих функций
elasticsearch_address= 'http://localhost:9200'
self.es = Elasticsearch([elasticsearch_address], use_ssl=False,
verify_certs=False, ssl_show_warn=False, send_get_body_as='POST', )
Все работает нормально. Я могу получать и отправлять запросы на этот адрес. Поэтому я думаю, что проблема в Kibana.
часть моих функций
url3 = "http://localhost:5601/api/saved_obj..."
headers3 = {"Accept-Language": "tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3",
"Accept-Encoding": "gzip, deflate",
"Referer":
"http://localhost:5601/app/management/kibana/objects",
"Content-Type": "multipart/form-data; boundary=-..."
"Origin": "http://localhost:5601", "kbn-xsrf": "true", "Sec-
Fetch-Dest": "empty",
"Sec-Fetch-Mode": "cors", "Sec-Fetch-Site": "same-origin"}
data3 = "--...."
r3 = requests.post(url3, headers=headers3, data=data3)
destinationid = re.findall(r"\"destinationId\":\"(.*?)\"", r3.text)
destinationid = destinationid[-1]
request_text = "http://localhost:5601/app/dashboards#..."
user = request.user
user.iframe = request_text.replace("localhost", "2**.***.***.**")
user.save()
в части user.iframe
я получаю код iframe. Я меняю его на IP номер сервера, чтобы можно было зайти через браузер.
Где моя ошибка? Есть ли какая-нибудь настройка для этого в Kibana?
Необходимо проверить, привязаны ли Kibana и elastic search к правильным ip и порту
на вашем сервере, проверьте, есть ли у вас kibana.yml
server.port: 5601
server.host: 2**.***.***.****
server.name: "kibanaserver"
elasticsearch.url: "***.***.***.****:9200"
kibana.index: ".tkibana"
logging.dest: /var/log/kibana/kibana.log
Подобные вещи нужно сделать и в файле elasticsearch.yml
Затем попробуйте подключиться
curl -XGET "***.***.***.***:5601"
curl -XGET "***.***.***.***:9200"
здесь вы не должны получить отказ в подключении
Вы также можете проверить на своем сервере, прослушиваются ли порты
netstat -a -n | grep tcp | grep 9200
netstat -a -n | grep tcp | grep 5601