상세 컨텐츠

본문 제목

Graylog 5 설치 (with Opensearch 2.x)

카테고리 없음

by Keunwoo.LEE 2023. 4. 5. 13:31

본문

반응형

Graylog 5.0 Install (with Opensearch 2.x)

Graylog 5.0 에서 달라진점

  • Opensearch 2.x를 지원함
    > Elasticsearch가 7.10.2 이후 버전부터 License 정책을 변경하여 더이상 Elasticsearch를 이용한 유료 상품을 판매하기가 어렵게 됨
    > AWS가 Elasticsearch의 마지막 오픈소스 버전인 7.10.2 Fork 버전으로 만든게 Opensearch
    > Opensearch는 계속 오픈소스 형태로 배포됨
    > Graylog도 7.10.2 버전 이후의 Elasticsearch를 지원하지 않음
  • 설치 절차를 단순화하기 위해 통합 플러그인 설치 패키지와 함께 번들로 제공
  • MongoDB 5.0 및 6.0을 지원함

환경

  • VMware ESXi 가상 서버
  • OS : Centos 7.9
  • CPU : 16 Core / Memory 32 GB / HDD 1.5 TB

사전 요구 사항

  • OpenJDK 1.7 이상 --> 1.8 버전이 설치되어 있어 PASS!
  • pwgen 설치
> yum install epel-release
> yum install pwgen

설치 버전

  • MongoDB : 6.0.5-1
  • Opensearch : 2.6.0-1
  • Graylog Server : 5.0.5-1

Default File Location

# Graylog
Configuration : /etc/graylog/server/server.conf
Logging : /etc/graylog/server/log4j2.xml
Plugins : /usr/share/graylog-server/plugin
Binaries : /usr/share/graylog-server/bin
Scripts : /usr/share/graylog-server/scripts
JVM settings : /etc/sysconfig/graylog-server
Message journal files : /var/lib/graylog-server/journal
Log Files : /var/log/graylog-server/

# OpenSearch
Configuration : /etc/opensearch/opensearch.yml
Binaries : /usr/share/opensearch/bin
JVM settings : /etc/opensearch/jvm.option
Data : /var/lib/opensearch
Log Files : /var/log/opensearch

MongoDB 설치

yum repo 설정

> vi /etc/yum.repos.d/mongodb-org.repo

[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc

MongoDB 설치

> yum install mongodb-org

서비스 등록 및 실행

> systemctl daemon-reload
> systemctl enable mongod.service
> systemctl start mongod.service
> systemctl status mongod.service

Transparent Huge Pages(THP) 기능 disable

  • 많은 메모리를 요구하는 어플리케이션을 위한 THP 기능이 성능저하를 유발할 수 있어 해당 기능 disable
  • THP disable을 서비스로 등록하여 비활성화 하도록 구현

서비스 생성

vi /etc/systemd/system/disable-transparent-huge-pages.service

Description=Disable Transparent Huge Pages (THP)
DefaultDependencies=no
After=sysinit.target local-fs.target
[Service]
Type=oneshot
ExecStart=/bin/sh -c 'echo never | tee /sys/kernel/mm/transparent_hugepage/enabled > /dev/null'
[Install]
WantedBy=basic.target

서비스 등록 및 실행

> systemctl daemon-reload
> systemctl enable disable-transparent-huge-pages.service
> systemctl start disable-transparent-huge-pages.service
> systemctl status disable-transparent-huge-pages.service

Opensearch 설치

yum repo 설정

> rpm --import https://artifacts.opensearch.org/publickeys/opensearch.pgp

> vi /etc/yum.repos.d/opensearch-2.x.repo

[opensearch-2.x]
name=OpenSearch 2.x
baseurl=https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/yum
enabled=1
repo_gpgcheck=1
gpgcheck=1
gpgkey=https://artifacts.opensearch.org/publickeys/opensearch.pgp
autorefresh=1
type=rpm-md

Opensearch 설치

> yum install opensearch

설정파일 수정

> vi /etc/opensearch/opensearch.yml

path.data: /var/lib/opensearch  ## 다른 파티션에 저장하고 싶으면 이부분을 변경 ##
path.logs: /var/log/opensearch

cluster.name: graylog
action.auto_create_index: false
plugins.security.disabled: true
network.host: 0.0.0.0  
discovery.type: single-node

서비스 등록 및 실행

> systemctl daemon-reload
> systemctl enable opensearch
> systemctl start opensearch
> systemctl status opensearch

Graylog 설치

yum repo 설정

> rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-5.0-repository_latest.rpm

Graylog 설치

> yum install graylog-server

server.conf 설정

아래 명령어를 이용하여 server.conf 패스워드 설정

1. To create your root_password_sha2, run the following command:
> echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1
Enter Password: 관리자 패스워드 입력
ovYF7ga1lkMuSeT5vRjsDXTDRmSeh7gQshDZoEYSfn8MTIn0RB0vygvSAPKg1lh3iyqjKiT60T34vkkgF1PJCnBT9fnp7DMi

2. To generate a password_secret:
> yum install pwgen-2.08-1.el7.x86_64.rpm
> pwgen -N 1 -s 96
Gep1jjGorW4939dEOMP9j92KkbqUd6whIZXv1pht7ae8cgBAEelHvqovptuAz2tckrOi4C3KKUoWKVdCWQHX6zbYYxZpchgE

root_timezone 변경

root_timezone = Asia/Seoul

bind_address 등록

http_bind_address = 0.0.0.0:9000

서비스 등록 및 실행

> systemctl daemon-reload
> systemctl enable graylog-server.service
> systemctl start graylog-server.service
> systemctl status graylog-server.service

Graylog Web UI 접속

http://graylog-server-ip:9000

Filebeat 및 Sidecar를 이용한 로그 수집은 아래의 Graylog 4 버전 설치 관련 글 참조

 

2022.10.12 - [분류 전체보기] - 대용량 로그수십을 위한 Graylog 서버 설치방법 (무료버전)


 

 

반응형

댓글 영역