[ElasticSearch] CentOS7 ELK Stack 설치

목적 : CentOS7에서 ELK Stack 환경 구성

01. Java 설치

  1. 자바 버전 확인
    # java -version

  2. 자바 설치
    1) open-jdk 1.8 설치 (자바가 없다면)
    # yum install java-1.8.0-openjdk
    # yum install java-1.8.0-openjdk-devel
    .
    2) 환경 변수 등록
    readlink -f /usr/bin/java 명령어를 치고 아래에 출력되는 경로 복사 JAVA_HOME = 복사한 경로(/jre/bin/java 빼고)

      # cat >> /etc/profile <<EOF
      JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64
      PATH=$PATH:$JAVA_HOME/bin
      CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar

      export JAVA_HOME PATH CLASSPATH

      EOF

.

3) # source /etc/profile 명령어로 활성화

4) 환경 변수 등록 테스트

  # echo $JAVA_HOME
  # echo $PATH
  # echo $CLASSPATH

02. ES 설치

1) rpm으로 설치
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2) elasticsearch.repo 수정

# cat >> /etc/yum.repos.d/elasticsearch.repo <<EOF

[elasticsearch]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=0
autorefresh=1
type=rpm-md

EOF

3) install
# yum install --enablerepo=elasticsearch elasticsearch

4) elasticsearch.yml 수정
# vi /etc/elasticsearch/elasticsearch.yml

  • 주석 제거
    network.host : localhost
    http.port:9200

5) es 재시작 및 설치 확인
# systemctl restart elasticsearch
# curl http://127.0.0.1:9200
아래와 같이 나오면 제대로 설치 된 것임!

03.Kibana 설치

1) rpm으로 설치
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2) kibana.repo 수정

# cat >> /etc/yum.repos.d/kibana.repo <<EOF

[kibana-7.x]
name=Kibana repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

EOF

3) install
# yum install kibana

4) kibana.yml 수정
# vi /etc/kibana/kibana.yml

  • 주석 제거
    server.port:5601
    server.host: "localhost"
    elasticsearch.hosts: ["http://localhost:9200"]

5) kibana 재시작 및 설치 확인
# systemctl restart kibana
http://127.0.0.1:5601
아래와 같이 나오면 제대로 설치 된 것

04.logstash 설치

1) rpm으로 설치
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2) logstash.repo 수정

# cat >> /etc/yum.repos.d/logstash.repo <<EOF

[logstash-7.x]
name=Elastic repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

EOF

3) install
# yum install logstash

4) filebeat && elasticsearch 연결 설정
elastic search 공식사이트에 나와있는 설치 방법을 따라서 진행

  • # cd /etc/logstash에 config폴더에 demo-metrics-pipeline.conf를 생성
  • conf 파일에 내용 추가
    +port => 5044 밑에 host =>"0.0.0.0" 추가
  • 아래 코드 입력
  # cat > /etc/logstash/config/demo-metrics-pipeline.conf <<EOF

  input {
    beats {
      port => 5044
      host => "0.0.0.0"
    }
  }

  filter {
    if [system][process] {
      if [system][process][cmdline] {
        grok {
          match => {
            "[system][process][cmdline]" => "^%{PATH:[system][process][cmdline_path]}"
          }
          remove_field => "[system][process][cmdline]"
        }
      }
    }
  }

  output {
    elasticsearch {
      hosts => "localhost:9200"
      manage_template => false
      index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
    }
  }

  EOF

5) logstash 재실행
# systemctl restart logstash => 오류 발생

위와 같은 오류가 발생했을때 아래 방법을 따라하면 됨 (참고)

  1. logstash service status를 확인
    Unit logstash.service could not be found. 이런 메시지가 뜰 것이다.
  2. 아래 커멘드 입력
    /usr/share/logstash/bin/system-install /etc/logstash/startup.options systemd
  3. logstash status 확인
    service logstash status

05.filebeat 설치

1) rpm으로 설치
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2) install
# yum install filebeat

3) filebeat.yml 수정
# vi /etc/filebeat/filebeat.yml

  • logstash를 이용해 elasticsearch로 보내고 싶을 때
    • output.elasticsearch 부분을 주석
    #output.elasticsearch:
      # Array of hosts to connect to.
      #hosts: ["localhost:9200"]
    • output.logstash 부분 주석 제거
output.logstash:
  # The Logstash hosts
  hosts: ["localhost:5044"]

4) system 활성화 및 modules 리스트 확인
filebeat modules enable system
filebeat modules list

06. 시스템 가동

  • 모든 시스템 가동
systemctl restart elasticsearch
systemctl restart logstash
systemctl restart kibana
systemctl restart filebeat

여기서부터의 내용은 참고 블로그 내용과 동일하다!
블로그 내용을 따라하면
요런 kibana 결과가 나온다

좋은 웹페이지 즐겨찾기