阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

ELK日志服务器的快速搭建并收集Nginx日志

483次阅读
没有评论

共计 6978 个字符,预计需要花费 18 分钟才能阅读完成。

今天给大家带来的是开源实时日志分析 ELK , ELK 由 ElasticSearch、Logstash 和 Kiabana 三个开源工具组成。官方网站:https://www.elastic.co

其中的 3 个软件是:

Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful 风格接口,多数据源,自动搜索负载等。

Logstash 是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)。

kibana 也是一个开源和免费的工具,他 Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志

系统 系统需要安装的软件 ip 描述
CentOS6.4Elasticsearch/test5192.168.48.133 搜索存储日志
centos6.4Elasticsearch/test4192.168.48.131 搜索存储日志
centos6.4Logstash/nginx/test1192.168.48.129  用来收集日志给上面
centos6.4kibana,nginx/test2192.168.48.130 用来后端的展示

架构原理图:

ELK 日志服务器的快速搭建并收集 Nginx 日志

一、先安装 elasticsearch 集群,并测试通过再进行其他软件安装。

在 test5,test4 上安装分别安装 elasticsearch-2.3.3.rpm  前提要安装 java1.8 步骤如下:

yum remove java-1.7.0-openjdk

rpm -ivh jdk-8u91-linux-x64.rpm

yum localinstall elasticsearch-2.3.3.rpm

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

配置 elasticsearch  在目录 /etc/elasticsearch 目录下面  lasticsearch.yml  elasticsearch.yml.bak  logging.yml  scripts

编辑 lasticsearch.yml

修改如下配置

cluster.name: myelk  #设置集群的名称, 在一个集群里面都是这个名称,必须相同

node.name: test5    #设置每一个节点的名,每个节点的名称必须不一样。

path.data: /path/to/data    #指定数据的存放位置,线上的机器这个要放到单一的大分区里面。

path.logs: /path/to/logs    #日志的目录

bootstrap.mlockall: true  #启动最优内存配置,启动就分配了足够的内存,性能会好很多,测试我就不启动了。

network.host: 0.0.0.0  #监听的 ip 地址,这个表示所有的地址。

http.port: 9200      #监听的端口号

discovery.zen.ping.unicast.hosts: [“192.168.48.133”, “192.168.48.131”]  #知道集群的 ip 有那些,没有集群就会出现就一台工作

ELK 日志服务器的快速搭建并收集 Nginx 日志

建立目录

mkdir -pv /pach/to/{data,logs}

chown elasticsearch.elasticsearch /path -R

启动服务器  service elasticsearch start  并查看监控端口启动

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

访问 9200 端口查看服务

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

两台的配置都一样就是上面的 IP 和 note 名称要配置不一样就行

安装插件 head 和 kopf 之后访问 ip:9200/_plugin/head  和 ip:9200/_plugin/kopf(插件可以图形查看 elasticsearch 的状态和删除创建索引)

/usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf

/usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2017-03/141729p2.htm

二、安装 nginx 和 logstash 软件

在 test1 上安装好 nginx 服务 就是收集它的日志呢

yum -y install zlib zlib-devel openssl openssl–devel pcre pcre-devel
./configure –prefix=/usr/local/nginx  –with-pcre  –with-openssl= –with-zlib=
make && make install

日志在 /usr/local/nginx/logs/access.log

然后在 test1 上安装 logstash-2.3.3-1.noarch.rpm

yum remove java-1.7.0-openjdk
rpm -ivh jdk-8u91-linux-x64.rpm
rpm -ivh logstash-2.3.3-1.noarch.rpm 
/etc/init.d/logstash start  #启动服务
/opt/logstash/bin/logstash -e “input {stdin{}} output{stdout{ codec=>”rubydebug”}}”  #检测环境  执行这个命令检测环境正常否,启动完成后 直接输入东西就会出现

ELK 日志服务器的快速搭建并收集 Nginx 日志

之后输入 /opt/logstash/bin/logstash -e ‘input {stdin{}} output{elasticsearch { hosts => [“192.168.48.131:9200”] index => “test”}}’ 

 就是输入东西到 48.131 的 elasticsearch 上 会在 /path/to/data/myelk/nodes/0/indices 生成你名称 test 索引文件目录 可以多输入几个到 48.131 的目录看看有没有文件有就证明正常。

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

之后在 /etc/logstash/conf.d 建立以.conf 结尾的配置文件,我收集 nginx 就叫 nginx.conf 了内容如下;

###########################################################################################

input {

  file {

    type => “accesslog”

    path => “/usr/local/nginx/logs/access.log”  #日志的位置

    start_position => “beginning”  #日志收集文件,默认 end

  }

}

 

output {

  if [type] == “accesslog” {

    elasticsearch  {

        hosts => [“192.168.0.87”]  ###elasticearch 的地址

        index => “nginx-access-%{+YYYY.MM.dd}” #生成的索引和刚才的 test 一样会在那里生成后面的是日期变量。

                    }

      }

      }

##########################################################################################

一定要仔细,之后运行 /etc/init.d/logstash configtest 检测配置是否正常。

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

查看进程是否启动

ELK 日志服务器的快速搭建并收集 Nginx 日志

之后在 elasticearch 查看有没有索引生成。多访问下 nginx 服务

如果没有就修改这个文件

vi /etc/init.d/logstash

######################################################################################################

LS_USER=root    ### 把这里换成 root 或者把访问的日志加个权限可以让 logstash 可以读取它 重启服务就会生成索引了

LS_GROUP=root

LS_HOME=/var/lib/logstash

LS_HEAP_SIZE=”1g”

LS_LOG_DIR=/var/log/logstash

