如何在本地机器上启用或浏览在 EC2 上运行的 Web 服务?

Posted

技术标签:

【中文标题】如何在本地机器上启用或浏览在 EC2 上运行的 Web 服务?【英文标题】:How to enable or browse web service running on EC2 on local machine? 【发布时间】:2015-04-14 18:37:38 【问题描述】:

我的 EC2 实例为 EMR 集群启用了端口转发。 Ganglia 监控服务已经在 EMR 上运行。我可以使用“文本浏览器”Lynx 从 EC2 实例浏览 Ganglia。

lynx http://localhost:5000/ganglia

但是,我想从我的本地机器 (Mac Yosemite) 访问此服务。我做了一些研究,发现我需要 X11 端口转发。所以现在我也启用了 X11 端口转发。

echo $DISPLAY 

让我关注 EC2 实例

localhost:14.0    

我还可以运行“xclock”,它会在我的本地机器上启动时钟。

我尝试使用这种语法 ssh 进入 EC2 实例。

 ssh -C -c blowfish -N -L:1050:myEc2Server:5000 myUser@myEc2Server

然后,如果我在谷歌浏览器中输入 http://127.0.0.1:1050/ganglia,我会收到消息说没有收到数据。

谁能指出出了什么问题?我尝试了从本地机器到 Ec2 实例的详细日志,它有以下消息 -

channel 2: open failed: connect failed: Connection refused

简而言之,我希望能够从本地机器上看到 Ganglia。任何帮助表示赞赏。

~干杯

【问题讨论】:

谁投了反对票,你能解释一下原因吗? 【参考方案1】:

我在自己的笔记本电脑 (Mac Yosemite) 上测试了一个 ssh 命令行,并进行了以下工作

ssh -N -L:1050:localhost:5000 username@public-dns-of-ec2-instance

连接后,我使用以下方法进行了验证: http://localhost:1050/ganglia.

在上面的命令行中,您可能只需要将 myEc2Server 替换为 localhost 或 127.0.0.1。

【讨论】:

以上是关于如何在本地机器上启用或浏览在 EC2 上运行的 Web 服务?的主要内容,如果未能解决你的问题,请参考以下文章

如何从公司内部机器浏览器访问 AWS EC2 实例私有 IP 以访问在 EC2 上运行的应用程序

AWS IMDS 在特殊链接本地 IP 169.254.169.254 上运行 - IMDS 是不是在同一台 EC2 机器上运行,查询哪些信息?

如何在 EC2 实例上打开 Web 服务器端口

如何访问在 AWS EC2 Ubuntu 的本地主机上运行的 Parse 服务器?

如何启用 (https) SSL 证书 AWS EC2 托管站点

为啥多线程 python 程序在 ec2 微实例上运行缓慢?