Logstash не создает индекс на Elasticsearch
Я пытаюсь настроить стек ELK на экземпляре EC2, Ubuntu 14.04. Но все устанавливается, и все работает просто отлично, за исключением одной вещи.
Logstash не создает индекс в Elasticsearch. Всякий раз, когда я пытаюсь получить доступ к Kibana, он хочет, чтобы я выбрал индекс из Elasticsearch.
Logstash находится в узле ES, но индекс отсутствует. Вот сообщение, которое я получаю:
"Unable to fetch mapping. Do you have indices matching the pattern?"
Я что-то упускаю? Я следил за этим учебник: Цифровой Океан
EDIT: Вот скриншот ошибки, с которой я столкнулся: Еще один скриншот:
3 ответов
я получил идентичные результаты на Amazon AMI (Centos/RHEL clone)
в самом деле ровно как указано выше...до я ввел некоторые данные в Elastic-это создает первый day
индекс - тогда Кибана начинает работать. Мой простой .conf
- это:
input {
stdin {
type => "syslog"
}
}
output {
stdout {codec => rubydebug }
elasticsearch {
host => "localhost"
port => 9200
protocol => http
}
}
затем
cat /var/log/messages | logstash -f your.conf
почему stdin
вы спрашиваете? Ну, это не очень ясно нигде (также новый пользователь Logstash-нашел это очень неясно), что Logstash никогда не завершится (например при использовании file
плагин) - он предназначен для продолжения просмотра.
но использование stdin-Logstash будет работать-отправить данные в Elastic (который создает индекс), а затем уйти.
если бы я сделал то же самое выше с file
input plugin, он никогда не создаст индекс - Я не знаю, почему это так.
мне, наконец, удалось выявить проблему. По какой-то причине к порту 5000 обращается другая служба, которая не позволяет нам принимать любое входящее соединение. Поэтому все, что вам нужно сделать, это отредактировать logstash.conf-файл и измените порт на 5000
до 5001
или что-нибудь из вашего удобства.
убедитесь, что все ваши logstash-forwarders отправляют журналы в новый порт, и вам должно быть хорошо идти. Если вы создали logstash-forwarder.crt
использование FQDN метод, то logstash-forwarder должен указывать на то же самое FQDN, а не IP.
Это Kibana3 или 4?
Если это Kibana4, вы можете нажать на настройки в меню верхней строки, выберите индексы, а затем убедитесь, что имя индекса содержит " logstash -*", затем нажмите на имя "time-field" и выберите "@timestamp"
Я добавил скриншот моих настроек ниже, Будьте осторожны, какие параметры вы отмечаете.