需要
1. Aの開発者は、オンラインサーバがログを表示するにはログインできない
各システムがそのログは、ログを見つけることは困難で分散している2.
データ3.ログ大量、遅く、十分なリアルタイムデータのための外観を
ソリューション:ELK展開プラットフォーム
ELKはじめに
ELKはそれぞれ、3つのオープンソースソフトウェアの略である:Elasticsearch、Logstash、Kibanaは、彼らはオープンソースソフトウェアです。追加さFileBeatは、それが各サーバ上のログを収集した後Logstashへの伝送に適した軽量のログ収集処理ツール(エージェント)、Filebeat小さなフットプリント、です。
ELKチャート
Elasticsearchプロフィール:
Elasticsearchを収集、分析、データの三つの機能のストレージを提供するオープンソース分散型検索エンジンです。
機能:このような自動負荷探索などの分散、ゼロコンフィギュレーション、自動検出、自動スライスインデックス、インデックス複製機構、安らかスタイルインターフェイス、複数のデータソース、。
展開Elasticsearch
設定ソースのyum
--import RPM https://packages.elastic.co/GPG-KEY-elasticsearch#インポートキー
のvim /etc/yum.repos.d/elasticsearch.repo#のソースは、yumを配置し
[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=http://packages.elastic.co/elasticsearch/2.x/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enable=1
elasticsearchをインストール2.
yumをelasticsearch -y#安装elasticsearchをインストール
3.設定Elasticsearch
vimの/etc/elasticsearch/elasticsearch.yml
cluster.name: yltx #17行 集群名称
node.name: node1 #23行 节点名称
path.data: /data/es-data #33行工作目录
path.logs: /var/log/elasticsearch #37行日志目录
bootstrap.memory_lock: true #43行 防止交换swap分区
network.host: 0.0.0.0 #54行 监听网络
http.port: 9200 #58行 端口
ます。mkdir -p /データ/ ES-データ
のchown -R elasticsearch:elasticsearch /データ/ ES-データ/
4.ロック解除メモリとファイルの制限
本番環境を変更する必要があります(注)
vimの/etc/security/limits.confを
末尾插入
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
* soft nofile 65535
* hard nofile 65535
elasticsearch.service#がサービス開始開始systemctl
は、netstat -ntapを| grepを9200
PS -ef | grepをelasticsearch
ページのテスト:http://192.168.0.102:9200/
インストールElasticsearch - 頭プラグ
/ usr / share / elasticsearch / binに/プラグインのインストールmobz / elasticsearchヘッド
Webアクセス:
http://192.168.0.102:9200/_plugin/head/
Logstash説明:
Logstash主に、収集、分析をログデータ取得モードを大量にサポートするツールをフィルタリングログインするために使用します。C / Sアーキテクチャの一般的な作業は、クライアントがアップelasticsearchへの同時でサーバ側が受信したログがフィルタリングされている各ノードを担当し、修正および他の操作、収集ログにホスト側のニーズにインストールされています。
logstash収集の基本的なプロセスを記録します:INPUT - > CODEC - >フィルタ- > CODEC - >出力
1. INPUT:から収集ログ。
2.filter:前濾過発行
3.output:Elasticsearch出力メッセージキューまたはRedisののに
4.codec:前部へ出力、同時模擬試験を容易にするために
応じて数ヶ月で収集されたデータの量をログ
展開Logstash
設定ソースのyum
vimの/etc/yum.repos.d/logstash.repo
[logstash-2.1]
name=Logstash repository for 2.1.x packages
baseurl=http://packages.elastic.co/logstash/2.1/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enable=1
2.ダウンロードしてインストールしlogstash
YUM logstash -yをインストール
テストlogstash
logstashの基本的な構文
input {
指定输入
}output {
指定输出
}
1.测试标准输入输出
使用rubydebug方式前台输出展示以及测试
/opt/logstash/bin/logstash -e 'input { stdin {} } output { stdout { codec => rubydebug} }'
hello #输入hello测试
2.测试输出到文件
/opt/logstash/bin/logstash -e 'input { stdin {} } output { file { path => "/tmp/test-%{+YYYY.MM.dd}.log"} }'
cat /tmp/test-2020.02.17.log
3.开启日志压缩
/opt/logstash/bin/logstash -e 'input { stdin {} } output { file { path => "/tmp/test-%{+YYYY.MM.dd}.log.tar.gz" gzip => true } }'
ll /tmp/
4.测试输出到elasticsearch
/opt/logstash/bin/logstash -e 'input { stdin {} } output { elasticsearch { hosts => ["192.168.0.102:9200"] index => "logstash-test-%{+YYYY.MM.dd}" } }'
ll /data/es-data/yltx/nodes/0/indices
5.网页验证
Kibana 简介
Kibana 也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。
Kibana 部署
1.下载安装kibana
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.6.0-linux-x86_64.tar.gz
tar zxvf kibana-7.6.0-linux-x86_64.tar.gz -C /opt/
mv /opt/kibana-7.6.0-linux-x86_64/ /usr/local/kibana
2.修改配置
vim /usr/local/kibana/config/kibana.yml
server.port: 5601 #2行 访问端口
server.host: "0.0.0.0" #5行 监听网络
elasticsearch.url: "http://192.168.0.102:9200" #12行 ES地址
kibana.index: ".kibana" #20行
3.启动服务
/usr/local/kibana/bin/kibana &
netstat -ntap |grep 5601 #查看端口号
4.网页验证:
测试 ELK平台
收集系统日志和收集java异常日志
1.修改logstash配置文件:
vim /root/file.conf
input {
file {
path => "/var/log/messages" #收集系统日志
type => "system"
start_position => "beginning"
}
file {
path => "/var/log/elasticsearch/yltx.log" #收集java异常日志
type => "es-error"
start_position => "beginning"
codec => multiline {
pattern => "^\["
negate => true
what => "previous"
}
}
}
output {
if [type] == "system" {
elasticsearch {
hosts => ["192.168.0.102:9200"]
index => "system-%{+YYYY.MM.dd}"
}
}
if [type] == "es-error" {
elasticsearch {
hosts => ["192.168.0.102:9200"]
index => "es-error-%{+YYYY.MM.dd}"
}
}
}
2.写入到elasticsearch中
/ opt / logstash / binに/ logstash -f /root/file.conf
3.チェックElasticsearch
4.查看Kibana
関連情報
ELK公式サイト:https://www.elastic.co/cn/
中国ガイド:https://www.gitbook.com/book/chenryn/elk-stack-guide-cn/details