开启/关闭可观测性系统
为便于后续排查故障、定位问题,请在正 式上线使用前开启可观测。
一、前置约束
适用版本:ONES版本 >= 6.5.0 || 6.1 LTS >= 6.1.94 且底座为 K3s(K8s1.16.7 集群不支持)。
二、开启可观测性系统
1.配置启动开关
执行下面命令进入运行中的 ones 容器,修改配置文件
ones-ai-k8s.sh
vi config/private.yaml
# 添加如下配置:
onesTelemetryExportEndpoint: "https://hybridcloud.ones.cn/telemetry/otlp/"
onesTelemetryExportLogEnabled: true
onesTelemetryClickhouseEnable: true
otlpExportGrpcAddr: "otlp-collector-service.ones-telemetry:4317"
grafanaLocalNodePort: "31380"
grafanaLocalHost: "${IP}:31380" # Grafana 对外访问入口, 填写实际的IP和NodePort
# 上述配置默认启用混合云上报,需如不启用混合云上报, 请注释或删除如下两个配置:
# onesTelemetryExportEndpoint: "https://hybridcloud.ones.cn/telemetry/otlp/"
# onesTelemetryExportLogEnabled: true
2.配置安全选项(可选)
默认访问 http://${IP}:31380 grafana 页面时无账号密码,如有安全要求,请再添加如下2个配置:
grafanaLocalBasicAuthUser: "" # example: "admin"; Grafana BasicAuth username.
grafanaLocalBasicAuthPassword: "" # example: "sToIgoAV4m2ho"; for password admin run: openssl passwd -6 admin
3.卸载旧组件(仅升级场景)
从 6.5.0 或 LTS 6.1.94 版本以下升级上来的环境,需要先卸载旧组件:
make delete-ones-logging RETAIN_DATA=false
make delete-monitoring-system RETAIN_DATA=false
make delete-prometheus RETAIN_DATA=false
make delete-fluent-bit RETAIN_DATA=false
make delete-ones-alert RETAIN_DATA=false
# 若集群使用本地存储,且无需保留监控数据,可以执行下面命令删除数据
# 默认 ONES 数据目录是 /data/ones,需kubectl describe deploy installer-api | grep Path 确认路径
rm -r /data/ones/ones-local-storage/ones-logging/ones-logging
rm -r /data/ones/ones-local-storage/others-static-pvc/monitoring-system
4. 安装可观测性系统
# 执行如下命令使配置生效
make setup-ones-telemetry
make setup-ones
#检测所有pod状态为Running,表示开启动作完成
kubectl get pod -n ones-telemetry
kubectl get svc -n ones-telemetry | egrep 'grafana|otlp'
exit
#curl测试返回301表示正常
curl -sSI --max-time 5 http://127.0.0.1:31380
三、功能验证与信息采集
1. 页面访问
访问 http://${IP}:31380 Grafana 页面可看到监控数据;分析故障时,可截图故障点的监控信息提供给 ONES 工程师。
2.日志生成与获取
在如下目录看到新的日志:
# 本地存储模式下默认 ONES 数据目录是 /data/ones
cd /data/ones/ones-local-storage/ones-logging/ones-telemetry/data-volume-ones-logging-statefulset-0/logs/
# 分析故障时,可打包该文件、提供给 ONES 工程师
tar cvf "/tmp/logs-$(hostname)-$(date '+%Y%m%d').tar" ./
# 生成的离线压缩文件在 `/tmp/` 目录下,例如 `/tmp/logs-test1-20241008.tar`
3. 诊断文件生成与获 取
页面操作后,可在如下目录看到新的离线诊断文件:
# 本地存储模式下默认 ONES 数据目录是 /data/ones
cd /data/ones/ones-local-storage/otlp-collector/ones-telemetry/data-volume-otlp-collector-statefulset-0/files
# 分析故障时,可打包该文件、提供给 ONES 工程师
tar cvf "/tmp/telemetry-$(hostname)-$(date '+%Y%m%d').tar" ./
# 生成的离线压缩文件在 `/tmp/` 目录下,例如 `/tmp/telemetry-test1-20241008.tar`
四、可观测性系统访问端口配置
1、修改监控访问端口
ONES 可观测性系统默认开启指标监控。通过配置 grafanaLocalNodePort 控制监控页面的访问端口。
修改 config/private.yaml 配置文件
grafanaLocalNodePort: "31380"
grafanaLocalHost: "${IP}:31380"
执行命令应用配置
make setup-ones-telemetry
使用 ONES 服务的 ip + grafanaLocalNodePort 访 问 grafana 控制台。
2、关闭监控访问
修改 config/private.yaml 配置文件
# 注释如下配置
# grafanaLocalNodePort: "31380"
# grafanaLocalHost: "${IP}:31380"
执行命令应用配置
make setup-ones-telemetry