系统设置 ——》 java ——》 es ——》skywalking(OAP,SkyWalking的UI)
解决:老实说,检查 skywalking的 application.yml 是否写对es的配置,里面的东西确实看着很晕,这个报错主要是因为es的配置,缩进没写好,当时我空了4个空格(粗心如我~)
问题二:skywalking ui界面白屏
一开始,我还怀疑自己的眼睛。。。
在skywalking的日志里找到这个报错信息,host [http://localhost:9200], URI [/_template/sw_alarm_record?master_timeout=30s], status line [HTTP/1.1 503 Service Unavailable]
说es的/_template 地址访问返回503 。
话说上面已经交代过,我之前在elk服务器上是成功搭建好skywalking的,于是试着在elk服务器上访问是有东西返回的,
在我专属监控服务器上则各种503,http://192.168.2.228:9200/_template/ 和 下面截图的都是。根据观察:_template/sw_alarm_record 应该是skywalking 启动过程中需要读取的es索引模块,现在503读不了。
再者,产生白屏的过程中,skywalking-oap-server 启动的端口11800和12800是没有监听起来的。这两个端口分别为收集监控数据的端口和接受前端请求的端口。
一开始以为skywalking的配置文件:application.yml 关于es的配置没写好,以为写localhost不行改成服务器ip,也尝试过在es的配置文件:elasticsearch.yml 中改参数值:cluster.initial_master_nodes
最后通过这篇文章解决问题的:https://blog.csdn.net/leenhem/article/details/121968103
要配置这个玩意:
discovery.seed_hosts: ["192.168.2.228:9200"]
修改完的配置文件内容如下:
cluster.name: skywalking-es node.name: elk-228 path.data: /home/{用户名}/es7/data path.logs: /home/{用户名}/es7/logs
network.host: 0.0.0.0
discovery.seed_hosts: ["192.168.2.228:9200"]
cluster.initial_master_nodes: ["192.168.2.228"]
http.cors.enabled: true
http.cors.allow-origin: "*"
最后验证测试:
重启es:./bin/elasticsearch -d
重启skywalking:cd apache-skywalking-apm-bin-es7
这个18080的端口我改过,原来是8080