LS_LOG_FILE=”${LS_LOG_DIR}/$name.log”

LS_CONF_DIR=/etc/logstash/conf.d

LS_OPEN_FILES=16384

LS_NICE=19

KILL_ON_STOP_TIMEOUT=${KILL_ON_STOP_TIMEOUT-0} #default value is zero to this variable but could be updated by user request

LS_OPTS=””

#######################################################################################################

ELK 日志服务器的快速搭建并收集 Nginx 日志

看 logstash 的日志有下面的信息就成功了

ELK 日志服务器的快速搭建并收集 Nginx 日志

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2017-03/141729p3.htm

今天给大家带来的是开源实时日志分析 ELK , ELK 由 ElasticSearch、Logstash 和 Kiabana 三个开源工具组成。官方网站:https://www.elastic.co

其中的 3 个软件是:

Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful 风格接口,多数据源,自动搜索负载等。

Logstash 是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)。

kibana 也是一个开源和免费的工具,他 Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志

系统 系统需要安装的软件 ip 描述
CentOS6.4Elasticsearch/test5192.168.48.133 搜索存储日志
centos6.4Elasticsearch/test4192.168.48.131 搜索存储日志
centos6.4Logstash/nginx/test1192.168.48.129  用来收集日志给上面
centos6.4kibana,nginx/test2192.168.48.130 用来后端的展示

架构原理图:

ELK 日志服务器的快速搭建并收集 Nginx 日志

一、先安装 elasticsearch 集群,并测试通过再进行其他软件安装。

在 test5,test4 上安装分别安装 elasticsearch-2.3.3.rpm  前提要安装 java1.8 步骤如下:

yum remove java-1.7.0-openjdk

rpm -ivh jdk-8u91-linux-x64.rpm

yum localinstall elasticsearch-2.3.3.rpm

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

配置 elasticsearch  在目录 /etc/elasticsearch 目录下面  lasticsearch.yml  elasticsearch.yml.bak  logging.yml  scripts

编辑 lasticsearch.yml

修改如下配置

cluster.name: myelk  #设置集群的名称, 在一个集群里面都是这个名称,必须相同

node.name: test5    #设置每一个节点的名,每个节点的名称必须不一样。

path.data: /path/to/data    #指定数据的存放位置,线上的机器这个要放到单一的大分区里面。

path.logs: /path/to/logs    #日志的目录

bootstrap.mlockall: true  #启动最优内存配置,启动就分配了足够的内存,性能会好很多,测试我就不启动了。

network.host: 0.0.0.0  #监听的 ip 地址,这个表示所有的地址。

http.port: 9200      #监听的端口号

discovery.zen.ping.unicast.hosts: [“192.168.48.133”, “192.168.48.131”]  #知道集群的 ip 有那些,没有集群就会出现就一台工作

ELK 日志服务器的快速搭建并收集 Nginx 日志

建立目录

mkdir -pv /pach/to/{data,logs}

chown elasticsearch.elasticsearch /path -R

启动服务器  service elasticsearch start  并查看监控端口启动

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

访问 9200 端口查看服务

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

两台的配置都一样就是上面的 IP 和 note 名称要配置不一样就行

安装插件 head 和 kopf 之后访问 ip:9200/_plugin/head  和 ip:9200/_plugin/kopf(插件可以图形查看 elasticsearch 的状态和删除创建索引)

/usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf

/usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2017-03/141729p2.htm

三、安装 kibana 软件

上面的都安装完成后在 test2 上面安装 kibana

rpm -ivh kibana-4.5.1-1.x86_64.rpm

编辑配置文件在这里 /opt/kibana/config/kibana.yml 就修改下面几项就行

#######################################################################################################

server.port: 5601  端口

server.host: “0.0.0.0”  监听

elasticsearch.url: “http://192.168.48.131:9200” elasticsearch 地址

######################################################################################################

ELK 日志服务器的快速搭建并收集 Nginx 日志

/etc/init.d/kibana start 启动服务

访问 kibana  http://ip:5601

ELK 日志服务器的快速搭建并收集 Nginx 日志

添加展示的索引,就是在上面定义的  nginx-access-2016.07.03

ELK 日志服务器的快速搭建并收集 Nginx 日志

ELK 日志服务器的快速搭建并收集 Nginx 日志

四、其他的一些配置。

kibana 是直接访问的比较不安全,我们需要用 nginx 访问代理,并设置权限用户名和密码访问

先在 kibana 服务器上安装 nginx 不介绍了

在 nginx 里面配置

#################################################################################

server

    {

            listen            80;

            server_name    localhost;

    auth_basic “Restricted Access”;

            auth_basic_user_file /usr/local/nginx/conf/htpasswd.users;  #密码和用户

 

        location / {

            proxy_pass    http://localhost:5601;  #代理 kibana 的 5601 之后就可以直接 80 访问了

            proxy_set_header Host $host;

            proxy_set_header X-Real-IP $remote_addr;

            proxy_set_header REMOTE-HOST $remote_addr;

            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

           

            }

}

####################################################################################

创建密码和用户文件:htpasswd.users 

需要安装 httpd-tool 包先安装它

 htpasswd -bc /usr/local/nginx/conf/htpasswd.users admin paswdadmin  #前面是用户后面是密码

##################################################################################

ELK 日志服务器的快速搭建并收集 Nginx 日志

之后通过访问需要密码和用户并且是 80 端口了

ELK 日志服务器的快速搭建并收集 Nginx 日志

到这里就完成了,谢谢你的阅读。

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-03/141729.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6978字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7973198
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装 2026 年最强个人助理 ClawdBot、完整安装教程 一、前言 学不完,根本学不完!近期,一款名...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...