Centos7搭建 Skywalking 单机版

介绍

Skywalking是应用性能监控平台,可用于分布式系统,支持微服务、云原生、Docker、Kubernetes 等多种架构场景。

整体架构如图

Agent :在应用中,收集 Trace、Log、Metrics 等监控数据,使用 RPC、RESTful API、Kafka 等 Transport 传输方式,发送给 OAP 服务。

OAP :首先 Receiver 接收 Agent 发送的监控数据,然后 Aggregator 进行聚合计算,之后存储到 Storage 外部存储器,最终提供给 GUI 查询数据。

Storage :存储监控数据,支持 Elasticsearch、MySQL、TiDB、H2 等多种数据库。

GUI :UI 可视化界面,提供监控数据的查询后台。

本文Storage 组件是使用Elasticsearch。

安装步骤如下

安装Elaticsearch

参考:Centos7源码方式安装Elasticsearch 7.10.2单机版

下载SkyWalking安装包

官网:Downloads | Apache SkyWalking

下载SkyWalking APM

https://archive.apache.org/dist/skywalking/9.3.0/apache-skywalking-apm-9.3.0.tar.gz

配置jdk

参考:Centos7安装jdk-CSDN博客

安装

本文安装目录为:/opt

上传并解压

将安装包apache-skywalking-apm-9.3.0.tar.gz上传到/opt目录

复制代码
cd /opt
#解压
tar -zxvf apache-skywalking-apm-9.3.0.tar.gz
#进入安装目录
cd apache-skywalking-apm-bin
ll

编辑配置文件

配置elasticsearch

复制代码
vi /opt/apache-skywalking-apm-bin/config/application.yml;

找到storage部分,默认为h2,修改为elasticsearch

配置es相关信息,要修改的部分如下图所示

修改web端口号(可选)

SkyWalking UI界面默认8080端口,如果需要更换,则安装下面的方式修改

复制代码
cd apache-skywalking-apm-bin;
vi webapp/application.yml;

将8080修改为要使用的端口号,注意修改了端口号后,需要注意防火墙放开

防火墙设置

注意端口号如果不是默认的,将下面的端口号修改为实际的端口号

复制代码
# 放开web端口号
firewall-cmd --zone=public --add-port=8080/tcp --permanent;
# grpc协议  用于agent上传数据 
firewall-cmd --zone=public --add-port=11800/tcp --permanent;
firewall-cmd --reload;

启动

复制代码
cd /opt/apache-skywalking-apm-bin;
bin/startup.sh

虽然提示启动成功了,但是如果访问不了需要查看一下日志,日志位置为:

安装目录/apache-skywalking-apm-bin/logs/目录下

本示例日志目录为:/opt/apache-skywalking-apm-bin/logs

访问

浏览器访问:http://192.168.110.155:8080 如下图所示表示启动成功

配置自启动

通过定时任务设置开机后启动

复制代码
# 进入定时任务编辑页面
crontab -e

最后添加如下内容,表示服务器启动30秒后执行启动脚本

复制代码
@reboot ( sleep 30 ; source /etc/profile&&bash /opt/apache-skywalking-apm-bin/bin/startup.sh)

运维

日志

复制代码
/opt/apache-skywalking-apm-bin/logs

启动

复制代码
#启动oap和web ui服务
bash /opt/apache-skywalking-apm-bin/bin/startup.sh

#单独启动oap服务
bash /opt/apache-skywalking-apm-bin/bin/oapService.sh
#单独启动webui服务
bash /opt/apache-skywalking-apm-bin/bin/webappService.sh

关闭

jps 查出进程号

然后使用kill命令关闭进程

相关推荐
sld1689 小时前
打破云服务“绑定”局限,打造高适配性、强管控力的混合云架构新范式
微服务·云原生·架构
盛世宏博北京10 小时前
档案安全守护者:无人值守温湿度自动化管控方案
监控·档案温湿度·库房温湿度
DencyCheng10 小时前
Nacos 的全面价值分析:从多角色视角到多架构场景的深度解析
微服务·架构
lhrimperial13 小时前
微服务架构深度解析-微服务理论基础(一)
微服务·架构·wpf
lhrimperial14 小时前
系统架构设计实战:从单体到微服务的演进之路
微服务·架构·系统架构
zs宝来了14 小时前
大厂面试实录:Spring Boot源码深度解析+Redis缓存架构+RAG智能检索,谢飞机的AI电商面试之旅
spring boot·redis·微服务·大厂面试·java面试·rag·spring ai
货拉拉技术15 小时前
面向可观测数据融合的 Exemplar
后端·监控
闲人编程15 小时前
电商平台用户系统API设计
数据库·后端·消息队列·fastapi·监控·容器化·codecapsule
weihubeats16 小时前
当SkyWalking遇上自研Trace:链路断开的核心原因与终极兼容方案
skywalking
齐 飞16 小时前
Spring Cloud Alibaba快速入门-Gateway
spring cloud·微服务·gateway