26 10월 2016 출시

Beats 5.0.0 출시

By Tudor GolubencoMonica Sarbu

드디어 선보이게 되었습니다! 약 11개월 동안 5개의 알파, 1개의 베타, 1개의 RC 버전으로 진행된 작업 끝에 새로운 정식 버전의 데이터 수집기가 출시됩니다. 오늘 출시되는 것은 Beats뿐이 아닙니다. 이번 릴리스부터는 Elastic stack에 포함된 모든 프로젝트가 패치 수준까지 동일한 버전 번호로 동시에 출시됩니다. 이것이 바로 Beats 버전 번호가 1.3.1에서 5.0.0으로 건너뛴 이유입니다.

알파와 베타를 체험해보셨다면 이미 그 기능을 알고 계실 것이라고 생각하며 지금 다운로드 링크를 통해 바로 사용해보실 수 있습니다. 아직 체험 해 보지 않으셨다면, 5.0의 주요 변경 사항을 소개하는 이 블로그 포스트를 통해 알아볼 수 있습니다.

1.x에서 업그레이드하는 경우에는 주요 변경 사항 문서와 업그레이드 가이드 를 읽어보세요.

Metricbeat - 메트릭을 위한 도구

Metricbeat가 Topbeat를 대신해 Elastic stack의 메트릭 수집을 위한 주요 도구가 되었습니다. Topbeat와 마찬가지로, Metricbeat는 호스트와 프로세스별 리소스(CPU, 메모리, 디스크, 네트워크)에 관한 통계와 같은 “top”를 수집합니다. Topbeat와 다르게 Metricbeat는 Apache, HAProxy, MongoDB, MySQL, Nginx, PostgreSQL, Redis, Zookeeper나 향후 출시될 여러 시스템의 메트릭도 수집할 수 있습니다.

Metricbeat의 시스템 모듈은 Topbeat의 모든 기능을 포함하며, 컨테이너별 메트릭, 디스크 IO 메트릭, 네트워크 IO 메트릭과 같은 새롭고 확대된 기능을 지원합니다. 두 Beats의 구성은 호환되지 않지만, 하나에서 다른 하나로 매우 간단히 마이그레이션 할 수 있습니다.

이뿐만이 아닙니다. Metricbeat가 Elasticsearch 5.0의 새로운 넘버 타입과 저장 방식을 활용하게 되면서, 색인 및 검색 속도가 빨라지고, 디스크와 메모리 사용 효율이 높아졌습니다.

Filebeat - 내부적인 개선사항들

Filebeat가 수집된 파일 상태를 저장하는 방식이 개선되었습니다(열린 파일의 식별, 각 파일의 inode 번호, 각 파일을 읽은 후 경과 시간 등). 파일을 close 또는 ignore 하는 옵션에 대한 설정도 개선되었습니다. 이러한 변경 사항은 코너 케이스(아이노드 재사용, 또는 매우 빠른 파일 순환)에 대한 Filebeat의 기능성을 개선할 것으로 기대되므로, 업그레이드하시는 것을 권장합니다.

또한, 이제 Filebeat가 로그 줄에서 JSON 개체를 원시적으로 디코딩할 수 있습니다. 이 기능은 로깅 프로그램이 JSON 포맷으로 직접 메타데이터를 작성하는 구조적 로깅 에 유용합니다.

Packetbeat 플로우

이제 Packetbeat가 상위 계층 프로토콜에 관계없이 IP 및 TCP 흐름에 대한 패킷 카운트와 바이트 카운트 등의 통계를 보고합니다. 이 기능을 통해 Packetbeat에서 새로운 사용 사례가 가능해지면서, 네트워크를 통한 트래픽 흐름을 이해하고 암호화 트래픽의 일부를 파악할 수도 있게 되었습니다.

추가적으로, Packetbeat는 AMQP, Cassandra, EDNS, DNSSEC, NFS를 포함한 일부 애플리케이션 프로토콜도 지원합니다.

출력 필터링 프로세스 기능

Beats “프로세서"는 이벤트가 Beat에서 전송되기 직전에 이벤트를 조작하는 단순한 규칙입니다. 성격은 Ingest Node 프로세서나 Logstash 필터와 유사하지만, 그 기능성은 절대 같지 않습니다. Beats 프로세서는 경량이며, Logstash에 의해 폐기될 너무 많은 데이터가 네트워크를 통해 전송되지 않도록 방지하는 데이터 필터링에 중점을 두고 있습니다.

즉, 프로세서가 전송해야 하는 데이터를 선택하는 경우에 다양한 유연성을 제공합니다. 다음은 간단한 예시입니다:

processors:
- drop_event:
   when:
     equals:
       http.code: 200
- drop_fields:
    fields: [“http.phrase”]

Kafka 출력

사용자의 피드백을 수렴하여, 기존의 Redis 출력을 크게 향상시키는 동시에 Beats에서 원시 Kafka 출력을 지원하는 기능을 추가했습니다. 이는 모든 메시지를 Kafka 큐를 통해 전달하는 경우에 Beats와 Kafka 사이에 별도의 Logstash 인스턴스가 더 이상 필요하지 않다는 의미입니다.

Beats Kafka 출력은 Kafka 버전 0.8, 0.9, 0.10과 호환되며, 암호화, 인증, 다이나믹 토픽 및 파티션 선택을 지원합니다.

유연한 환경설정

Beats 5.0은 동일하게 YAML 포맷 기반의 설정을 사용하지만, Beats의 배포를 더욱 쉽고 만족스럽게 수행할 수 있도록 도와주는 여러 가지 꼼꼼한 기능들로 개선되었습니다. 새로운 기능으로는 네임스페이스, 참조 변수 및 정규식 지원 개선,  -E 플래그를 이용한 명령줄 설정 덮어쓰기 기능이 있습니다.

새로운 Beats 구성 언어에 관한 자세한 내용은 도큐먼트에서 확인할 수 있습니다.

추가 정보

새로운 5.0에 대한 추가 정보를 원하십니까? 릴리스 노트 와 사전 릴리스에 관한 블로그 포스트를 참조하세요.

도움을 주신 참여자와 커뮤니티에 감사드립니다

이제, 함께 파티를 즐길 시간입니다! 

Beats team 5.0

가장 먼저, 5.0 사전-릴리스를 검증하고 확인된 issue들을 게시해 주신 모든 분들께 감사드립니다. 기여해 주신 모든 분들께 감사의 표현으로 Elastic이 소정의 선물을 보내드립니다.

5.0 릴리스에 중요한 코드를 제공해 주신 다음과 같은 커뮤니티 멤버 여러분에게도 특히 감사드립니다.

커뮤니티 전체를 대표하여 감사의 말씀을 전하며 5.0을 즐기시기를 바랍니다!