Elasticsearch 를 사용하다보면 아래와 같은 로그가 발생하며 로그 수집이 되지 않는 경우가 있다. { _index: 'logstash-2024.02.14', _id: 'SgRcQ4wBSL1deYXKnJK2', status: 400, error: { type: 'validation_exception', reason: 'Validation Failed: 1: this action would add [2] shards, but this cluster currently has [999]/[1000] maximum normal shards open;' } } currently has [999]/[1000] maximum normal shards open 라는 문구는 노드당 최대 shard 개수를 초과했다..
Elasticsearch를 관리자는 관리자 입장에서 또 하나 중요한 부분은 로그에 대한 관리이다. 매일 수십~수백만건이상의 로그를 수집할 경우 언젠간 로그서버의 데이터는 용량 부족으로인한 문제가 발생할 수 있다. 관리자가 주기적으로 오래된 로그를 삭제해 주면 되지만 자동으로 오래된 데이터를 삭제하고 관리할수 있는 Qurator(큐레이터)를 사용하여 자동으로 로그 데이터를 삭제해 주는 시스템을 구축할 수 있다. 1. Curator 설치 pip install elasticsearch-curator ※ 만약 pip 이 설치되어 있지 않다면, epel 저장소를 추가한 후 python-pip을 설치해 주면 된다. yum install epel-release yum install python-pip - curato..
Logstash 에서 네트워크 장비 로그를 syslog(UDP 514)로 수집을 하려고 구성을 하였는데 logstash 실행을 하니 아래와 같은 에러 메시지가 나오면서 서비스가 실행이 되지 않는 경우가 발생을 하였습니다. 메시지를 보면 Permission denied - bind(2) for "0.0.0.0" port 514 라고 되어 있네요... 한눈에 봐도 권한 문제인 것을 알 수 있습니다. [2020-02-13T17:39:08,169][ERROR][logstash.inputs.udp] UDP listener died {:exception=>#, :backtrace=>["org/jruby/ext/soc ket/RubyUDPSocket.java:213:in `bind'", "/usr/share/logs..
ELK 설치 후 Kibana 웹페이지 접근할 때 로그인 인증을 통해서 접속이 가능하도록 보안 기능을 추가할 수 있습니다. ELK 에서도 X-pack 을 통해 보안, 알림, 모니터링, 그래프 등 추가적인 기능들을 제공을 하고 있지만 유로이기 때문에 패스하고 X-pack 기능없이 아파치 웹서버를 통해서 간단한 보안 인증을 거치도록 구성을 할 수 있습니다. 인증 방법은 htpasswd 를 통해 계정정보 파일을 저장하는 방법도 있고, 간단한 인증용 웹페이지 등을 만들수도 있는데, 저의 경우 현재 윈도우 ActiveDirectory를 사용하고 있어서 AD 계정을 통한 인증 방법에 대해 설명하겠습니다. 1. 아파치 웹서버 및 Ldap 모듈을 설치 [root@localhost ~]# yum install httpd ..
이번시간에는 ELK 를 활용하여 Fortigate 방화벽 로그를 수집하고 구성하는 방법에 대해서 알아보도록 하겠습니다. 로그 수집시 중요한 것은 장비 밴더사나 로그 특성등에 따라서 형식이 다 다르기 때문에 수집한 로그에 대해서 적절한 필터링을 통해 정형화 해 주어야 로그 분석 및 탐지가 용이하게 됩니다. 여기서는 방화벽에서 ELK Stack으로 로그를 전송을 Logstash.conf 필터를 통해서 로그 데이터 파싱하고 인덱싱하는 부분에 대해서 살펴보도록 하겠습니다. . 1. Fortigate 방화벽 Syslog 설정. 우선 Fortigate 방화벽 장비 CLI 접속하여 Logstash 서버로 로그 데이터를 전송하도록 설정을 해 줍니다. syslog 설정은 최대 4개까지 설정이 가능하며, Fortigate..
Elasticsearch는 Java 기반으로 동작을 합니다. Java는 가비시 컬렉터 (garbage-collected)에 의해서 관리가 되며, Java 객체는 힙(Heap) 이라고하는 메모리의 런타임 영역에 상주합니다. Elasticsearch는 기본적으로 1GB의 Heap 으로 구성이 되어 있습니다. 이 기본값은 대부분의 클러스터 구성에서 매우 작기 때문에 Elasticsearch에서 충분히 사용이 가능하도록 메모리 크기를 늘려 주어야 합니다. Elasticsearch에서 힙 크기를 변경하는 방법에는 두 가지가 있습니다. 가장 쉬운 것은 ES_HEAP_SIZE 이라는 환경 변수를 설정하는 것 입니다. 서버 프로세스가 시작되면이 환경 변수를 읽고 이에 따라 힙을 설정합니다. 예를 들어, 다음과 같이 명..
- Total
- Today
- Yesterday
- Ntopng
- pyqt
- Elasticsearch
- CISCO
- switch
- ubuntu
- EVE-ng
- Network
- Linux
- 개발
- Kibana
- Logstash
- 파이선
- routing
- maximum shards open error
- ldap
- Security
- EVE
- 코딩
- Elk
- ccie
- NTOP
- ccnp
- nms
- ELASTIC
- GUI
- Python
- ccna
- CentOS
- Fortigate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |