ELK8 - Cent os7 for ELK

hoegon kim·2023년 5월 9일
0

ELK

목록 보기
7/10
post-thumbnail

1. Oracle VM VirtualBox 설치

https://www.oracle.com/kr/virtualization/virtualbox/

2. Cent OS IOS 다운

https://www.centos.org/download/

작성자는

경로 : C:\install_down

다운받은 파일 : CentOS-7-x86_64-DVD-2009

VM virtualBox 에 cent os 설치 과정

이름 설정

일반적인 화면에서 새로만들기 클릭 → 지정할 OS 이름 설정

이름 : centos7

메모리 설정 및 cpu 코어 갯수 설정

하드디스크 설정

가성머신 1차 완료 및 확인

네트워크 설정

설치된 가상머신 우클릭 설정 → 네트워크 클릭

어댑터에 브리지로 반드시 설정 후에 진행해야한다.

저장소 설정

저장소에 광학 드라이브 옆에 CD처럼 생긴거 클릭하여

이전 작업에 CentOS-7-x86_64-DVD-2009 iso 를 넣어준다.

이후 실행

언어 설정

centos7 GUI 환경 설치방법

SOFTWARE SELECTION 클릭 → Server with GUI 클릭

INSTALLATION DESTINATION

INSTALLATION DESTINATION 클릭

Begin installation 클릭

루트 패스워드와 유저 생성 비밀번호 설정

ROOT PASSWORD 와 USER CREATION 생성을 해준다.

루트패스워드와 유저패스워드는 일치시켜주는게 좋다.

접근할때 헷깔린다.

처음 설치 후 메인화면

CentOS Linux (3.10.0-60.e17.x86_64) 7 (core) → Enter

라인센스 확인

FINISH CONFIGURATION 클릭

설정했던 계정 로그인

GUI 언어 설정

키보드 설정

이후 NEXT 및 Skip 해주면 된다.

화면 해상도 설정

Applications → System Tools → Settings → Devices

네트워크 열어두기

반드시 OFF → ON 으로 해야된다.

VirtualBox Guest Additions installation

해당되는 것을 설치해야 centos 사용하기에 편리하기 때문에 해당기능도 설치하자

설치하는 방법

장치 → 게스트 확장 cd 이미지 삽입을 눌러서 run 하면 다음과 같이 진행된다.

3. centos ubuntu 연동 방법

설치된 ubuntu 에서 ssh 연동 하는 법

4. sudo 권한 해제

연동된 우분트 터미널에 루트계정으로 전환

명령어 : su -

다음 명령어 : sudo visudo 다음 명령어를 친다.

해당되는 생성된 계정 hoegon ALL=(ALL:ALL) ALL 을 추가해준다.

vi 명령어를 사용하기 때문에 i 누르면 insert 이고 저장하고 나오려면 esc → : → :wq → enter 누르면 설정된것이 저장후 나온다.

5. ELK 설치

5.1 RPM 패키지 사용

5.1.1 엘라스틱서치 PGP 키를 가져옵니다. 이키를 사용해 다운로드한 RPM 패키지의 무결성을 검증합니다.

sudo rpm —import https://artifacts.elastic.co/GPG-KEY-elasticsearch

5.1.2 RPM 저장소를 yum에 추가합니다.

첫번째 명령어

cd /etc/yum.repos.d

두번째 명령어

ls -al

/etc/yum.repos.d/ 디렉터리에 elasticsearch.repo라는 파일을 생성하고 이 파일에 다음 텍스트를 복사해서 붙여넣습니다.

세번째 명령어 : 파일 생성 명령어

touch elasticsearch.repo 

네번째 명령어 : vi elasticsearch.repo

다섯번째 해당되는 문장을 복사 붙여넣기 한다.

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

※ 배경지식

해당되는 디렉터리에 접근하는 방법 : cd /etc/yum.repos.d

파일을 생성하는 방법 : touch elasticsearch.repo

해당되는 파일에 접근하여 붙여넣는 방법

해당되는 경로 내부에 있을경우에는 : vi elasticsearch.repo

외부 경로 일경우 : vi /etc/yum.repos.d/elasticsearch.repo

vi 명령어로 들어간 경우 쓰는 방법

리눅스 vi 명령어 참조

i : insert
esc + : + wq 저장하고 나오기

5.1.3 엘라스틱서치 패키지를 설치합니다.

엘라스틱 공식 문서 : https://www.elastic.co/guide/en/elasticsearch/reference/8.7/rpm.html

sudo yum install --enablerepo=elasticsearch elasticsearch

해당되는 최신버전을 알아서 설치해줌

만약 특정 버전을 설치하고 싶다면

sudo yum install —enablerepo=elasticsearch elasticsearch-8.0.0

5.1.4 키바나 설치하는 방법

