一、部署规划
1、源日志服务器Logstash收集日志,然后存储在Redis的list中,接收日志服务器LogStash从Redis的list中读取日志,存储在日志存储分析服务器elasticsearch中,然后用户在日志查询服务器kibana连接elasticsearch,查询相关日志。
【源日志服务器Logstash】->【Redis服务器】->【接收日志服务器LogStash】->【日志存储分析服务器elasticsearch】->【日志查询服务器kibana】
这种适合稍大一点的服务器集群,简单的可以直接源日志服务器Logstash存储在日志存储分析服务器elasticsearch中。
2、由于kibana中采用utf8编码作为默认编码,所以日志格式最好为utf8编码,如果不是可以最好做编码转换。
3、为了提升elasticsearch的处理效率,日志格式为Json格式,如果不是用进行日志格式
二、各工具的安装部署
大部分工具的下载地址:https://www.elastic.co/downloads,工具统一安装在/data目录.
mkdir /data
cd /data
1、安装JDK
1.7 JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
下载后安装
rpm -ivh jdk-7u80-linux-x64.rpm
设置JDK环境变量
修改/etc/profile或者.bash_profile,在其中增加几行:
export JAVA_HOME=/usr/java/jdk1.7.0_80
export CLASSPATH=$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
2、安装LogStash
wget https://download.elastic.co/logstash/logstash/logstash-2.3.4.tar.gz
tar zxvf logstash-2.3.4.tar.gz
测试
/data/logstash-2.3.4/bin/logstash -e 'input { stdin { }} output { stdout {}}'输出输入的内容即为正确
运行
/data/logstash-2.3.4/bin/logstash -f logstash.conf &
wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.3.5/elasticsearch-2.3.5.tar.gz
tar zxvf elasticsearch-2.3.5.tar.gz
/data/elasticsearch-2.3.5/bin/elasticsearch &
安装后进行测试。
安装文件管理插件elasticsearch-head,方便管理文件。
/data/elasticsearch-2.3.5/bin/plugin install mobz/elasticsearch-head
安装后可以用
curl -XGet http://localhost:19200/_plugin/head/
检验结果是否正确。
文件管理时,直接用浏览器打开网址http://localhost:19200/_plugin/head/ 进行文件管理。
4、安装kibana
wget https://download.elastic.co/kibana/kibana/kibana-4.5.4-linux-x64.tar.gz
tar zxvf kibana-4.5.4-linux-x64.tar.gz
/data/kibana-4.5.4-linux-x64/bin/kibana &
安装完执行进行测试。
curl -XGet localhost:15601
用浏览器打开 http://localhost:15601进行查询操作。
5、安装Redis
mkdir /data/redis/
cp redis-3.2.1.tar.gz /data/redis/redis-3.2.1.tar.gz
cd /data/redis/
tar xzvf redis-3.2.1.tar.gz
cd /data/redis/redis-3.2.1
make
make install
sysctl vm.overcommit_memory=1
/data/redis/redis-3.2.1/src/redis-server /data/redis/redis-3.2.1/redis.conf &
ln -s /data/redis/redis-3.2.1/src/redis-cli /bin/redis-cli
1)此插件有30天的有效期,有效期过了打不开kibana页面,谨慎安装。
#安装验证插件shield
/data/elasticsearch-2.3.5/bin/plugin install license
/data/elasticsearch-2.3.5/bin/plugin install shield
http://localhost:19200/_shield/user
http://localhost:19200/_shield/role
增加账号格式如下:
/data/elasticsearch-2.3.5/bin/shield/esusers useradd 用户名 -r 权限组 -p 密码
安装后增加账号es_admin作为管理员权限,密码123456
/data/elasticsearch-2.3.5/bin/shield/esusers useradd es_admin -r admin -p 123456
2)LogStash必须增加相应的账号
/data/elasticsearch-2.3.5/bin/shield/esusers useradd logstashserver -r logstash -p 123456
然后修改logstash
.conf的配置,增加相应的账号和密码。
/data/elasticsearch-2.3.5/bin/shield/esusers useradd kibanaserver -r kibana4_server -p 123456
elasticsearch.username: "kibanaserver"
elasticsearch.password: "123456"
4) 后期增加账号权限,都要把kibana4组的权限给增加上去,不然打不开kibana界面
/data/elasticsearch-2.3.5/bin/shield/esusers useradd test -r usergroup -p 123456
/data/elasticsearch-2.3.5/bin/shield/esusers roles test -a kibana4_server
5) license 过期后执行删除shield命令
/data/elasticsearch-2.3.5/bin/plugin remove shield