为什么 ssh 密钥在 AWS ec2 实例 (sage maker) 重启时丢失?
Why are shh keys lost on reboot of AWS ec2 instance (sage maker)?
我有一个 AWS SageMaker 笔记本 运行 用于工作,我有一个私人 github 存储库,其中包含一些我常用的功能,其格式设置为pip 可安装,所以我通过这样做设置了一个 SSH 密钥:
ssh-keygen
-t rsa -b 4096 -C "danielwarfield1@gmail.com"
输入,输入,输入(默认保存位置无密码)
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rs
然后我将 public 密钥复制到 github,然后我 运行 安装我的库
$PWD/pip install git+ssh://git@github.com/...
其中 $PWD
是包含我正在使用的 conda env 的 pip 的目录(tensorflow2_p36 特别是 AWS 提供的那个)
这工作正常,直到我重新启动 EC2,然后我的 shh 密钥(连同我所有其他安装)都丢失了,我必须重复这个过程。我预计模块会丢失,我知道 SageMaker 管理环境,但我丢失 ssh 密钥似乎很奇怪,有没有一个地方可以保存我的 ssh 密钥,它不会丢失,但我仍然可以在 pip 安装时找到它?
即使您关闭笔记本实例,/home/ec2-user/SageMaker
位置也会保留,您可以尝试在此处保存内容以保留它们。关闭实例时保存在别处的东西将会丢失
关于私有 git 集成,您可以使用 SageMaker git Notebook integration,它使用 Secrets Manager 来安全地处理您的凭据
您可以在笔记本以 lifecycle configuration 开头时自动执行步骤。这对于标准化和自动化数据复制和环境定制非常有用
我有一个 AWS SageMaker 笔记本 运行 用于工作,我有一个私人 github 存储库,其中包含一些我常用的功能,其格式设置为pip 可安装,所以我通过这样做设置了一个 SSH 密钥:
ssh-keygen
-t rsa -b 4096 -C "danielwarfield1@gmail.com"
输入,输入,输入(默认保存位置无密码)
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rs
然后我将 public 密钥复制到 github,然后我 运行 安装我的库
$PWD/pip install git+ssh://git@github.com/...
其中 $PWD
是包含我正在使用的 conda env 的 pip 的目录(tensorflow2_p36 特别是 AWS 提供的那个)
这工作正常,直到我重新启动 EC2,然后我的 shh 密钥(连同我所有其他安装)都丢失了,我必须重复这个过程。我预计模块会丢失,我知道 SageMaker 管理环境,但我丢失 ssh 密钥似乎很奇怪,有没有一个地方可以保存我的 ssh 密钥,它不会丢失,但我仍然可以在 pip 安装时找到它?
即使您关闭笔记本实例,/home/ec2-user/SageMaker
位置也会保留,您可以尝试在此处保存内容以保留它们。关闭实例时保存在别处的东西将会丢失
关于私有 git 集成,您可以使用 SageMaker git Notebook integration,它使用 Secrets Manager 来安全地处理您的凭据
您可以在笔记本以 lifecycle configuration 开头时自动执行步骤。这对于标准化和自动化数据复制和环境定制非常有用