[环境搭建] CentOS 6.5 x64 + ELK 日志分析平台部署

0.实验环境说明

  • 宿主机
    • Windows 10
  • 工具
    • VMware v12.5  Pro
  • 虚拟主机系统
    • CentOS 6.5 x64
  • ELK
    • Elasticsearch v2.4.3
    • LogStash v2.4.1
    • Kibana v4.6.3 

 ELK套件下载地址:https://www.elastic.co/downloads

点击此处有更多版本选择:

 

  1. 安装及配置Elasticsearch

  • 打开个人目录文件夹

Image(58)

  • 点击后弹出文件夹

Image(59)

  • 在Windows下复制压缩文件“ELK+syslog-20180523-own”,粘贴到上一步centeOS中打开到文件夹下

Image(60)

  • 复制完毕

Image(61)

  • 打开终端

    • 右键,点击如图所示位置

Image(62)

  • 弹出终端如图

Image(63)

  • 进入管理员模式

su

<本行输入root用户的口令>

Image(64)

  • 创建一个文件夹用以存放安装包

mkdir -p /home/hadoop/app

  • 解压至“/home/hadoop/app”

unzip ELK+syslog-20180523-own.zip -d /home/hadoop/app

  • 设置虚拟机CenteOS的网络(根据实际情况设定,这里设置静态ip是因为作者的实验环境需要)

    • 打开网络配置

在右上角的计算机图标上右键:

Image(65)

  • 编辑eth0

Image(66)

  • 设置静态ip

Image(67)

Image(68)

弹出提示“输入root用户口令”,输入即可。

  • 关闭防火墙

service iptables stop

Image(69)

  • 安装及配置elasticsearch-2.4.3

cd /home/hadoop/app

tar zxvf elasticsearch-2.4.3.tar.gz

rm elasticsearch-2.4.3.tar.gz

vi /home/hadoop/app/elasticsearch-2.4.3/config/elasticsearch.yml

#(注:如下的蓝颜色部分代码是复制粘贴放入文件中的内容,若无其他特别声明,皆可直接粘贴到文件开头。后文不再赘述。)

network.host: 0.0.0.0 

discovery.zen.ping.multicast.enabled: false

discovery.zen.ping_timeout: 120s

client.transport.ping_timeout: 60s

discovery.zen.ping.unicast.hosts: ["192.168.72.134"]

cluster.name: ownhp

node.name: node-0

path.data: /home/hadoop/data/elasticsearch-2.4.3/data

path.logs: /home/hadoop/data/elasticsearch-2.4.3/datalog

node.master: true   

node.data: true 

  • 安装JDK1.8

    • 复制安装包到个人文件夹下

      • 打开个人文件夹

Image(70)

  • 在Windows中复制文件,在CentOS中右键点击“Paste”粘贴到目录下

Image(71)

  • 打开终端

Image(72)

  • 登录root账户

su

<本行输入root用户口令>

  • 编译安装

tar zxvf jdk-8u151-linux-x64.tar.gz

mv jdk1.8.0_151 jdk

mv jdk /usr/local/

vi /etc/profile

在文件开头添加:

export JAVA_HOME=/usr/local/jdk

export JRE_HOME=/usr/local/jdk/jre

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

  • 令配置立即生效

source /etc/profile

  • 安装插件“elasticsearch-head”

注意:由于是在线安装,需要虚拟机连入互联网。

  • 检查并确保:宿主机(搭载VMware环境的主机)已正常连入互联网。

  • 检查并确保:VMware的桥接模式已配置为桥接到连入了互联网的网卡。

    • 打开VMware的网络编辑器

Image(73)

  • 弹出网络编辑器界面如下

Image(74)

  • 点击“更改设置”

Image(75)

  • 会弹出“应用授权”的窗口,询问“是否允许该应用对设备的修改”,点击“是”即可。

  • 接着,网络编辑器中“VMnet信息”部分原先灰色部分文字变成黑色,并能够选择、设置。

Image(76)

  • 将桥接模式设置为桥接到连接了互联网的网卡

    • ①如果宿主机使用网线出网,设置为桥接到“Realtek PCIe GBE Family Controller”

Image(77)

  • ②如果宿主机连接互联网的方式是使用无线网,即连接了WIFI,则设置为桥接到无线网卡“Intel(R) Dual Band Wireless-AC 7265”。(注意,若您使用了外接的USB网卡设备等,请自行查询您的网卡设备名,并在这里选择桥接到该网卡)。

Image(78)

  • 设置CentOS虚拟机的网络

    • Image(79)

  • 弹出设置界面如下

Image(80)

  • 设置网络模式为“桥接模式”

Image(81)

  • 安装head插件

cd /home/hadoop/app/elasticsearch-2.4.3

bin/plugin install mobz/elasticsearch-head

  • 永久关闭防火墙:

chkconfig iptables off

  • 修改虚拟机配置(虚拟内存等)以支持elasticsearch

vi /etc/security/limits.conf

添加如下内容:

*  soft nofile 262144

*  hard nofile 262144

*  soft nofile 262144

*  hard nofile 262144

*  soft nproc 2048

*  hard nproc 4096

elsearch soft memlock unlimited

elsearch hard memlock unlimited

