Elasticsearch with Docker에서 Kibana로 (NetFlow 시각화)

Fluentd에서 얻은 NetFlow v5의 데이터를 Kibana로 표시하기 위한 환경을 Docker를 사용해 구축합니다.



1. 전단으로서, docker와 docker-compose는 넣어 둔다



Ubuntu16.04LTS에서 Docker까지

2. 메모리 맵의 상한값을 올려 둔다



/etc/sysctl.conf
vm.max_map_count=262144

3. docker-compose.yml 을 아래와 같이 기술.



~/neflow-compose/docker-compose.yml
fluentd:
  build: fluentd
  ports:
    - 24224:24224
    - 24224:24224/udp
  volumes:
    - ./fluentd:/fluentd/etc
    - ./fluentd/plugins:/fluentd/plugins
  links:
      - elasticsearch

elasticsearch:
  image: elasticsearch:5.6.4
  ports:
    - 9200:9200
    - 9300:9300
  expose:
    - 9300

kibana:
  image: kibana:5.6.4
  ports:
    - 5601:5601
  environment:
      - ELASTICSEARCH_URL=http://172.17.0.2:9200
#      - ELASTICSEARCH_URL=http://elasticsearch:9200
  links:
      - elasticsearch

4. fluentd에서 elastic search로 보내는 설정 만들기



~/netflow-compose/fluentd/Dockerfile
FROM fluent/fluentd:latest-onbuild

#USER fluent

WORKDIR ~/netflow-compose/fluentd
ENV PATH ~/.gem/ruby/2.3.0/bin:$PATH
RUN apk add --no-cache --update --virtual=build-dependencies ruby-dev build-base && \
  gem install fluent-plugin-rewrite-tag-filter && \
  apk del build-dependencies && \
  rm -rf /tmp/* /var/tmp/* /var/cache/apt/*
RUN gem install fluent-plugin-netflow
RUN gem install fluent-plugin-secure-forward
RUN gem install fluent-plugin-elasticsearch # Elasticsearch連携

#EXPOSE 24284
EXPOSE 24224

CMD fluentd -c /fluentd/etc/fluent.conf -p /fluentd/plugins -vv

~/netflow-compose/fluentd/fluent.conf
<source>
  type netflow
  tag netflow.event
  port 24224
</source>
<match netflow.event>
  @type copy
  <store>
    @type file
    path         /fluentd/log/data.*.log
    symlink_path /fluentd/log/data.log
    append       true
  </store>
  <store>
    @type elasticsearch
#    host localhost
#    host elasticsearch
    host 172.17.0.2
    port 9200
    type_name netflow
    logstash_format true
    logstash_prefix flow
    logstash_dateformat %Y%m%d
  </store>
</match>

5. 그리고는 docker-compose up 한다


$ sudo docker-compose up
시작시 로그가 진정되면 Kibana를 열어보십시오.


참고 링크

【Docker】 Fluentd와 Elasticsearch와 Re:dash로 로그 관리
htps : // 이 m / 나루미 _ / ms / 59237554 1c0 713d9

・Docker 공식
htps //w w. 에 s c. 코/구이데/엔/에ぁs치c세아 rch/레후에렌세/5.6/도 c케 r. HTML
h tp // w w. 에스 c. 코/구이데/엔/에ぁs치c세아 rch/레후에렌세/5.6/도c케 r. html # c rp p dc

· enqueueing all chunks in buffer 정보
htps : // 이 m/타츠나 m/있어 ms/bd7006에 483f3b3c64309

・fluentd의 Ruby 도입에 대해서는 이 편을 참고로,
h tp // c 롯 s-b ck777. 하테나 bぉg. 코m/엔트리/2017/11/15/190000

좋은 웹페이지 즐겨찾기