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命令关闭进程

相关推荐
爱看老照片1 小时前
Spring Cloud 微服务安全防护策略实现指南
微服务·springcloud·security·防护性策略实现·防护性技术选型
weixin_BYSJ198713 小时前
【计算机毕设】基于SpringBoot与Vue的文物保护档案管理系统08621
vue.js·spring boot·spring cloud·微服务·架构·django·课程设计
右耳朵猫AI20 小时前
Go周刊2026W37 | Ebitengine 纯 Go 化、simd 重写 TurboPFor、json/v2 落地
后端·微服务·go
@PHARAOH1 天前
WHAT - 从前端组件化思维到后端架构设计入门
前端·微服务·架构
天天喝旺仔1 天前
深入理解 JWT:从 Token 结构、签名机制到前后端鉴权实战
redis·安全·spring·微服务·https
北京盛世宏博1 天前
老旧档案库房环境恒温恒湿自动化改造:不破坏原有库房结构的轻量化集成方案
监控·档案温湿度
海宇AI2 天前
微服务架构实战:基于海宇对外投资历史查询服务构建自动化合规审计网关
人工智能·微服务·架构·自动化
行百里er2 天前
Spring Insight 里如何画出服务拓扑
spring boot·spring cloud·监控
Safeploy安策数据2 天前
密钥管理入门:从泄漏复盘看企业如何守住密钥安全底线
大数据·运维·微服务
谷哥的小弟2 天前
微服务开发版本适配说明
spring cloud·微服务