одну машину, имею вот такой конфиг /etc/logstash/conf.d/logstash.conf
input {
tcp {
port => 5000
type => syslog
}
}
output {
elasticsearch {
hosts => ["172.16.10.76:9200"]
При запуске через
/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf
вижу в логе
[INFO ] 2023-09-14 10:24:04.127 [[main]-pipeline-manager] elasticsearch - Failed to perform request {:message=>"172.16.10.76:9200 failed to respond", :exception=>Manticore::ClientProtocolException, :cause=>#<Java::OrgApacheHttp::NoHttpResponseException: 172.16.10.76:9200 failed to respond>}
[WARN ] 2023-09-14 10:24:04.129 [[main]-pipeline-manager] elasticsearch - Attempted to resurrect connection to dead ES instance, but got an error {:url=>"http://172.16.10.76:9200/", :exception=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :message=>"Elasticsearch Unreachable: [http://172.16.10.76:9200/][Manticore::ClientProtocolException] 172.16.10.76:9200 failed to respond"}
Это плохо? Почему такое возникает?
nc -zv 172.16.10.76 9200 что выдаст? попробуй заменить адрес эластика на 127.0.0.1
nc -zv 172.16.10.76 9200 Connection to 172.16.10.76 9200 port [tcp/*] succeeded!
127.0.0.1 попробую чуть позже, 5 минут
эластик настроен по https или по http? поиграйтесь с настройками, например ssl_certificate_verification => false и hosts => ["https://localhost:9200"] мне это в таком же случае помогло
данный исходящий запрос выполняется из того же самого места где логстэш стоит, да ведь?
локалхост не помог [WARN ] 2023-09-14 11:31:56.383 [Ruby-0-Thread-9: /usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/logstash-output-elasticsearch-11.16.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:216] elasticsearch - Attempted to resurrect connection to dead ES instance, but got an error {:url=>"http://127.0.0.1:9200/", :exception=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :message=>"Elasticsearch Unreachable: [http://127.0.0.1:9200/][Manticore::ClientProtocolException] 127.0.0.1:9200 failed to respond"}
Стоит вот так xpack.security.http.ssl: enabled: true keystore.path: certs/http.p12 Попробовать в false ?
нет, попробуйте добавить https перед адресом эластика и добавить параметр ssl_certificate_verification => false в конфиге логстэша (там где параметры эластика указываются)
Вот так стало быть ? output { elasticsearch { hosts => ["https://127.0.0.1:9200"] ssl_certificate_verification => false } }
С таким стало вот так Got response code '401' contacting Elasticsearch at URL 'https://127.0.0.1:9200/'"} А где указываются логин и пароль? То бишь какие используются для подключения то?)
которые задали при установке эластика. Либо креды дополнительно созданного пользователя
я ставил через deb пакет, меня не спросили, я бы запомнил)
указываются там же в опциях подключения к эластику - https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html#_authentication_2
там их в консоль вывели, пользователь elastic, а пароль сгенерировался случайно
Обсуждают сегодня