EFK与Searchguard

时间:2018-07-19 09:30:56

标签: elasticsearch kibana fluentd

我已经安装了EFK堆栈来记录nginx访问日志。

使用全新安装时,无法将数据从Fluentd传输到elasticsearch,没有任何问题。但是,我安装了searchguard来对elasticsearch和kibana实施身份验证。现在,我可以使用searchguards演示用户凭据登录到Kibana和elasticsearch。

现在我的问题是,fluentd无法连接到elasticsearch。从td-agent日志获取以下消息:

2018-07-19 15:20:34 +0600 [warn]: #0 failed to flush the buffer. retry_time=5 next_retry_seconds=2018-07-19 15:20:34 +0600 chunk="57156af05dd7bbc43d0b1323fddb2cd0" error_class=Fluent::Plugin::ElasticsearchOutput::ConnectionFailure error="Can not reach Elasticsearch cluster ({:host=>\"<elasticsearch-ip>\", :port=>9200, :scheme=>\"http\", :user=>\"logstash\", :password=>\"obfuscated\"})!"

这是我的Fluentd配置

<source>
    @type forward
</source>
<match user_count.**>
    @type copy
    <store>
    @type elasticsearch
        host https://<elasticsearch-ip>
        port 9200
    ssl_verify false
    scheme https
        user "logstash"
        password "<logstash-password>"
        index_name "custom_user_count"
        include_tag_key true
        tag_key "custom_user_count"
        logstash_format true
        logstash_prefix "custom_user_count"
        type_name "custom_user_count"
    utc_index false
        <buffer>
            flush_interval 2s
        </buffer>
    </store>
</match>

sg_roles.yml:

sg_logstash:
  cluster:
    - CLUSTER_MONITOR
    - CLUSTER_COMPOSITE_OPS
    - indices:admin/template/get
    - indices:admin/template/put
  indices:
    'custom*':
      '*':
        - CRUD
        - CREATE_INDEX
    'logstash-*':
      '*':
        - CRUD
        - CREATE_INDEX
    '*beat*':
      '*':
        - CRUD
        - CREATE_INDEX

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

似乎td-agent默认使用TLSv1 将ssl_version TLSv1_2添加到配置中,现在可以使用