vi /etc/security/limits.d/90-nproc.conf

找到如下内容:

*         soft   nproc    <这里可能是某数字>

root       soft    nproc    <这里可能是某数字>

修改为:

  *       soft   nproc     unlimited

root       soft    nproc     unlimited

vi /etc/sysctl.conf

添加如下内容:

vm.max_map_count = 655360

vm.swappiness = 1

sysctl -p

  • 为CenteOS系统添加用户“es”

添加用户“es”并设置口令为“123”(专门用来启动ElasticSearch,鉴于安全方面的考虑,ElasticSearch不支持root用户启动)。

groupadd es

useradd es -g es -p 123

  • 改变文件夹“elasticsearch-2.4.3”的属主为用户“es”

chown es:es -R /home/hadoop/app/elasticsearch-2.4.3

  • 创建文件夹“data”,改变文件夹“data”的属主为用户“es”

mkdir -p /home/hadoop/data

chown es:es -R /home/hadoop/data

su es

123

  • 后台启动elasticsearch

/home/hadoop/app/elasticsearch-2.4.3/bin/elasticsearch  -d

  • 启动成功可能需要半分钟到1分钟时间,为了检查ElasticSearch是否启动成功,也可以去掉命令参数“-d”,不启用后台运行,观察输出。如果此时想要重新启动ElasticSearch观察输入,需要先结束在上一步中正在执行的ElasticSearch进程。

    • 使用ps命令查找正在运行的ElasticSearch的进程PID

ps -ef | grep elastic

  • 得到搜索结果如下

Image(82)

  • 结束ElasticSearch进程

kill -9 37787

Image(83)

  • 在终端使用前台启动的方式重新启动ElasticSearch,观察是否成功启动

/home/hadoop/app/elasticsearch-2.4.3/bin/elasticsearch

  • 观察到“node-0 start”即说明启动成功了

Image(84)

  • 通过浏览器访问ElasticSearch:

http://192.168.72.134:9200/

(注意:ip地址应改为你的虚拟机(CenteOS)地址)

  • 若返回了ElasticSearch集群信息形如下图,说明ElasticSearch正常工作。

Image(85)

  • 通过浏览器访问elasticsearch的head插件

http://192.168.72.134:9200/_plugin/head/

Image(86)

  1. 安装及配置Logstash

  • 解压安装包

su

<本行输入root用户的口令>

cd /home/hadoop/app

tar zxvf logstash-2.4.1.tar.gz

rm logstash-2.4.1.tar.gz -f

cd /home/hadoop/app/logstash-2.4.1

  • 新建一个

  1. 情景一:安装logstash到客户机上收集数据(并传给elasticsearch)

该情景下使用logstash从本地文件读取日志发送给elasticsearch。

  • 新建并编辑logstash的配置文件

mkdir config

cd config

vi logstash+ES.conf

input {

        file {

                path => "/var/log/own/*/*"

                start_position => "beginning" #从文件开始处读写

        }

}

filter {

  #定义数据的格式

  grok {

    match => { "message" => "%{DATA:timestamp}\|%{IP:serverIp}\|%{IP:clientIp}\|%{DATA:logSource}\|%{DATA:userId}\|%{DATA:reqUrl}\|%{DATA:reqUri}\|%{DATA:refer}\|%{DATA:device}\|%{DATA:textDuring}\|%{DATA:duringTime:int}\|\|"}

  }

}

output {

    elasticsearch {

hosts => "192.168.72.134:9200"

    }

}

注意:ip地址应改为你的虚拟机(CenteOS)地址

  • 后台启动logstash:

su es

<本行输入es用户的口令,之前设置为“123”>

/home/hadoop/app/logstash-2.4.1/bin/logstash -f /home/hadoop/app/logstash-2.4.1/config/logstash+ES.conf &

  1. 情景二:logstash安装到elasticsearch所在的同一台主机,并令其监听514端口(syslog传输的端口)

  • 新建并编辑logstash的配置文件

cd /home/hadoop/app/logstash-2.4.1

cd config

vi logstash+ES2.conf

input {

    tcp {

        port => 514

        type => syslog

    }

    udp {

        port => 514

        type => syslog

    }

}

output {

   hosts => "192.168.72.134:9200"

#(注意:ip地址应改为你的虚拟机(CenteOS)地址)

   }

  • 启动logstash:

/home/hadoop/app/logstash-2.4.1/bin/logstash  -f /home/hadoop/app/logstash-2.4.1/config/logstash+ES.conf

  1. 安装及配置Kibana

  • 解压并配置文件

cd  /home/hadoop/app

tar tar xzvf kibana-4.6.3-linux-x86_64.tar.gz

rm -f kibana-4.6.3-linux-x86_64.tar.gz

vi /home/hadoop/app/kibana-4.6.3-linux-x86_64/config/kibana.yml

server.port:5601 

server.host:"192.168.72.134" 

elasticsearch.url:"http://192.168.72.134:9200"

kibana.index:".kibana"

(注意:ip地址应改为你的虚拟机(CenteOS)地址)

  • 后台运行:

/home/hadoop/app/kibana-4.6.3-linux-x86_64/bin/kibana &

猜你喜欢

转载自www.cnblogs.com/ownhp/p/9094955.html