配置三台服务器组成的ELK集群(二)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 上一篇里主要是介绍了ES和ES-Head的安装过程,这一篇继续介绍ELK集群的其他核心组件安装过程。五、安装Logstash:本案的Logstash安装在10.113.130.117上;燃鹅,Logstash也可以利用多台组成集群,如果未来单台处理不过来,可以把Logstash扩展到其他服务器上。

上一篇里主要是介绍了ES和ES-Head的安装过程,这一篇继续介绍ELK集群的其他核心组件安装过程。

五、安装Logstash:

本案的Logstash安装在10.113.130.117上;燃鹅,Logstash也可以利用多台组成集群,如果未来单台处理不过来,可以把Logstash扩展到其他服务器上。

将logstash.tar.gz解压到指定目录:

# tar -zxvf logstash-5.4.1.tar.gz -C /opt/ 

# mv /opt/logstash-5.4.1/ /opt/logstash/

logstash三种启动方式,靠参数进行选择:-e sting类型启动,-f 指定配置文件启动,服务启动。

但我们没有通过yum安装,暂时无法以服务方式启动——需要编写启动脚本。 

创建简单的配置文件:

# cd /opt/logstash/config
# cp sample.conf es-cluster.conf 

# vim /opt/logstash/config/es-cluster.conf
#参考下面的配置信息,Logstash启动后读取/var/log/messages的文件内容
input{
    file{
        start_position => "beginning"
        path => ["/var/log/messages "]
        type => 'messagelog'
    }
}

#然后将文件内容发送给ElasticSearch的目标服务器
output{ elasticsearch { hosts => ["10.113.130.116:9200"] } }

完成配置修改后,先启动logstash,看一下运行情况:

# /opt/logstash/bin/logstash -f /opt/logstash/config/es-cluster.conf &

