我已经阅读了多篇关于在GCP虚拟机上运行脚本的帖子,但不幸的是,找不到满足我需求的答案。
我有一个Go应用程序,我正在寻找一种以编程方式在VM实例上运行bash脚本的方法。
我正在使用一个允许我获取 VM 实例信息的。遗憾的是,SDK 不包含允许在特定实例上运行 bash 脚本的功能(例如,与 Azure 云 SDK 不同)。Google Cloud Golang SDK
我发现的选项:
Google Cloud Compute SDK 提供了一个用于设置启动脚本的选项,该脚本将在每次重新启动实例时运行。
添加实例级公有 SSH 密钥。建立 SSH 连接并使用 Go SSH 客户端运行脚本。
问题:
显然,启动脚本将需要实例重新启动,这在我的用例中是不可能的。
SSH 也可能有问题,以防实例未运行 SSH 守护程序或 SSH 端口未打开。此外,SSH 守护程序配置默认不允许 root 登录(可能为 false),因此脚本可能在非特权用户上运行,使此选项也不合适。PermitRootLogin
我应该注意,我无权更改这些虚拟机的配置(例如,更改ssh守护程序conf以允许root登录),我只能使用基于令牌的身份验证来访问它们,最好是通过SDK,尽管只要我不将实例暴露在额外的风险中,其他选项也是可能的。
我有哪些选择?这可行吗?我错过了什么吗?
谢谢!
杨__羊羊
慕婉清6462132
守着星空守着你
随时随地看视频慕课网APP
相关分类