如何在 EC2 上启动 Windows Server 2012 实例时自动创建桌面环境?

如何在 EC2 上启动 Windows Server 2012 实例时自动创建桌面环境?

我目前正在 Amazon EC2 上运行一组 c3.large Windows Server 2012 实例。

我们正在进行的项目略有不同,我们运行一个 Node.js 脚本,该脚本通过消息队列定期轮询作业。每个作业都会打开一个 .jar 文件以在 Windows 桌面上打开用户界面。然后,我们的 .jar 文件执行一系列操作(包括截取当前窗口的屏幕截图),终止,然后 Node.js 将结果上传到 MongoDb 和 Amazon S3。Java 应用程序 (.jar) 需要桌面会话处于活动状态才能正常运行(因此我认为服务没什么用) - 有点像自动 UI 测试需要活动桌面的方式。

基础设施运行良好!但是,桌面环境是一个大问题。通过 EC2 管理控制台启动新实例后,桌面环境并不存在,直到我从本地计算机手动启动远程桌面连接(从而创建桌面以供我们的软件运行)。出于可扩展性原因,这不切实际,理想情况下,我希望能够根据需求以编程方式启动/停止实例。

我尝试了许多方法;包括<powershell>EC2 用户数据中的命令、使用 VNC 服务器以及在 Windows 机器内部调整一些设置……但都无济于事。

是否有人知道在启动 EC2 Windows Server 2012 实例时创建桌面环境的技术/设置?

答案1

您应该能够将机器配置为自动登录。然后每次机器启动时,控制台会话都会使用您指定的凭据登录。

从自定义 AMI 启动多个具有自动登录功能的 EC2 Windows 服务器了解如何配置此类内容的示例。基本上,您只需使用自动登录注册表值,但在对主机进行系统准备时可以使用一些解决方法。

相关内容