4台服务器部署(监控,日志)
一台虚拟机部署到mmp(监控和日志的依赖)
# MMP-一站式管理中台
公共服务
依赖prometheus,grafana,elasticsearch,logstash,kibana,zookeeper(至少3节点),kafka,filebeat,node_exporter,jmx_exporter,mysql_exporter,redis_exporter 等
MMP 管理中台
产品部署模式:前后端分离
配置:nacos
命名空间:cosmosource
配置项:
common.properties
db.properties
log.properties
命名空间:public
mmp-menu.properties
1. 运行节点上必须存在的文件或目录(cosmo_env中内容与基础服务节点中完全相同)
cosmo/
├──idp/
│ ├──cosmo_env
│ ├──mmp.jar
├──com/
│ ├──public/
└──logs/
2. 修改nacos配置项(各自所需配置项详见:部署模式及配置使用说明;配置说明详见:配置文件(配置项)说明)
必须修改配置项的应用:cosmo-mmp
3. 启动功能组件
#上传mmp.jar包到/opt/cosmo/idp下
#授权
chmod 755 mmp.jar
# 进入启动目录;加载所需变量
cd /opt/cosmo/idp/ && source cosmo_env
# 启动,红色字体标出依次为指定内存大小,可按需修改
nohup cosmo-mmp -jar -Dserver.port=5955 $discovery$ip:$port $config$ip:$port -Xms512m -Xmx512m mmp.jar > /dev/null 2>&1 &
主机ip:5080/mmp
服务器和说明
服务器
#在3台服务器上创建目录和上传public到/opt/cosmo/com下
192.168.0.65 (普罗米修斯和grafana)
192.168.0.66
192.168.0.67
部署普罗米修斯和grafana(192.168.0.65)
部署普罗米修斯
#上传目录
上传prometheus-2.8.1.linux-amd64.tgz包到/opt/cosmo/install/mmp和/opt/cosmo/install/mmp/monitor下 #(这里monitor需创建)
#解压安装包
tar -Pzxvf /opt/cosmo/install/mmp/prometheus-2.8.1.linux-amd64.tgz
tar -Pzxvf /opt/cosmo/install/mmp/monitor/prometheus-2.8.1.linux-amd64.tgz
#启动prometheus
sh /opt/cosmo/com/prometheus/start_prometheus.sh
#验证
出现prometheus start failed则成功 #(如果没出现请查看日志看是不是ip冲突或者网页验证)
#访问
主机ip:9090
查看服务健康状态,在Prometheus页面中点击【Status】--> 【Targets】
例如我这里查看主机监控,则查看【Linux】的State,如果状态为【UP】代表监控成功,如果为【DOWN】则为监控失败,请检查配置(文档执行到这里现在还没开始配置)
============================================
部署grafana
#上传目录
上传grafana-6.2.0.tgz包到/opt/cosmo/install/mmp和/opt/cosmo/install/mmp/monitor下
#解压
tar -Pzxvf /opt/cosmo/install/mmp/grafana-6.2.0.tgz
tar -Pzxvf /opt/cosmo/install/mmp/monitor/grafana-6.2.0.tgz
#启动
sh /opt/cosmo/com/grafana/start_grafana.sh
出现cosmo-grafana start succeed则成功
#查看进程
ps -e|grep cosmo-grafana
访问验证
http://ip:5020
监控主机 (所有被监控主机都的启动node_exporter )
# 所有被监控主机 启动 node_exporter
#上传pubilc目录到/opt/cosmo/com下
#授权
chmod -R 755 /opt/cosmo/com/public/node_exporter/*
#启动
sh /opt/cosmo/com/public/node_exporter/start.sh
# 查看进程
ps -e|grep cosmo-node2020/6/15 11:55:182020/6/15 11:55:502020/6/15 11:55:522020/6/15 11:55:52
配置grafana页面 http://ip:5020 初始用户名/密码:admin/admin;点击【Log in】;可以在这里修改密码,也可以直接点击【skip】跳过。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-id1tivNA-1602899592455)(assets\image-20201009155326709.png)]
- 配置数据源:点击左侧【Configuration】按钮–> 【Data Sources】
点击【Add data source】–> 选择【Prometheus】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KKrrfBsH-1602899592459)(assets\image-20201010092427959.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9rwEZTwJ-1602899592460)(assets\image-20201009155343552.png)]
输入名称–> 填写安装部署的prometheusURL地址–> 点击【Save & Test】,看到【Data source is working】代表添加成功
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VbsFfc4e-1602899592462)(assets\image-20201009155428805.png)]
配置样式:点击左侧菜单栏的【Create】按钮–>点击【import】–> 点击【Upload .json File】上传.json文件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-prewA0tf-1602899592464)(assets\image-20201009155452886.png)]
上传对应的josn文件(例如主机状态监控,导入Linux系统监控.json文件路径:)
导入文件后,配置【Options】
Name:自定义
Fplder:General
Unique identifier(uid):点击【change】即可自动生成
Prometheus:选择刚刚创建的数据源,这里为【Prometheus-1】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KfQFUSkB-1602899592465)(assets\image-20201009162108395.png)]
修改主机配置文件
在Prometheus安装节点的服务器中的/opt/cosmo/com/prometheus/file_sd_configs/node/linux_node.json文件
修改文件中的IP地址为你要监控的节点IP,监控多台node添加多个IP地址即可(注意以逗号分隔).
vim /opt/cosmo/com/prometheus/file_sd_configs/node/linux_node.json
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OFxlPhmj-1602899592466)(assets\image-20201009163430685.png)]
浏览器访问Grafana查看主机监控信息
点击左侧菜单栏中的【Dashborads】–> 【Home】–>选择【主机监控信息】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pFz9TmxZ-1602899592467)(assets\image-20201009164606652.png)]
选择对应节点查看对应的主机监控状态即可
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gMhov1lc-1602899592467)(assets\image-20201009164807196.png)]
修改nacos中的配置文件:点击【配置列表】–>【cosmosource】–> 【cosmo-mmp.properties】
将kibana和普罗米修斯和grafana的ip改为相对应部署服务的ip
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-66UtbkSv-1602899592468)(assets\image-20201009164902846.png)]
浏览器访问mmp-管理中台,查看节点监控信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4AjvRX6U-1602899592469)(assets\image-20201009164944874.png)]
监控web服务器
- 修改prometheus安装节点的/opt/cosmo/com/prometheus/file_sd_configs/webserver/tomcat.json文件,将配置文件中的IP地址修改为tomcat应用所在节点地址即可。
vim /opt/cosmo/com/prometheus/file_sd_configs/webserver/tomcat.json
[
{
"targets":
[
"192.168.1.71:5915"], #端口填你实际的node端口,实际上是5015
"labels":
{
"job":"jmx"
}
}
]
#这里的tomcat端口自己去过滤看看实纪端口netstat -lntp|grep cosmo-comsvr
- 可登录mmp管理页面查看验证
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lzJDrlsS-1602899592470)(assets\image-20201009165407349.png)]
监控应用
监控产品组键(改完后需重启普罗米修斯)
- 修改prometheus节点的配置文件中的IP地址为各个产品组件对应的ip地址及端口(与nacos服务列表中注册地址和端口一致)
vim /opt/cosmo/com/prometheus/file_sd_configs/springboot/cosmo-project.json
将上述文件里的ip改为你部署相对应基础服务节点的ip(端口一般不修改但是自己的看清楚是不是一样的端口)
#过滤进程
ps -e|grep cosmo
#停掉普罗米修斯
kill -9 普罗米修斯的进程
#重启普罗米修斯
sh /opt/cosmo/com/prometheus/start_prometheus.sh
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dI59M8dZ-1602899592470)(assets\image-20201012135046515.png)]
- 访问mmp管理页面点击【节点管理】–> 【添加JSON】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m98xlvyN-1602899592471)(assets\image-20201012135125798.png)]
- 将左侧json模板中的内容复制到右侧的编辑器栏,点击【保存】
此处修改ip和服务相对应的端口 #并且ip是你启动这些服务的主机ip,端口也是这些服务的端口号
-
点击右侧操作栏中的【修改】,将IP地址和端口改为对应的内容(nacos中服务列表的地址和端口),点击【提交】
这里的dapview改为nacos的节点ip端口为5080
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-92G8rGoz-1602899592471)(assets\image-20201012135303950.png)]
- 添加成功后,可在mmp界面中的应用监控查看到所监控的应用,点击对应的应用,查看是否监控成功即可。
mmp页面
平台监控==>应用监控==>数据中台
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B8KIpG0p-1602899592472)(assets\image-20201012135519748.png)]
- mmp左侧监控菜单栏修改:登录nacos,点击【配置列表】–>【public】–>【mmp-menu.properties】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KIWLspDm-1602899592473)(assets\image-20201012135552201.png)]
*注:第三步json示例 (主要修改的是ip和服务端口)
[
{
"colonyType": "4",
"colonyName": "ide",
"colonyDisplayName": "业务中台",
"colonyIP": "10.2.3.12",
"colonyPort": "5970",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "gdf",
"colonyDisplayName": "数据中台",
"colonyIP": "10.2.3.12",
"colonyPort": "5968",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "mmp",
"colonyDisplayName": "管理中台",
"colonyIP": "10.2.3.12",
"colonyPort": "5955",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "rsm",
"colonyDisplayName": "资源管理",
"colonyIP": "10.2.3.12",
"colonyPort": "5974",
"colonyDescribe": ""
},
{
"colonyType": "9",
"colonyName": "permsvr",
"colonyDisplayName": "权限服务",
"colonyIP": "10.2.3.12",
"colonyPort": "5950",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "fwp",
"colonyDisplayName": "自由页面",
"colonyIP": "10.2.3.12",
"colonyPort": "5967",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "bpm",
"colonyDisplayName": "业务流程",
"colonyIP": "10.2.3.13",
"colonyPort": "5953",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "apc",
"colonyDisplayName": "应用中心",
"colonyIP": "10.2.3.12",
"colonyPort": "5951",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "bvd",
"colonyDisplayName": "业务视图",
"colonyIP": "10.2.3.12",
"colonyPort": "5954",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "mxr",
"colonyDisplayName": "智能报表",
"colonyIP": "10.2.3.12",
"colonyPort": "5973",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "dip",
"colonyDisplayName": "数据集成",
"colonyIP": "10.2.3.12",
"colonyPort": "5950",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "dbm",
"colonyDisplayName": "数据库管理",
"colonyIP": "10.2.3.13",
"colonyPort": "5963",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "dap",
"colonyDisplayName": "多级填报",
"colonyIP": "10.2.3.12",
"colonyPort": "5959",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "dav",
"colonyDisplayName": "多级填报应用",
"colonyIP": "10.2.3.12",
"colonyPort": "5960",
"colonyDescribe": ""
},
{
"colonyType": "4",
"colonyName": "ewi",
"colonyDisplayName": "Execl网上导入",
"colonyIP": "10.2.3.13",
"colonyPort": "5966",
"colonyDescribe": ""
}
]
日志组件部署
注意
所有节点上传public文件到/opt/cosmo/com/下
说明
日志组件部署最低需要3节点
节点组件安装声明
192.168.1.61 elasticsearch kafka zookeeper
192.168.1.62 logstash kafka zookeeper
192.168.1.63 kibana kafka zookeeper
安装时,elasticsearch版本和kibana版本务必保持一致,否则kibana启动报错!
jdk必须写入环境变量
版本要求:jdk1.8以上
which java
java -version
mv /usr/bin/java /usr/bin/java
cat <<EOF >> /etc/profile
#set cosmo_java environment
JAVA_HOME=/opt/cosmo/com/public/jdk_lin
JRE_HOME=\$JAVA_HOME/jre
CLASS_PATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib
PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
EOF
#刷新变量
source /etc/profile
#查看java版本
java -version
#如果出现以下情况
[root@vm-CentOS75-0-67 com]# java -version
-bash: /opt/cosmo/com/public/jdk_lin/bin/java: 权限不够
[root@vm-CentOS75-0-67 com]# chmod 777 /opt/cosmo/com/public/jdk_lin/bin/java
[root@vm-CentOS75-0-67 com]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
配置Elasticsearch (65)
#上传elasticsearch-6.8.6.tgz 到 /opt/cosmo/install/mmp下
#解压
tar -Pzxvf /opt/cosmo/install/mmp/elasticsearch-6.8.6.tgz
#添加es用户(以超级管理员root用户身份运行)
sh /opt/cosmo/com/elasticsearch/adduser.sh
#修改配置文件
修改elasticsearch.yml配置文件(文档只标出需要修改的部分)
vi /opt/cosmo/com/elasticsearch/config/elasticsearch.yml
# 节点描述信息(非主机名)
23 node.name: cosmo-node-61 #改为你节点的名字
55 network.host: 192.168.1.61 #改为你节点的ip
# 端口默认无需修改
59 http.port: 9200
# 配置集群需要加入以下两条配置,单机则无需配置
89 #discovery.zen.ping.unicast.hosts: ["192.168.1.61", "192.168.1.62","192.168.1.63"]
90 #discovery.zen.minimum_master_nodes: 2 # 为了避免脑裂,集群节点数最少为 半数+1
=========================
授权chmod -R 777 /opt/cosmo/com/public/*
=========================
4. 以es用户身份启动(root用户无法直接启动)
su - es -c "/opt/cosmo/com/elasticsearch/bin/cosmo-es -d"
# 查看进程
ps -e|grep cosmo-es
5. 访问验证
在浏览器访问,http://ip:9200 出现以下内容代表成功
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xw2UcP6K-1602899592474)(assets\image-20201012171555071.png)]
配置Logstash (66)
#上传logstash-6.8.6.tgz 文件到/opt/cosmo/install/mmp/下
#解压
tar -Pzxvf /opt/cosmo/install/mmp/logstash-6.8.6.tgz
2. 修改配置文件
vi /opt/cosmo/com/logstash/config/logstash.conf
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.
input {
# filebeat
beats {
port => 5044
}
kafka {
bootstrap_servers => "192.168.1.61:9092,192.168.1.62:9092,192.168.1.63:9092" #改为3个节点的ip即可
#group_id => "cosmo-kafka"
#topics => "lmc-test"
#consumer_threads => "5"
topics_pattern => "^lmc-.*"
codec => json
}
}
===============================
#下面的ip全部改为部署es节点的ip
===============================
filter {
grok{
patterns_dir => ["/opt/cosmo/com/logstash/config/patterns"]
match => { "msgJson[message]" => "%{LOGTYPE:msgJson[logType]}:(DB|IFS|FIND|ALL)+\]%{MSG:msgJson[content]}"}
}
}
output {
if [msgJson][level] == "ERROR" {
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-errorlog-%{+YYYY.MM.dd}"
}
} else if [msgJson][logType] {
if [msgJson][logType] == "user.level" {
# 打印日志类型为user.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-userlog-%{+YYYY.MM.dd}"
}
} else if [msgJson][logType] == "login.level" {
# 打印日志类型为login.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-loginlog-%{+YYYY.MM.dd}"
}
}else if [msgJson][logType] == "message.level" {
# 打印日志类型为message.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-messagelog-%{+YYYY.MM.dd}"
}
}else if [msgJson][logType] == "security.level" {
# 打印日志类型为security.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-securitylog-%{+YYYY.MM.dd}"
}
}else if [msgJson][logType] == "access.level" {
# 打印日志类型为access.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-accesslog-%{+YYYY.MM.dd}"
}
} else if [msgJson][logType] == "socket.level" {
# 打印日志类型为socket.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-socketlog-%{+YYYY.MM.dd}"
}
} else if [msgJson][logType] == "resource.level" {
# 打印日志类型为resource.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-resourcelog-%{+YYYY.MM.dd}"
}
} else {
# 打印日志类型为user.level 类型
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-userlog-%{+YYYY.MM.dd}"
}
}
} else {
# elasticsearch {
# hosts => ["http://192.168.1.61:9200"]
# index => "lmc-%{[msgJson][project]}"
# index => "topic-%{[@metadata][topic]}"
#}
}
elasticsearch {
hosts => ["http://192.168.1.61:9200"]
index => "lmc-alllog-%{+YYYY.MM.dd}"
}
stdout {
codec => rubydebug
}
}
=========================
授权
chmod -R 777 /opt/cosmo/com/public/*
=========================
3. 后台启动logstash
nohup /opt/cosmo/com/logstash/bin/cosmo-logstash -f /opt/cosmo/com/logstash/config/logstash.conf --config.reload.automatic > /opt/cosmo/com/logstash/logs/logstash 2>&1 &
4. 查看进程
ps -e|grep cosmo-logstash
配置 Kibana(67)
#上传kibana-6.8.6.tgz文件到/opt/cosmo/install/mmp下
1. 解压
tar -Pzxvf /opt/cosmo/install/mmp/kibana-6.8.6.tgz
2. 修改配置文件(只列出需要修改的部分)
vi /opt/cosmo/com/kibana/config/kibana.yml
2 server.port: 5601
7 server.host: "192.168.1.63" #改kibana主机ip
25 server.name: "cosmo-kibana-67" #改主机名
28 elasticsearch.url: "http://192.168.1.61:9200" #改为es节点的ip
=================================
#授权
chmod -R 777 /opt/cosmo/com/public/*
=================================
3. 启动
nohup /opt/cosmo/com/kibana/bin/kibana >/dev/null 2>&1 &
#查看进程
ps -e|grep cosmo-kibana
4. 浏览器访问验证,出现以下界面代表kibana启动成功(初始安装没有cosmosource需要新建)
http://192.168.1.63:5601/
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z5bkqwqV-1602899592475)(assets\image-20201013085134495.png)]
配置Zookeeper(多个节点都要执行,执行方法一致,此处只列出单个)
#上传zookeeper的包到/opt/cosmo/install/mmp下
#解压zookeeper
tar -Pzxvf /opt/cosmo/install/mmp/zookeeper-3.4.13.tgz
#修改配置文件
vi /opt/cosmo/com/zookeeper/conf/zoo.cfg (只列出需要修改的部分)
2 tickTime=2000
5 initLimit=10
8 syncLimit=5
13 dataDir=/opt/cosmo/com/data/zookeeper/data #路径有错误,应该是/opt/cosmo/com/zookeeper/data
14 dataLogDir=/opt/cosmo/com/data/zookeeper/logs #路径有错误,应该是/opt/cosmo/com/zookeeper/logs
16 clientPort=2181
31 server.1=192.168.1.61:2888:3888 #改ip
32 server.2=192.168.1.62:2888:3888 #改ip
33 server.3=192.168.1.63:2888:3888 #改ip
# 其他zookeeper节点在文件里追加2、3以此类推
echo "1" > /opt/cosmo/com/zookeeper/data/myid
3. 启动zookeeper
#授权
chmod -R 777 /opt/cosmo/com/zookeeper/bin/*
#启动
sh /opt/cosmo/com/zookeeper/bin/zkServer.sh start
#其他管理命令(查看状态和停止)
sh /opt/cosmo/com/zookeeper/bin/zkServer.sh status
sh /opt/cosmo/com/zookeeper/bin/zkServer.sh stop
zookeeper集群状态,多个节点启动后,状态需要有一个leader和多个fllower代表成功。
#查看进程
ps -e|grep cosmo-zookeeper
配置kafka(多节点操作,此处只列出一个,注意ip地址)
克隆的注意修改kafka的文件
在/opt/cosmo/com/kafka/logs/的meta.properties里
#
#Tue Aug 11 17:43:33 CST 2020
version=0
broker.id=199 #这里的ip改为你相对应的ip
#上传kafka的包到/opt/cosmo/install/mmp下
# 解压kafka
tar -Pzxvf /opt/cosmo/install/mmp/kafka-2.11.tgz
#修改配置文件
vi /opt/cosmo/com/kafka/config/server.properties
21 broker.id=61 #此处改为你ip的后缀,只是一个标记不能一样,但是要和/opt/cosmo/com/kafka/logs/下的meta.properties一样不然kafka启动不成功(克隆的小心)
31 listeners=PLAINTEXT://192.168.1.61:9092 #改为你对应节点ip端口不改
36 advertised.listeners=PLAINTEXT://192.168.1.61:9092 #改为你对应节点ip端口不改
60 log.dirs=/opt/cosmo/com/kafka/logs
123 zookeeper.connect=192.168.1.61:2181,192.168.1.62:2181,192.168.1.63:2181
#改为你集群的ip
#授权
chmod -R 777 /opt/cosmo/com/kafka/config/*
#启动kafka
/opt/cosmo/com/kafka/bin/kafka-server-start.sh -daemon /opt/cosmo/com/kafka/config/server.properties
#查看进程
ps -e|grep cosmo-kafka
ps -aux|grep kafka
配置FileBeat(FileBeat安装节点为目标节点,即你要收集哪些节点的日志)
#filebeat文件在public路径下
修改filebeat配置文件(多个节点都要执行,执行方法一致,此处只列出单个)
vi /opt/cosmo/com/public/filebeat/filebeat.yml
15 filebeat.inputs:
21 - type: log
24 enabled: true
27 paths:
28 - /opt/cosmo/logs/**/*.log
68 filebeat.config.modules:
70 path: ${path.config}/modules.d/*.yml
73 reload.enabled: false
80 setup.template.settings:
81 index.number_of_shards: 3
117 setup.kibana:
147 output.kafka:
148 hosts: ["192.168.1.61:9092","192.168.1.62:9092","192.168.1.63:9092"] #修改为集群ip
149 topic: lmc-cosmo
150 required_acks: 1
184 processors:
185 - add_host_metadata: ~
186 - add_cloud_metadata: ~
187 - decode_json_fields:
188 fields: ['message']
189 target: msgJson
#授权
chmod 755 /opt/cosmo/com/public/filebeat/*
#这里只能给755权限777权限太大filebeat启动时会报错
Exiting: error loading config file: config file ("/opt/cosmo/com/public/filebeat/filebeat.yml") can only be writable by the owner but the permissions are "-rwxrwxrwx" (to fix the permissions use: 'chmod go-w /opt/cosmo/com/public/filebeat/filebeat.yml')
#大概意思就是filebeat文件只能是所有者才能启动,请修改你的权限
#启动Filebeat
nohup /opt/cosmo/com/public/filebeat/cosmo-filebeat -e -c /opt/cosmo/com/public/filebeat/filebeat.yml > /dev/null 2>&1 &
# 查看FileBeat进程状态
ps -e|grep filebeat
kibana页面配置
在所有组件启动成功后,访问Kibana页面
http://192.168.0.65:5601
点击左侧菜单栏中的【Default】–> 【Manage spaces】–> 【Create space】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PaHfvIRD-1602899592476)(assets\image-20201013123639485.png)]
创建cosmosource(名称固定不变,否则取不到日志)–> 点击【Create space】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QurZ0BOD-1602899592477)(assets\image-20201013123708562.png)]
创建后左侧Default处生成cosmosource空间,点击进入 --> 点击Management
点击Index Patterns创建索引,索引名称为【lmc-*】(固定不变),然后点击【Next step】
第一次参加lmc-*没出来日志没关系,重新创建一个索引 *刷新就出来了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mb6IUk4h-1602899592477)(assets\image-20201013123730870.png)]
创建时间戳【timestamp】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q8vUw9qu-1602899592478)(assets\image-20201013123932546.png)]
点击【Saved Objects】–> 【import】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vmtZ9B5N-1602899592478)(assets\image-20201013124048356.png)]
选择日志的JSON文件,注意版本号对应,应用kibana版本一致,否则导入失败。然后点击【import】进行导入
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lARDrUpu-1602899592479)(assets\image-20201013124105498.png)]
最后点击左侧菜单栏【Discover】查看是否成功获取到日志
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5X9eK16c-1602899592479)(assets\image-20201013124238252.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4YyZnaDX-1602899592480)(assets\image-20201013180354417.png)]
1、修改logstash配置文件/opt/cosmo/com/logstash/config/logstash.conf
(1)注释掉以下内容
9 # kafka {
10 # bootstrap_servers => "192.168.0.97:9092,192.168.0.98:9092,192.168.0.99:9092"
11 # #group_id => "cosmo-kafka"
12 # #topics => "lmc-test"
13 # topics_pattern => "^lmc-.*"
14 # codec => json
15 # }
2、修改filebeat配置文件/opt/cosmo/com/filebeat/filebeat.yml
(1)注释以下内容
147 #output.kafka:
148 # hosts: ["192.168.0.97:9092","192.168.0.98:9092","192.168.0.99:9092"]
149 # topic: lmc-cosmo
150 # required_acks: 1
(2)output开启logstash连接
166 output.logstash:
167 # 是否启用
168 enabled: true
169 # logstash 的主机
170 hosts: ["192.168.0.98:5044"]
】–> 【import】
[外链图片转存中…(img-vmtZ9B5N-1602899592478)]
选择日志的JSON文件,注意版本号对应,应用kibana版本一致,否则导入失败。然后点击【import】进行导入
[外链图片转存中…(img-lARDrUpu-1602899592479)]
最后点击左侧菜单栏【Discover】查看是否成功获取到日志
[外链图片转存中…(img-5X9eK16c-1602899592479)]
[外链图片转存中…(img-4YyZnaDX-1602899592480)]
1、修改logstash配置文件/opt/cosmo/com/logstash/config/logstash.conf
(1)注释掉以下内容
9 # kafka {
10 # bootstrap_servers => "192.168.0.97:9092,192.168.0.98:9092,192.168.0.99:9092"
11 # #group_id => "cosmo-kafka"
12 # #topics => "lmc-test"
13 # topics_pattern => "^lmc-.*"
14 # codec => json
15 # }
2、修改filebeat配置文件/opt/cosmo/com/filebeat/filebeat.yml
(1)注释以下内容
147 #output.kafka:
148 # hosts: ["192.168.0.97:9092","192.168.0.98:9092","192.168.0.99:9092"]
149 # topic: lmc-cosmo
150 # required_acks: 1
(2)output开启logstash连接
166 output.logstash:
167 # 是否启用
168 enabled: true
169 # logstash 的主机
170 hosts: ["192.168.0.98:5044"]