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

相关推荐
大江东第一深情21 分钟前
Origin 2024 进行语言切换后仍然显示为英文
运维·前端
CSDN官方博客33 分钟前
CSDN社区镜像创作活动
大数据·运维·人工智能
孤鸿玉44 分钟前
Flutter官方正在搞热更新(动态化)?硬核,干货,有证据,有代码
flutter·开源
石小千44 分钟前
Ubuntu24.04 安装Docker
运维·docker·容器
zhuzewennamoamtf1 小时前
Linux设备树理解和应用
linux·运维·服务器
雨大王5121 小时前
汽车厂内物流如何通过自动化实现降本增效?
运维·自动化
Qzkj6661 小时前
医疗和教育行业自动化、精准匹配、易掌握的数据分类分级最佳实践与案例
大数据·运维·自动化
L、2181 小时前
Flutter 与开源鸿蒙(OpenHarmony)的融合开发实践
flutter·开源·harmonyos
我科绝伦(Huanhuan Zhou)1 小时前
Linux 环境下 SQL Server 自动收缩日志作业创建脚本(Shell 版)
linux·运维·数据库·sql server
徐徐图之!1 小时前
五、【阶段一运维基础 之 干货!!!】安装 Vmware 和 CentOS
linux·运维·centos