https://www.elastic.co/guide/en/kibana/8.7/rpm.html

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

위의 엘라스틱 과정처럼 해당 elasticsearch.repo 폴더에 추가하고 인스톨 하면된다.

5.1.5 logstash 설치하는 방법

https://www.elastic.co/guide/en/logstash/8.7/installing-logstash.html

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

5.1.6 비츠 설치하는 방법

https://www.elastic.co/guide/en/beats/filebeat/8.7/setup-repositories.html#_yum

sudo yum install filebeat 

5.2 실행하는 방법

5.2.1 systemd 데몬을 다시 로딩합니다.

sudo systemctl daemon-reload

5.2.2 elasticsearch 서비스를 활성화합니다.

sudo systemctl start elastcisearch 
sudo systemctl enable elasticsearch

5.2.3 엘라스틱서치를 시작하거나 중지한다.

sudo systemctl start elastcisearch 
sudo systemctl stop elastcisearch 
sudo systemctl enable kibana
sudo systemctl start kibana

5.3 엘라스틱 서치 키바나 연동하는 환경설정

참고 레퍼런스 :

https://classicismist.blogspot.com/2020/01/centos7-elk-stack-filebeat-logstash.html

엘라스틱, 키바나 yml 설정 및 방화벽 설정

elasticsearch.yml 설정

방화벽 상태확인

sudo firewall-cmd --state

방화벽 port 열기

sudo firewall-cmd --permanent --zone=public --add-port=9200/tcp

sudo firewall-cmd --permanent --zone=public --add-port=5601/tcp

sudo firewall-cmd --permanent --zone=public --add-service=elasticsearch

방화벽 port 설정한거 적용하기

sudo firewall-cmd --reload

설정된 방화벽 목록 확인하기

sudo firewall-cmd --list-ports

방화벽 관련 내용

방화벽 확인 방법:
CentOS 7/8에서 방화벽 상태 확인: sudo firewall-cmd --state
방화벽의 오픈된 포트 확인: sudo firewall-cmd --list-ports
방화벽의 오픈된 서비스 확인: sudo firewall-cmd --list-services
방화벽의 허용된 서비스 중에서 특정 서비스의 포트 확인: sudo firewall-cmd --zone=public --query-port=9200/tcp

방화벽 포트 열기 :
방화벽에 대한 정보를 확인 : sudo firewall-cmd --get-default-zone
방화벽에 포트를 추가 : sudo firewall-cmd --permanent --zone=public --add-port=9200/tcp
변경사항을 적용 : sudo firewall-cmd --reload

포트번호가 맞는지 확인하는 방법 :
ss -tunlp | grep 9200


telnet 설치

telnet 설치 되어있는지 확인여부

rpm -qa | grep telnet*

telnet 설치 가능 리스트 확인

yum list telnet*

telnet 가능한 모두 설치

yum install telnet*

telnet을 설치하는 이유는 해당되는 포트가 잘 연결이 되었는지 확인하는것이다.

telnet localhost 9200

telnet localhost 5601


elasticsearch.yml 설정변경

vi /etc/elasticsearch/elasticsearch.yml 명령어 치고

network.host: localhost
http.port: 9200

위 해당 명령어를 상단에 추가해주자

※tip
주석을 풀어도되지만 그렇게되면 환경설정하면서 꼬이는 상황이 발생할수 있어서 상단에 추가해주고 수정해주는게 좋다.

kibana.yml 설정변경

vi /etc/kibana/kibana.yml

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]

동일하게 위 해당명령어를 상단에 추가해주자

접속확인하는 방법

ifconfig에 해당하는 ip와 port 번호로 접근

elasticsearch 의 url은

ex) https:192.168.0.1:9200

여기서 주의할점은 https 로 접근해야한다

다음과 같이 안전하지 않음 페이지가 송출되는데 잘 접근이 된것 이므로 해당하는 사용자 이름과 비밀번호로 접근해야한다.

처음 비밀번호와 아이디는 없기때문에 비밀번호를 리셋한다.

초기아이디는 elastic 이다.

엘라스틱 서치 비밀번호 생성 및 리셋

/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic

계정이 elastic의 초기비밀번호를 받아 접근하자


kibana 접속 접근

ipconfig의 ip:5601

초기화면에 토큰을 넣어야하는 화면이 송출된다.

엘라스틱 토큰생성

/usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token --scope kibana

이명령어로 토큰을 생성하여 넣어주면된다.

그러면 인증 오티피 숫자를 넣어달라고 하는데 해당하는 번호를 확인하는방법은

systemctl status kibana 명령어를 사용하면 확인할 수 있다.


이후 패스워드 수정

프로필 쪽에서 elastic 계정의 패스워드 변경을 할 수 있다.

엘라스틱서치와 키바나의 연동이 종료되었다.


0개의 댓글