엘크 무엇입니까
- Elasticsearch은 그것의 기능은, 오픈 소스 분산 검색 엔진입니다 : 분산, 제로 구성, 자동 검색, 같은 자동로드 검색으로 자동 슬라이스 인덱스, 인덱스 복제 메커니즘, 편안한 스타일의 인터페이스, 여러 데이터 소스.
- Logstash가 완전히 오픈 소스 도구, 그는 로그, 필터를 수집하고 (예 : 검색 등) 나중에 사용하기 위해 저장할 수 있습니다.
- 키바 로그 분석 Logstash 키바와 ElasticSearch 친절을 제공 할 수있는 오픈 소스와 무료 도구입니다
- 웹 인터페이스를 분석하고 중요한 데이터 로그를 검색, 요약하는 데 도움이
- Filebeat 구타와 제휴. 비트는 현재 네 개의 도구가 포함되어
Packetbeat (수집 네트워크 트래픽 데이터)
Topbeat (수집 시스템, 프로세스 및 파일 시스템 수준의 CPU 및 메모리 사용량 데이터)
Filebeat (수집 파일 데이터)
Winlogbeat (수집 Windows 이벤트 로그 데이터)
운영 체제 | IP 주소 | 주요 소프트웨어 |
---|---|---|
centos7 | 10.0.0.73 | JDK, elasticsearch, 키바 |
centos7 | 10.0.0.74 | JDK, logstash |
## 10.0.0.73 운영
엘크 설치 패키지
[root@ localhost ~]# unzip ELK.zip
Archive: ELK.zip
inflating: ELK/elasticsearch-6.6.2.rpm
inflating: ELK/jdk-8u131-linux-x64_.rpm
inflating: ELK/kibana-6.6.2-x86_64.rpm
inflating: ELK/logstash-6.6.0.rpm
설치 JDK
# 切换目录到Elk
[root@ localhost ~]# cd ELK/
[root@ localhost ELK]# rpm -ivh jdk-8u131-linux-x64_.rpm
Preparing... ################################# [100%]
Updating / installing...
1:jdk1.8.0_131-2000:1.8.0_131-fcs ################################# [100%]
Unpacking JAR files...
tools.jar...
plugin.jar...
javaws.jar...
deploy.jar...
rt.jar...
jsse.jar...
charsets.jar...
localedata.jar...
# 查看版本
[root@ localhost ELK]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
설치 elasticsearch
[root@ localhost ELK]# yum -y install elasticsearch-6.6.2.rpm
Loaded plugins: fastestmirror
Examining elasticsearch-6.6.2.rpm: elasticsearch-6.6.2-1.noarch
Marking elasticsearch-6.6.2.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package elasticsearch.noarch 0:6.6.2-1 will be installed
--> Finished Dependency Resolution
# 配置开机自启动
[root@ localhost ELK]# systemctl enable elasticsearch
Created symlink from /etc/systemd/system/multi-user.target.wants/elasticsearch.service to /usr/lib/systemd/system/elasticsearch.service.
# 开启服务
[root@ localhost ELK]# systemctl start elasticsearch
# 验证服务是否启动
[root@ localhost ELK]# netstat -lptnu|grep java
tcp6 0 0 127.0.0.1:9200 :::* LISTEN 2239/java
tcp6 0 0 ::1:9200 :::* LISTEN 2239/java
tcp6 0 0 127.0.0.1:9300 :::* LISTEN 2239/java
tcp6 0 0 ::1:9300 :::* LISTEN 2239/java
# 监听端口:
9200作为Http协议,主要用于外部通讯(http协议,给客户端用的)
9300作为Tcp协议,ES集群之间是通过9300进行通讯(tcp协议,是es集群内部通信使用)
# 修改elasticsearch配置文件
[root@ localhost ELK]# vim /etc/elasticsearch/elasticsearch.yml
network.host: 10.0.0.73(本机IP)
http.port: 9200 (注释打开)
安装 kibana
[root@ localhost ELK]# yum -y install kibana-6.6.2-x86_64.rpm
Loaded plugins: fastestmirror
Examining kibana-6.6.2-x86_64.rpm: kibana-6.6.2-1.x86_64
Marking kibana-6.6.2-x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package kibana.x86_64 0:6.6.2-1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
# 配置kibana文件
[root@ localhost ELK]# vim /etc/kibana/kibana.yml
server.port: 5601(注释打开)
server.host: "10.0.0.73"(默认打开并修改IP)
elasticsearch.hosts: ["http://10.0.0.73:9200"](默认打开并修改IP)
# 配置开机自启动
[root@ localhost ELK]# systemctl enable kibana
Created symlink from /etc/systemd/system/multi-user.target.wants/kibana.service to /etc/systemd/system/kibana.service.
# 开启服务
[root@ localhost ELK]# systemctl start kibana
## 10.0.0.74 운영
엘크 설치 패키지
[root@ localhost ~]# unzip ELK.zip
Archive: ELK.zip
inflating: ELK/elasticsearch-6.6.2.rpm
inflating: ELK/jdk-8u131-linux-x64_.rpm
inflating: ELK/kibana-6.6.2-x86_64.rpm
inflating: ELK/logstash-6.6.0.rpm
설치 JDK
# 切换目录到Elk
[root@ localhost ~]# cd ELK/
[root@ localhost ELK]# rpm -ivh jdk-8u131-linux-x64_.rpm
Preparing... ################################# [100%]
Updating / installing...
1:jdk1.8.0_131-2000:1.8.0_131-fcs ################################# [100%]
Unpacking JAR files...
tools.jar...
plugin.jar...
javaws.jar...
deploy.jar...
rt.jar...
jsse.jar...
charsets.jar...
localedata.jar...
# 查看版本
[root@ localhost ELK]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
설치 logstash
[root@ localhost ELK]# yum -y install logstash-6.6.0.rpm
Loaded plugins: fastestmirror
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
Examining logstash-6.6.0.rpm: 1:logstash-6.6.0-1.noarch
Marking logstash-6.6.0.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package logstash.noarch 1:6.6.0-1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
# 配置文件路径:
[root@localhost logstash]# pwd
/etc/logstash
[root@localhost logstash]# ll
total 36
drwxrwxr-x 2 root root 6 2019-01-24 20:16 conf.d
-rw-r--r-- 1 root root 1846 2019-01-24 20:16 jvm.options
-rw-r--r-- 1 root root 4568 2019-01-24 20:16 log4j2.properties
-rw-r--r-- 1 root root 342 2019-01-24 20:16 logstash-sample.conf
-rw-r--r-- 1 root root 8194 2020-02-11 18:05 logstash.yml
-rw-r--r-- 1 root root 285 2019-01-24 20:16 pipelines.yml
-rw------- 1 root root 1696 2019-01-24 20:16 startup.options
# 日志文件路径:
[root@localhost logstash]# pwd
/var/log/logstash
# logstash是用来收集日志,并对日志做过滤处理的,我们下面要分析的是系统日志,所以要编写一个收集日志的配置文件
[root@ localhost ELK]# vim /etc/logstash/conf.d/message.conf
# input日志输入模块:日志的获取方式和路径
input {
file {
path => "/var/log/messages"
type => "messages-log"
start_position => "beginning"
}
}
# output日志的输出模块:导出你的数据
output {
elasticsearch {
hosts => "10.0.0.73:9200"
index => "messages_log=%{+YYYY.MM.dd}"
}
}
# 配置开机自启动
[root@ localhost ELK]# systemctl enable logstash
Created symlink from /etc/systemd/system/multi-user.target.wants/logstash.service to /etc/systemd/system/logstash.service.
# 启动logstash服务
[root@ localhost ELK]# systemctl start logstash
테스트 액세스 IP : 10.0.0.73 : 5601
키바에 인덱스 생성하는
시각적 그래픽 추가 시스템 로그를
인덱스입니다 그래픽 그림을 선택
일자를 그림 막대 그래프의 x 축으로 선택하고 데이터를 수집 시작합니다