标签:注意 dha enabled set cloud 网络 linux nginx arc
因业务需求,需要将阿里云入口nginx访问日志进行收集统计,最原始的办法当然是将各个nginx服务器每个都统计一遍然后进行累加,这样做很麻烦不可取,鉴于我们之前已经购买过阿里云Elasticsearch服务,就想着把nginx日志采集到阿里云elasticsearch中,最开始我们想到的是通过阿里云beats来收集,查阅阿里云官方文档介绍如下本文以Filebeat为例,介绍安装和管理采集器(Beats)的方法。通过采集器,您可以收集云服务器ECS(Elastic Compute Service)中的日志文件、网络数据、服务器指标等数据,发送到阿里云Elasticsearch(简称ES)或阿里云Logstash中,进行监控、分析等操作。
前提条件
您已完成以下操作:
创建阿里云ES实例或Logstash实例。
详情请参见创建阿里云Elasticsearch实例和创建阿里云Logstash实例。
开启阿里云ES实例的自动创建索引功能。
处于安全考虑,阿里云ES默认不允许自动创建索引。但是Beats目前依赖该功能,因此如果采集器Output选择为Elasticsearch,需要开启自动创建索引功能,详情请参见开启自动创建索引。
创建阿里云ECS实例,且该ECS实例与阿里云ES实例或Logstash实例处于同一专有网络VPC(Virtual Private Cloud)下。
详情请参见使用向导创建实例。
注意
Beats默认安装目录为/opt/aliyunbeats/。安装后,ECS上会生成conf、logs和data这3个目录,分别映射了配置文件、Beats日志文件和Beats数据文件。建议不要删除或修改这3个文件中的内容,否则可能出现异常或者导致数据不正确。当出现问题时,您可以在logs目录下查看Beats日志,来定位问题。
Beats目前仅支持Aliyun Linux ,RedHat和CentOS这三种操作系统。
在目标ECS实例上安装云助手和Docker服务。
可以看到还需要在每个主机上面部署docker服务,为了收集日志还得部署docker,感觉有点得不偿失,于是我们就开始自己部署filebeat来采集,下面记录下实际的流程
1、开启es自动创建索引功能
出于安全考虑,阿里云默认是关闭改功能,但想要通过beats写入es,必须开启该功能,注意该功能开启请在夜间无业务流量期间执行,因为开启该功能会重启es实例
2、各个组件部署filebeat并配置
部署过程略过,下面简单贴出部分配置
filebeat.inputs:
- type: log
enabled: true
paths:
- /home/logs/*.access.log
tags: ["access"]
json.keys_under_root: true
json.overwrite_keys: true
tail_files: true
- type: log
enabled: true
paths:
- /home/logs/error.*.log
tags: ["error"]
tail_files: true
setup.kibana:
host: "xxxxx.elasticsearch.aliyuncs.com:5601" ##请填写你实际的地址
output.elasticsearch:
hosts: ["yyy.elasticsearch.aliyuncs.com:9200"] ##请填写你实际的地址
username: "aaa" ##用户名及密码请填写实际的
password: "bbb"
indices:
- index: "nginx-access-%{[beat.version]}-%{+yyyy.MM}"
when.contains:
tags: "access"
- index: "nginx-error-%{[beat.version]}-%{+yyyy.MM}"
when.contains:
tags: "error"
setup.template.name: "nginx"
setup.template.pattern: "nginx-*"
setup.template.enabled: false
setup.template.overwrite: true
3.启动并通过kibana观察es索引
systemcat start filebeat
可以看到日志已经被采集到es里面,接下来添加该索引进行展示即可
个人现已录制了一套按照企业生产标准的jumpserver堡垒机(2020年1.5.8最新版本)落地到企业应用视频,如有兴趣请前往
https://edu.51cto.com/sd/84158
标签:注意 dha enabled set cloud 网络 linux nginx arc
原文地址:https://blog.51cto.com/huaxin/2494437