搭建最新版开源监控平台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成长记一起探讨学习!↓↓↓

相关推荐
特长腿特长7 小时前
centos、ubantu系列机的用户和用户组的结构是什么?具体怎么配置?用户组权限怎么使用?这篇文章持续更新,帮助你复习linux的基础知识
linux·运维·centos
zzzyyy5387 小时前
Linux环境变量
linux·运维·服务器
赛博云推-Twitter热门霸屏工具8 小时前
Twitter运营完整流程:从0到引流获客全流程拆解(2026)
运维·安全·自动化·媒体·twitter
CHHC18808 小时前
NetCore树莓派桌面应用程序
linux·运维·服务器
帮我吧智能服务平台9 小时前
装备制造智能制造升级:远程运维与智能服务如何保障产线OEE
运维·服务器·制造
w6100104669 小时前
cka-2026-cri-dockerd
运维·k8s·cka
人间打气筒(Ada)9 小时前
「码动四季·开源同行」HarmonyOS应用开发:常见组件
华为·开源·harmonyos·组件·布局·鸿蒙开发
卤炖阑尾炎10 小时前
PostgreSQL 日常运维全指南:从基础操作到备份恢复
运维·数据库·postgresql
handsomestWei10 小时前
Docker引擎API接入配置
运维·http·docker·容器·api
si莉亚10 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源