搭建最新版开源监控平台SigNoz踩的坑

转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权并注明出处。感谢您喜爱本文,请文明转载,谢谢。


一、前言

SigNoz 是一款开源应用程序性能监控工具,在往期相关文章(文末有链接)中有相关介绍与使用测试。但当时还是v0.16.2版本,有些功能不是很好用,比如和Prometheus的Dashboards兼容不是很好、日志查看不是很友好等。

近期发现已经升级到了0.81.0(截止发文,已更新到v0.82.1),跟着官网重新搭建一套试用看看有哪些新变化。

二、离线环境搭建

采用方式为docker-compose方式的纯离线搭建。先下载docker镜像清单:

复制代码
docker pull clickhouse/clickhouse-server:24.1.2-alpine
docker pull bitnami/zookeeper:3.7.1
docker pull signoz/signoz:v0.82.0
docker pull signoz/signoz-otel-collector:v0.111.41
docker pull signoz/signoz-schema-migrator:v0.111.41
docker pull jaegertracing/example-hotrod:1.61.0
docker pull signoz/locust:1.2.3
docker pull otel/opentelemetry-collector-contrib:0.111.0
docker pull gliderlabs/logspout:v3.2.14

如下载不了镜像,可使用代理https://dockerhub.azk8s.cn

使用docker-compose方式启动部署:

复制代码
git clone -b main https://github.com/SigNoz/signoz.git
cd signoz/deploy/docker
docker-compose up -d --remove-orphans

三、遇到的错误

1. 启动失败

官网给的启动命令为:

启动命令改成docker-compose up -d --remove-orphans,启动成功。

2. docker-compose版本太低,启动失败

启动signoz报错如下:

解决方法:

重装高级版本的docker-compose解决,我装的是v2.35.1版本。

3. 部署中下载histogram-quantile失败

在docker-compose.ha.yaml和docker-compose.yaml两个文件都有如下命令:

复制代码
wget -O histogram-quantile.tar.gz "https://github.com/SigNoz/signoz/releases/download/histogram-quantile%2F$${version}/histogram-quantile_$${node_os}_$${node_arch}.tar.gz"
tar -xvzf histogram-quantile.tar.gz
mv histogram-quantile /var/lib/clickhouse/user_scripts/histogramQuantile

如果是离线部署,可手动下载histogram-quantile_linux_amd64.tar.gz后,解压后将文件histogram-quantile放到目录signoz/deploy/docker/common/clickhouse/user_scripts下,然后注释掉yaml文件中上面几条命令。

4. signoz容器报错

启动signoz报错runtime/cgo: pthread_create failed: Operation not permitted,具体如下:

复制代码
[root@test102 docker]# docker-compose up -d --remove-orphans
WARN[0000] /home/app/signoz/deploy/docker/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion 
[+] Running 8/8
 ✔ Network signoz-net Created 0.1s 
 ✔ Container signoz-init-clickhouse Exited 1.5s 
 ✔ Container signoz-zookeeper-1 Healthy 31.5s 
 ✔ Container signoz-clickhouse Healthy 63.3s 
 ✔ Container schema-migrator-sync Exited 152.1s 
 ✘ Container signoz Error 154.7s 
 ✔ Container schema-migrator-async Started 152.6s 
 ✔ Container signoz-otel-collector Created 0.0s 
dependency failed to start: container signoz is unhealthy
[root@test102 docker]#

查看日志:

复制代码
[root@test102 user_scripts]# docker logs signoz
runtime/cgo: pthread_create failed: Operation not permitted
SIGABRT: abort
PC=0x22d9f1c m=0 sigcode=18446744073709551610
goroutine 0 gp=0x4b27900 m=0 mp=0x4b28de0 [idle]:
runtime: g 0 gp=0x4b27900: unknown pc 0x22d9f1c
stack: frame={sp:0x7ffc81550c10, fp:0x0} stack=[0x7ffc80d52000,0x7ffc81551090)

解决方案:

在docker-compose.yaml文件的signoz模块添加privileged: true

复制代码
 signoz:
 !!merge <<: *db-depend
 image: signoz/signoz:${VERSION:-v0.81.0}
 container_name: signoz
 command:
 - --config=/root/config/prometheus.yml
 - --use-logs-new-schema=true
 - --use-trace-new-schema=true
 privileged: true  #添加这一行
 ports:

--END--

老版本相关文章:

​开源可观测性平台Signoz系列(一)【开篇】​

​开源可观测性平台Signoz(二)【日志采集篇】​

​开源可观测性平台Signoz(三)【服务器主机监控篇】​

开源可观测性平台Signoz(四)【链路监控及数据库中间件监控篇】

更多精彩欢迎关注SRE成长记一起探讨学习!↓↓↓

相关推荐
晚霞的不甘6 小时前
Flutter for OpenHarmony 可视化教学:A* 寻路算法的交互式演示
人工智能·算法·flutter·架构·开源·音视频
wangjialelele7 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
HypoxiaDream8 小时前
LINUX-Ext系列⽂件系统
linux·运维·服务器
小毛驴8508 小时前
Linux curl 命令用法
linux·运维·chrome
晚霞的不甘8 小时前
Flutter for OpenHarmony 实现计算几何:Graham Scan 凸包算法的可视化演示
人工智能·算法·flutter·架构·开源·音视频
李斯啦果8 小时前
【Linux】Linux目录配置
linux·运维·服务器
AI+程序员在路上8 小时前
linux下线程中pthread_detach与pthread_join区别
linux·运维·服务器
logocode_li8 小时前
说透 Linux Shell:命令与语法的底层执行逻辑
linux·运维·ssh
猫头虎8 小时前
OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧
ide·vscode·开源·ssh·github·aigc·ai编程
一只大侠的侠8 小时前
Flutter开源鸿蒙跨平台训练营 Day12从零开发通用型登录页面
flutter·开源·harmonyos