@likejavascript

Помогите настроить logstash+elasticsearch

Пробую настроить logstash и elasticsearch по этой статье. Вроде все делаю как описано, но почему-то не удается передавать из logstash в elasticsearch расположенный на другом сервере.

Опишу ход моей настройки:

Машина А (192.168.56.101)

1. Скачал logstash последней версии (1.1.13):
sudo wget https://logstash.objects.dreamhost.com/release/logstash-1.1.13-flatjar.jar - O logstash.jar

2. Написал простой конфиг (/etc/logstash/sample.conf):
input {
    file {
      type => "logs"
      path => "/var/log/iptables.log"
    }
}

output {
  elasticsearch {
    embedded => false
    type => "logs"
    cluster => "es_logs"
    host => "192.168.56.102"
    max_inflight_requests => 500
  }
}


3. Запускаю так:
sudo java -jar /opt/logstash/logstash.jar agent -v -f /etc/logstash/sample.conf

netstat показывает, что слушается порт 9300

Машина Б (192.168.56.102)

1. Скачиваю elasticsearch 0.20.6 (эту версию требует logstash 1.1.13 согласно logstash.net/docs/1.1.13/outputs/elasticsearch)

2. В конфиге меняю только названия кластера, который указал в logsrash на машине А:
  cluster:
    name: "es_logs"

3. Запускаю elasticsearch:
  ./bin/elasticsearch

В логах написал:
. . [2013-08-12 23:22:46,629][INFO ][node ] [Virgo] {0.20.2}[17620]: started [2013-08-12 23:22:46,629][INFO ][gatway ] [Virgo] {0.20.2}[17620]: recovered [0] indicates into cluster_state
netstat показывает, что слушаются порты 9200 и 9300

Теперь когда в лог iptables попадает запись, на на машине А вываливается следующая ошибка:
: message=>"Failed to index an event, will retry", :exception=>org.elasticsearch.discovery.MasterNotDiscoveredException: waited for [1m]

Подскажите в чем может быть проблема?

P.S: Тестирую всю эту штуку на виртуалках, если эта ошибка с этим связана
  • Вопрос задан
  • 6618 просмотров
Пригласить эксперта
Ответы на вопрос 1
mobilesfinks
@mobilesfinks
сисадмин *nix
Вопрос старый, но может кто наткнётся.
Сейчас logstash не пишет в эластик если в последнем, в конфиге нет строк:
http.cors.allow-origin: "/.*/"
http.cors.enabled: true

после добавления всё работает.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы