TensorBoard 与 6006 端口
6006 是 TensorBoard 的默认端口。TensorBoard 是训练过程可视化的常规工具:损失曲线、指标变化、计算图、嵌入投影与图像样本都在这个网页里查看。它自身没有认证机制,页面里的实验名、日志目录结构与样本数据都属于团队内部信息,云上训练实例把它绑到公网是常见的失误。
基本信息
| 服务 | TensorBoard 可视化面板 |
|---|---|
| 端口/协议 | TCP HTTP 6006 |
| 启动方式 | tensorboard --logdir <日志目录> --port 6006 |
| 数据来源 | 训练框架写入的事件文件 |
| 权限要求 | 无内置认证,依赖部署侧限制访问 |
| 安全等级 | 仅内网,或经 SSH 隧道访问 |
典型使用场景
- 训练监控:对比多次实验的损失与指标曲线
- 模型分析:查看计算图与算子耗时分布
- 数据检查:浏览图像、文本与音频样本
- 嵌入可视化:观察高维向量的降维投影
- 超参对比:把不同参数组的运行结果放在一起看
启动与安全访问
启动与安全访问
tensorboard --logdir runs --port 6006 # 默认绑定本机,按需调整
ssh -L 6006:127.0.0.1:6006 user@server # 远程服务器推荐做法:本地建隧道
ss -lntp | grep 6006 # 确认监听地址
curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:6006/ # 本机可达性
# 需要团队共享时放在带认证的反向代理之后,并配合路径前缀暴露面与处置
| 暴露面 | 后果 | 处置 |
|---|---|---|
| 绑定全网卡且无防火墙 | 任何人可浏览实验与样本 | 改绑回环并限制来源 |
| 公网可访问 | 训练数据与目录结构外泄 | 只经 SSH 隧道或内网访问 |
| 日志目录含敏感数据 | 样本可能包含业务信息 | 隔离日志目录并清理敏感样本 |
| 多任务共用实例 | 日志互相覆盖 | 按实验分目录并定期归档 |
运维要点
- 训练启动脚本里默认加上只绑回环的参数,减少无意暴露
- 共享面板改用反向代理加认证,而不是直接放开端口
- 事件文件体积增长很快,定期归档避免面板加载缓慢
- 日志目录避免软链到业务数据目录,减少意外泄露
- 把面板访问纳入资产清单,临时实例下线时一并回收
TensorBoard 支持路径前缀与反向代理部署。确实要给团队共享时,正确做法是放在带认证的反向代理之后,而不是把端口直接暴露出去。
训练日志里常包含数据集路径、实验命名与真实样本图像,泄露的不只是模型信息,还可能是业务数据的切片。公网暴露前先确认内容属性。