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

简介: 上一篇里主要是介绍了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/目录下,可直接执行。

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

 

 

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。 &nbsp;
相关文章
|
3月前
|
弹性计算 ice
阿里云4核8G云服务器配置价格:热门ECS实例及CPU处理器型号说明
阿里云2025年4核8G服务器配置价格汇总,涵盖经济型e实例、计算型c9i等热门ECS实例,CPU含Intel Xeon及AMD EPYC系列,月费159元起,年付低至1578元,按小时计费0.45元起,实际购买享折扣优惠。
729 1
|
3月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
226 11
|
3月前
|
存储 弹性计算 网络协议
超详细的阿里云服务器购买流程,ECS自定义购买配置教程
本文详细图解阿里云ECS服务器自定义购买全流程,涵盖付费模式、地域选择、网络配置、实例规格、镜像、存储、安全组及登录设置等核心步骤,助您轻松掌握专业级云服务器搭建方法。
|
3月前
|
存储 弹性计算 监控
阿里云渠道商:如何挑选阿里云服务器配置?
本文详解通用型、计算型、内存型等实例适用场景,结合性能评估与成本优化策略,助力用户按需选择。以日均1万访问企业网站为例,2核4G+3M带宽月费约200元,性价比高。合理配置更省钱。
|
3月前
|
弹性计算
阿里云ECS云服务器8核16G配置收费价格,多种ECS实例CPU及费用清单
阿里云8核16G云服务器价格因实例类型而异。计算型c9i约743元/月,一年6450元(7折);通用算力型u1仅673元/月,一年4225元(5.1折)。实际价格享时长折扣,详情见ECS官网。
|
3月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
332 10
|
3月前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。
|
3月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
482 8