#如果看到如下信息,表示启动成功:
[INFO ][logstash.outputs.elasticsearch] New Elasticsearch output {:class=>"LogStash::Outputs::ElasticSearch", :hosts=>[#<URI::Generic:0x5f86b37e URL://10.113.130.116:9200>]}
[INFO ][logstash.pipeline] Starting pipeline {"id"=>"main", "pipeline.workers"=>4, "pipeline.batch.size"=>125, "pipeline.batch.delay"=>5, "pipeline.max_inflight"=>500}
[INFO ][logstash.pipeline] Pipeline main started
[INFO ][logstash.agent] Successfully started Logstash API endpoint {:port=>9600}

 

六、安装FileBeats

当Logstash安装完成后,要实现从应用服务器上收集日志的工作,这个工作如果使用Logstash来执行,也是没有问题的。

在应用服务器上,按照以上安装Logstash的操作和配置就可以达到目的;但是Logstash安装繁琐,而且如果仅仅作为收集日志的代理,未免太重。

 因此选择官方推荐的FileBeats作为勤劳的工蜂,实现指定文件的扫描、文件内容的收集和发送工作。

 让我们看看是不是在5分钟内能完成FileBeats的安装配置吧:

# curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.1-x86_64.rpm
# rpm -vi filebeat-5.4.1-x86_64.rpm

修改配置文件:

# vim /etc/filebeat/filebeat.yml 

filebeat.prospectors: 

- input_type: log 

  paths:
- /ane/tomcat/logs/*.log
#- /ane/tomcat/logs/*.out

  input_type: log 

#----------------------------- Logstash output --------------------------------

output.logstash:

  # The Logstash hosts
  hosts: ["10.113.130.117:5044"]
  worker: 4

配置了日志输出到Logstash之后,建议注释掉输出到Elasticsearch的部分。

 启动FileBeats:

 - For CentOS:
# systemctl start filebeat

 - For Redhat 6.5# service filebeat start

如果采用了FileBeat收集日志文件,则可以关闭Logstath的文件读取,从指定的端口读取数据流。

登录到Logstash的服务器(10.113.130.117),修改Logstash的配置文件为如下内容:

# vim /opt/logstash/config/es-cluster.conf

input{
       stdin{}
       beats{port => 5044}
}

output{
       elasticsearch {
              hosts => ["10.113.130.116:9200"]
              index => "logstash-%{+YYYY.MM.dd}"
              document_type => "%{[@metadata][type]}"
       }
}

修改完以后,重启Logstash。

请注意一个细节:logstash-%{+YYYY.MM.dd},不能写成{+YYYY.MM.DD},不然第二天以后的日期显示不正确!下面展示写错的情况:

上面图中的logstash-2017.06.170,是6月18日的日志文件的汇总标题。前一天(17日)是正确的,次日就这样了。

 

七、安装Kibana

Kibana安装在10.113.130.118上。从官网下载Kibana.tar.gz,解压到/opt目录下:

# tar -zxvf kibana-5.4.0-linux-x86_64.tar.gz -C /opt/

# mv /opt/kibana-5.4.0-linux-x86_64 /opt/kibana/
# cd /opt/
# chown -R elasticsearch:elasticsearch kibana

修改配置文件

# cd kibana/
#
vim config/kibana.yml #修改如下选项: Server.port: 5601 Server.host: “0.0.0.0” Elasticsearch.url: “10.113.130.116:9200” Kibana.index: “.kibana” Pid.file: /var/run/kibana.pid

由于kibana文件夹的所有者为Elsticsearch,运行也要以elsticsearch用户身份。

与Elsticsearch的处理方式类似,创建启动脚本:

# vim kibana-start.sh
su - elasticsearch -c "nohup /opt/kibana/bin/kibana> /dev/null 2>&1 &"

# chmod +x kibana-start.sh
# mv kibana-start.sh /usr/local/bin

#kibana-start.sh

Kibana启动以后,在浏览器输入http://10.113.130.118:5601,可以看到如下页面:

 

 

八、安装ElasticHD

ElasticHD 是一款 ElasticSearch的可视化应用。不依赖ES的插件安装,更便捷;导航栏直接填写对应的ES IP和端口就可以操作ES了。目前支持如下功能:

  • ES 实时搜索
  • ES DashBoard 数据可视化
  • ES Index Template (在线修改、查看、上传)
  • SQL Converts to DSL
  • ES 基本查询文档

 详见:https://github.com/farmerx/elasticHD/wiki

 

登录到第一台服务器(10.113.130.116),下载对应的elasticHD版本,上传到服务器:

# unzip xxx_elasticHd_xxx.zip
# mv ElasticHD /opt/
# chmod 777 ElasticHD

可指定ip端口运行elastichd

# /opt/ElasticHD -p 10.113.130.116:9800 &

同样,推荐将上方的启动命令,制作成启动脚本eshd-start.sh,并移动到/usr/local/bin/目录下,可直接执行。

安装成功后,在浏览器输入配置的地址和端口,看到如下画面: 

 

 

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
19天前
HAProxy的高级配置选项-配置haproxy支持https协议及服务器动态上下线
文章介绍了如何配置HAProxy以支持HTTPS协议和实现服务器的动态上下线。
51 8
HAProxy的高级配置选项-配置haproxy支持https协议及服务器动态上下线
|
19天前
|
监控 Apache
HAProxy的高级配置选项-Web服务器状态监测
这篇文章介绍了HAProxy的高级配置选项,特别是如何进行Web服务器状态监测,包括基于四层传输端口监测、基于指定URI监测和基于指定URI的request请求头部内容监测三种方式,并通过实战案例展示了配置过程和效果。
41 8
HAProxy的高级配置选项-Web服务器状态监测
|
1天前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
12 3
|
23天前
|
存储 弹性计算 负载均衡
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
在数字化时代,无论是个人博客、企业官网、APP后端支持,还是小程序运行或者其他项目,云服务器都扮演着至关重要的角色,考虑产品质量、服务和价格等因素,大家现在都喜欢选择阿里云服务器。然而,对于初次接触云服务的新手来说,可能并不是很清楚应该如何选阿里云服务器的地域、实例、带宽与操作系统等配置。本文将从地域选择、实例规格、操作系统、云盘配置、购买时长以及带宽选择等六个方面,为新手用户提供详细的选购指南,以供参考。
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
|
13天前
|
监控 应用服务中间件
Nagios 服务器 Nrpe 配置
Nagios服务器需安装NRPE并定义监控命令于`command.cfg`中。示例配置如下:`check_nrpe -H $HOSTADDRESS$ -c $ARG1$`。客户端配置文件如`192.168.149.128.cfg`可引用NRPE配置的命令,如`check_nrpe!check_load`以监控负载。监控HTTP关键词使用`check_http`命令加参数,如`-I`指定IP,`-u`指定URL,`-s`指定关键词,可在`command.cfg`中定义如`check_http_word`命令,并在主机配置文件中引用。
33 13
|
15天前
|
编解码 小程序
无影云电脑产品使用黑神话悟空之:游戏服务器更新/配置问题
该文档主要介绍了使用无影云电脑玩《黑神话:悟空》时可能遇到的问题及解决方法,包括游戏服务器更新、配置问题、画质建议及如何开启帧数显示等内容,并提供了详细的步骤指导与参考链接。
|
18天前
|
监控 安全 网络协议
快速配置Linux云服务器
快速配置Linux云服务器
|
24天前
|
消息中间件 Kafka 开发工具
rsyslog+ELK收集Cisco日志
rsyslog+ELK收集Cisco日志
|
1月前
|
运维 监控 Ubuntu
一键启动日志魔法:揭秘ELK自动安装脚本的神秘面纱!
【8月更文挑战第9天】在数据驱动时代,高效处理日志至关重要。ELK Stack(Elasticsearch、Logstash、Kibana)是强大的日志分析工具,但其复杂的安装配置常让初学者望而却步。本文介绍如何编写ELK自动安装脚本,简化部署流程。脚本适用于Ubuntu系统,自动完成ELK下载、安装及基本配置,包括依赖项安装、服务启动及自启设置,极大降低了使用门槛,助力运维人员和开发者轻松构建日志分析平台。
92 6
|
23天前
|
存储 消息中间件 监控
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统ELK、日志收集分析
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统、日志收集分析。日志级别从小到大的关系(优先级从低到高): ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF 低级别的会输出高级别的信息,高级别的不会输出低级别的信息