推荐设备MORE

微信小程序第三方问答—服装

微信小程序第三方问答—服装

公司新闻

ELK系统日志剖析服务平台(二)

日期:2021-04-02
我要分享

以前详细介绍过ELK了这一也不多讲了,下边刚开始安裝全新版的ELK,我安裝的网络服务器是centos7,早已关掉了防火安全墙

ELK达到的目标

安裝java

yum -y install java-1.8.0-openjdk*
rpm --import GPG-KEY-elasticsearch
安裝elasticsearch

建立文档

vi /etc/yum.repos.d/elasticsearch.repo

储存內容为

[elasticsearch-5.x]
name=Elasticsearch repository for5.x packages
baseurl=packages/5.x/yum
gpgcheck=1
gpgkey=GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

刚开始安裝

yum -y install elasticsearch

起动

systemctl start elasticsearch

启动开机启动

systemctl enable elasticsearch

PS.我的网络服务器运行内存较小改动elasticsearch运行内存的应用
vi /etc/elasticsearch/jvm.options
改动

-Xms2g
-Xmx2g

-Xms300M
-Xmx300M

配备文档

vi /etc/elasticsearch/elasticsearch.yml

里边的內容能够不做改动

认证是不是安裝取得成功

curl 
安裝kibana

建立文档

vi /etc/yum.repos.d/kibana.repo

文档內容为

[kibana-5.x]
name=Kibana repository for 5.x packages
baseurl=packages/5.x/yum
gpgcheck=1
gpgkey=GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

安裝kibana

yum -y install kibana

配备文档

vi /opt/kibana/config/kibana.yml

里边的內容能够不做改动
起动服务

sudo systemctl start kibana

启动全自动起动

sudo chkconfig kibana on
安裝nginx
yum -y install epel-release
yum -y install nginx httpd-tools

应用htpasswd 指令建立浏览kibana的客户登陆密码,下边的指令建立客户名叫admin 登陆密码为123456

htpasswd -c /etc/nginx/htpasswd.users admin
键入登陆密码123456
在次键入登陆密码123456

htpasswd 命令创建访问kibana的用户密码

配备nginx

vi /etc/nginx/nginx.conf

我这儿沒有配备用网站域名浏览,把默认设置的配备改动了一下location /的內容更换成下边的內容

 auth_basic "Restricted Access";
 auth_basic_user_file /etc/nginx/htpasswd.users;
 location / {
 proxy_pass pre>

关键是做一个反方向代理商到kibana,这儿配备能够立即应用ip浏览到kibana

安裝Logstash

建立文档

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

储存內容为

[logstash-5.x]
name=Logstash repository for 5.x packages
baseurl=packages/5.x/yum
gpgcheck=1
gpgkey=GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

安裝

yum -y install logstash

配备ssl

sudo vi /etc/pki/tls/f

在[ v3_ca ]下边加上一行

subjectAltName = IP: elk网络服务器ip
cd /etc/pki/tls
openssl req -config /etc/pki/tls/f -x509 -days 3650 -batch -nodes -newkey rsa:2048 -keyout private/logstash-forwarder.key -out certs/logstash-forwarder.crt

转化成ssl

配置ssl

配备Logstash
表明:配备应用json文件格式,文档储存到文件目录/etc/logstash/conf.d 下,有inputs, filters, and outputs三一部分组成

vi /etc/logstash/conf.d/02-beats-input.conf
input {
 beats {
 port = 5044
 ssl = true
 ssl_certificate = "/etc/pki/tls/certs/logstash-forwarder.crt"
 ssl_key = "/etc/pki/tls/private/logstash-forwarder.key"
}
vi /etc/logstash/conf.d/10-syslog-filter.conf
filter {
 if [type] == "syslog" {
 grok {
 match = { "message" = "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
 add_field = [ "received_at", "%{@timestamp}" ]
 add_field = [ "received_from", "%{host}" ]
 syslog_pri { }
 date {
 match = [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
vi /etc/logstash/conf.d/30-elasticsearch-output.conf
output {
 elasticsearch {
 hosts = ["localhost:9200"]
 sniffing = true
 manage_template = false
 index = "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
 document_type = "%{[@metadata][type]}"
}
sudo systemctl restart logstash //起动服务
sudo chkconfig logstash on //启动全自动起动

 

载入Kibana的仪表盘盘
cd ~
curl -L -O beats/dashboards/beats-dashboards-1.3.1.zip 
yum -y install unzip
unzip beats-dashboards-1.3.1.zip
cd beats-dashboards-1.3.1
./load.sh

在elasticsearch里加载Filebeat 数据库索引模版

cd ~
curl -O 25b86c/raw/d8c479e2a1adcea8b1fe86570e42abab0f10f364/filebeat-index-template.json
curl -XPUT '_template/filebeat?pretty' --template.json

恰当载入显示信息

elasticsearch中加载Filebeat 索引模板

在顾客端安裝Filebeat

把以前转化成的资格证书copy到顾客端上

从elk网络服务器复制资格证书到顾客机上,在elk网络服务器上实行

scp /etc/pki/tls/certs/logstash-forwarder.crt :/tmp

顾客机移动资格证书

sudo mkdir -p /etc/pki/tls/certs
sudo cp /tmp/logstash-forwarder.crt /etc/pki/tls/certs/
rpm --import GPG-KEY-elasticsearch

PS.假如顾客端和elk服务都会同一台机子上上边的流程忽视

vi /etc/yum.repos.d/elastic-beats.repo
[beats-5.x]
name=Elastic Beats repository for 5.x packages
baseurl=packages/5.x/yum
gpgcheck=1
gpgkey=GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
yum -y install filebeat

配备Filebeat

vi /etc/filebeat/filebeat.yml

改动

 paths:
 - /var/log/secure
 - /var/log/messages
# - /var/log/*.log

注解掉全部Elasticsearch的选择项

在output.logstash:选择项里加上

ssl.certificate_authorities: ["/etc/pki/tls/certs/logstash-forwarder.crt"]
systemctl start filebeat //起动filebeat
systemctl enable filebeat //启动全自动起动filebeate

最终看一下elasticsearch是不是了解据

ELK服务检测一下

curl -XGET 'filebeat-*/_search?pretty'

假如出現数据信息者表明顾客端早已联接上ELK服务端了

应用ip浏览Kibana登陆登陆密码上边设定过admin/123456登陆,下边是显示信息图
Kibana视图
显示信息的內容为系统日志內容