본문 바로가기

⭐ AWS/AWS ELK

AWS ELK를 구성해보자(2)

# 엘라스틱 서치관련 디렉토리 접근권한 부여하기

나중에 실행하거나 다른 소프트웨어와 연동할 때 디렉터리 접근권한때문에 에러가 나는 경우가 있으므로 미리 접근권한을 준다.

# 필자는 아래의 명령어로 권한을 변경하니 오히려 실행이 안되는 현상이 발생함.

# 혹시 Permission deny 같은 오류 발생한다면 아래의 권한 실행명령어를 롤백하고 다시 실행해 보시기 바래요.

sudo chown -R ec2-user:root /etc/elasticsearch
sudo chown -R ec2-user:root /usr/share/elasticsearch/
sudo chown -R ec2-user:root /etc/sysconfig/elasticsearch
sudo chown -R ec2-user:root /usr/share/elasticsearch/
sudo chown -R ec2-user:root /var/lib/elasticsearch

# Java Heap 메모리 설정

sudo vim /etc/elasticsearch/jvm.options

# 한글 형태소 분석기 설치하기

엘라스틱서치 디렉토리로 이동하고 nori플러그인을 설치한다.

cd /usr/share/elasticsearch/
sudo bin/elasticsearch-plugin install analysis-nori

# 혹시 제거할 일이 생기면 아래와 같이 플러그인을 제거하면 된다.

bin/elasticsearch-plugin remove analysis-nori

# AWS 이미지 만들기

EC2 인스턴스 > 이미지 및 템플릿 > 이미지생성 > 이동 > 아래와 같이 정보를 입력하고 생성을 한다.

이미지를 생성하는데 약 5~10분정도가 소요된다. 테스트를 하던 중간에 오류가 발생하거나 이전의 작업환경으로 돌아가고 싶은경우에는 바로 이 이미지를 새로 시작하여 이전의 작업환경으로 돌아갈 수 있다.

# 다음으로는 Kibana를 설치해보자.

yum을 이용해서 설치를 진행해보자.

sudo vi /etc/yum.repos.d/kibana.repo
[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

# 위의 저장된 내용을 최종으로 실행하는 설치 명령어

sudo yum install kibana-7.6.2 -y

클라우드환경이 아닌 경우 Kibana의 기본 트인 5601포트에 대해서 방화벽을 열어준다.

클라우드 환경인 경우 위에서 모든 포트에 대해 0.0.0.0/0 외부접속을 허용했기 때문에 따로 바꿀 게 없다.

# Kibana 설정파일을 수정하자

아래와 같이 네트워크 설정을 해준다.

sudo vi /etc/kibana/kibana.yml

- 아래와 같이 설정을 해준다.

# Kibana 실행하기

sudo service kibana start
sudo service kibana status

이제 웹브라우저에서 AWS공인IP:5601 을 입력해서 키바나 웹UI에 접속해보자. 접속이 되면 성공이다.

만일 접속이 안되면 키바나를 끄고 엘라스틱서치도 껐다가 다시 켜고 접속해보자.

#엘라스틱 서치 중지 후 시작
sudo service elasticsearch stop
sudo service elasticsearch start

#키바나 중지 후 시작
sudo service kibana stop
sudo service kibana start

# Kibana에 접속된 화면이다.

# 다음으로  Logstash를 설치를 해보자.

# Logstash 설치

yum을 이용해서 설치한다.

sudo vi /etc/yum.repos.d/logstash.repo

[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

# 위에 정의된 설치 항목을 실행하는 명령어

sudo yum install logstash-7.6.2 -y

# 이제 잘 설치가 되었나 확인하는 예제를 만들어보자.

예제파일은 그냥 ec2-user 홈 디렉터리에 만들어준다.

vi /home/ec2-user/test.conf

input { 
  stdin {} 
} 
output {
  stdout {} 
}

# 아래 명령어로 로그스태시를 실행한다.

sudo /usr/share/logstash/bin/logstash -f /home/ec2-user/test.conf

그리고 커서에 hello world 를 입력하고 엔터를 눌러본다.

그러면 아래와 같은 결과가 화면에 표시된다.

- 컨트롤 + c 를 누르면 빠져나간다.

다음포스팅으로 metricbeat와 filebeat에서 logstash, elasticsearch로 데이터가 적재되고 kibana로 시각화하는 내용에 대해서 

포스팅을 해보겠다.

'⭐ AWS > AWS ELK' 카테고리의 다른 글

AWS ELK를 구성해보자(3)  (0) 2021.08.14
AWS ELK를 구성해보자(1)  (0) 2021.08.14