如何在本地查看远程服务器的tensorboard

问题描述 投票:0回答:5

使用我自己的笔记本电脑在实验室的远程服务器上运行Tensorflow

我用

tensorboard --logdir=./log
尝试查看运行结果的曲线

我得到:

 Starting TensorBoard  on port 6006
(You can navigate to http://0.0.0.0:6006)

然后我尝试在浏览器中连接它,但失败了...

有人知道如何配置才能在我自己的笔记本电脑上查看远程服务器的张量板吗?

tensorflow tensorboard
5个回答
22
投票

如果您使用您提到的命令在实验室实例上启动tensorboard服务器,它将在实验室服务器上运行并从labserverIP:6006托管tensorboard网页。

我使用运行 SLURM 的集群(管理每个人的作业提交),并且能够在集群节点上启动 Tensorboard 服务器,然后通过 SSH 连接到运行 Tensorboard 服务器的特定节点,并将站点从 labserverIP:6006 转发到我的笔记本电脑在本地主机:6006。我在 github here 上的脚本显示了我用于为 SLURM 执行此操作的命令。本质上就是这三个步骤:

  1. 启动远程服务器并运行

    tensorboard --logdir=./log --host $SERVER_IP --port $SERVER_PORT

  2. 使用笔记本电脑上的 SSH

    ssh [email protected] -L $LOCAL_PORT:$SERVER_IP:$SERVER_PORT

您可以将 [email protected] 替换为服务器公共 IP。

  1. 前往笔记本电脑浏览器中的
    http://localhost:$LOCAL_PORT
    访问tensorboard页面。

另一个选项是将所有日志文件复制到本地计算机或共享驱动器,然后在笔记本电脑上启动tensorboard,并将本地或共享目录作为日志目录。


9
投票

这就是我将远程服务器上的端口转发到本地家庭计算机的方法


ssh -NfL 6006:localhost:6006 username@remote_server_address


4
投票

如果您能够使用公共 IP 从笔记本电脑通过 SSH 连接到您的实验室实例,无论显示什么消息,您都可以使用

http://<publicIP>:6006
查看 TensorBoard。

否则,如果没有与实验室机器服务器关联的公共 IP,您可以尝试在通过 SSH 连接到实验室机器时转发端口 6006。 请参阅OpenSSH端口转发手册以了解相同内容。


2
投票

这就是我们解决它的方法(Linux SLURM 服务器)

  1. ssh 连接到您的服务器,并通过运行以下命令通过终端查找其 IP:
    IP=`hostname -I`
  2. 在主机服务器上打开tensorboard服务器:

python -m tensorboard.main --logdir=/your/dir --host $IP

  1. 使用浏览器浏览
    http://$IP:6006

2
投票

您可以使用以下选项

tensorboard --logdir logs --bind_all

然后,将链接复制并粘贴到本地浏览器

© www.soinside.com 2019 - 2024. All rights reserved.