如何获取amazon sagemaker笔记本实例的public ip?可能吗?

How to get the public ip of amazon sagemaker's notebook instance? Is it possible?

是否可以获取亚马逊 sagemaker notebook 实例的 public-ip?

我想知道我是否可以使用 public ip ssh 进入它以进行远程调试。

我尝试使用下面的 curl 命令获取 public ip

$curl http://169.254.169.254/latest/meta-data

这只是列出本地 ip 而不是 public ip。

我也尝试了下面的命令。

$curl ifconfig.me

这 returns 一个像 13.232.96.15 这样的 IP 地址。如果我尝试通过 ssh 连接它,它不起作用。

我们还有其他方法吗?

注意:ssh端口22已经在安全组中打开

我认为您不能通过 ssh 连接到笔记本实例。您可以使用从控制台打开它们,或者使用 API 获取 url,回复:https://docs.aws.amazon.com/sagemaker/latest/dg/howitworks-access-ws.html

如果你需要一个终端,那么你可以从 Jupyter 打开一个。

虽然我已经接受了 Julien 的回答,但我粘贴了我从 aws 得到的回复,这样可能会有帮助。

问题:我们可以通过 ssh 连接到 sagemaker notebook 实例吗?

答案:没有

问题:为什么不呢?

回答:notebook 实例是 SageMaker 完全托管架构的一部分。这意味着该服务的任何组件的所有底层实例都部署在 SageMaker 托管环境中,并且只能通过 SageMaker API 访问它们。对于笔记本实例,客户唯一的访问权限是通过 Jupyter 笔记本(或 Jupyter 实验室),您必须使用 CreatePresignedNotebookInstanceUrl API 才能获得授权 URL 这不包括通过 SSH 的访问。

URL 是 public 是的,但客户仍然可以限制对特定 IP 地址的访问[1] 或通过 VPC 端点连接到它 [2]。

[1] https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreatePresignedNotebookInstanceUrl.html

[2]https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-interface-endpoint.html