ELK là một bộ công cụ bao gồm 3 phần mềm: Logstash, elasticsearch,kibana
-
Logstash: Đây là một công cụ sử dụng để thu thập, xử lý log được viết bằng java. Nhiệm vụ chính của logstash là thu thập log sau đó chuyển vào Elastichsearch. Mỗi dòng log của logstash được lưu trữ đưới dạng json.
-
Elasticsearch: sử dụng cơ sở dữ liệu NoSQL dựa trên nền tảng của Apache Lucene engine. Dùng để lưu trữ dữ liệu và cung cấp interface cho phép truy vấn đến cơ sở dữ liệu.
-
Kibana: Đây là giao diện sử dụng dành cho người dùng trên môi trường web. Kibana sẽ sử dụng Elashtichsearch để tìm kiếm các dữ liệu phù hợp với yêu cầu của người dùng.
Install VM instances EC2
Step 1:
Step 2:
Step 3:
Step 4:
Step 5:
Step 6:
Step 7:
Step 8:
Install ELK on AWS
First, connect to AWS by Putty, PuttyGen
Install Elasticsearch 1.7.2
Commands
sudo su
yum update -y
cd /root
wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.2.noarch.rpm
yum install elasticsearch-1.7.2.noarch.rpm -y
rm -f elasticsearch-1.7.2.noarch.rpm
cd /usr/share/elasticsearch/
./bin/plugin -install mobz/elasticsearch-head
./bin/plugin -install lukas-vlcek/bigdesk
./bin/plugin install elasticsearch/elasticsearch-cloud-aws/2.7.1
./bin/plugin --install lmenezes/elasticsearch-kopf/1.5.7
cd /etc/elasticsearch
nano elasticsearch.yml
Config
cluster.name: awstutorialseries
cloud.aws.access_key:
cloud.aws.secret_key:
cloud.aws.region: us-east-2
discovery.type: ec2
discovery.ec2.tag.Name: "Elasticsearch" (tên của instance)
http.cors.enabled: true
http.cors.allow-origin: "*"
This should work
sudo service elasticsearch start
This should also work, though the PID file will not be removed
sudo service elasticsearch stop
Crash -- permissions error
sudo service elasticsearch restart
But this will work because it doesnt try to remove the PIDFILE
sudo service elasticsearch start
Logstash 1.5.4-1
Commands
sudo su
yum update -y
cd /root
wget https://download.elastic.co/logstash/logstash/packages/centos/logstash-1.5.4-1.noarch.rpm
yum install logstash-1.5.4-1.noarch.rpm -y
rm -f logstash-1.5.4-1.noarch.rpm
nano /etc/logstash/conf.d/logstash.conf
Config
input { file { path => "/tmp/logstash.txt" } } output { elasticsearch { host => "ELASTICSEARCH_URL_HERE" protocol => "http" } }
service logstash start
Kibana 4.1.2
Commands
sudo su
yum update -y
cd /root
wget https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz
tar xzf kibana-4.1.2-linux-x64.tar.gz
rm -f kibana-4.1.2-linux-x64.tar.gz
cd kibana-4.1.2-linux-x64
nano config/kibana.yml
Config
elasticsearch_url: "ELASTICSEARCH_URL_HERE"
nohup ./bin/kibana &
Navigate In Browser
http://KIBANA_URL:5601