A,首先说说ELK是啥, ELK是ElasticSearch 、 Logstash 和 Kiabana 三个开源工具组成。Logstash是数据源,ElasticSearch是分析数据的,Kiabana是展示数据用的
B,开始搞
1,安装 Logstash 依赖包 JDK
wget http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz
要是没有wget可以yum -y install wget安装一下wget,有的机子是没有安装的
JDK 的安装方式比较简单,只需将下载回来的程序包解压到相应的目录即可。
mkdir /usr/local/java
tar -zxf jdk-8u45-linux-x64.tar.gz -C /usr/local/java/
设置 JDK 的环境变量,如下:
tail -3 ~/.bash_profile
export JAVA_HOME=/usr/local/java/jdk1.8.0_45
export PATH=$PATH:$JAVA_HOME/bin
exportCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
然后就可以java 或者javac试试JDK有没有安装成功
(1)安装 Logstash
下载
wget https://download.elastic.co/logstash/logstash/logstash-1.5.2.tar.gz
解压
tar -zxf logstash-1.5.2.tar.gz -C /usr/local/
启动,-e是说明以参数形式启动
/usr/local/logstash-1.5.2/bin/logstash -e 'input { stdin { } } output { stdout {} }'
2,安装Elastic search
下载,解压完成安装
tar -zxf elasticsearch-1.6.0.tar.gz -C /usr/local/
接下来我们在 logstash 安装目录下创建一个用于测试 logstash 使用 elasticsearch 作为 logstash 的后端的测试文件 logstash-es-simple.conf,
该文件中定义了stdout和elasticsearch作为output,这样的“多重输出”即保证输出结果显示到屏幕上,同时也输出到elastisearch中。
cat logstash-es-simple.conf
input { stdin { } } output { elasticsearch {hosts => "localhost" } stdout { codec=> rubydebug } }
一定要注意上面的是hosts而不是host国内的都死host然后我搞了半天谷歌后才发现少了个s
启动logstash
/usr/local/logstash-1.5.2/bin/logstash agent -f logstash-es-simple.conf
然后会看到系统打印
Logstash startup completed
hello logstash { "message" => "hello logstash", "@version" => "1", "@timestamp" => "2015-07-15T18:12:00.450Z", "host" => "noc.vfast.com" }
可以使用curl指令查看ES有没有收到数据curl 'http://localhost:9200/_search?pretty'
3,安装Kibana
下载后解压到对应的文件夹
tar -zxf kibana-4.1.1-linux-x64.tar.gz -C /usr/local/
启动 /usr/local/kibana-4.1.1-linux-x64/bin/kibana
使用 http://kibanaServerIP : 5601 访问 Kibana ,登录后,首先,配置一个索引,默认, Kibana 的数据被指向 Elasticsearch ,使用默认的 logstash-* 的索引名称,并且是基于时间的,点击“ Create ”即可
然后就说明基本的已经部署完成了
但是如果需要显示一些系统信息或者收集系统的日志信息还需要很多配置
欲知后事如何,请继续关注