windows-server-2008 - 我将如何创建灵活的 EC2 Windows 2008 启动脚本?

标签 windows-server-2008 amazon-ec2

如果您查看 Linux 生态系统(尤其是 Ubuntu and Alestic EC2 镜像),就会发现 common technique虚拟机已预先配置为查看 EC2 user-data并将其用作启动脚本。这种方法的好处是您可以编写一个引导脚本来进一步配置您的机器,从而避免每次在机器上运行的软件发生更改时创建新镜像。

我想为 Windows 做同样的事情,但鉴于我是 Mac 和 Linux 人,我有点迷失从哪里开始。我的要求是:

  • 这必须在 Windows Server 2008
  • 上运行
  • 机器启动时需要启动引导脚本,通过下拉内容读取用户数据文件http://169.254.169.254/1.0/user-data
  • 然后引导脚本需要运行该文件的内容,就好像它是一个脚本
  • 嵌入在用户数据中的脚本需要以能够访问桌面环境的方式运行(即:它可以启动浏览器等)。

  • 我不太确定服务在 Windows 中是如何工作的,或者我是否需要启用自动登录,所以这里的任何建议都将不胜感激。最终目标是运行一个 Java 程序,该程序启动一些自定义软件,然后启动一个 Web 浏览器(IE、Firefox 等)并能够截取屏幕截图。

    屏幕截图部分很有趣,因为在过去,当我尝试这样做时,除了黑屏之外,我唯一能得到的东西就是让 UltraVNC 或 RealVNC 作为服务启动,尽管我不知道为什么会有帮助。

    我正在寻找三个具体问题的答案,以及任何一般性建议:
  • 我应该专注于“启动”文件夹中的 Windows 服务还是自动登录 + bat 文件?
  • 如果我使用 Windows 服务,是否需要做任何特别的事情来确保桌面访问和/或屏幕截图可用?
  • 您是否推荐任何用于常见 Linux 命令的工具,例如 curl 或 wget?上次我使用 Windows 时,我经常使用 Cygwin,但是这里有更适合使用的东西吗?
  • 最佳答案

    我没有尝试在 EC2 中的 Windows 实例上自动登录,但是 here's the support document关于如何启用它。

    我们使用已安装自定义 Windows“安装”服务的自定义 AMI 引导我们的 Windows 实例。引导安装程序在启动时从用户数据中读取 URL。 URL 指向存储在 S3 中的 ZIP 文件。然后安装程序下载、解压缩并执行实际的应用程序安装程序——在我们的例子中是一个简单的 CMD 文件。

    这种设置允许我们拥有一个基础 AMI,然后能够轻松覆盖 15 种以上不同的应用程序配置(无需重建 AMI)。如果您只有一个应用程序配置,这对于您的情况来说可能是多余的。

    我们遇到的唯一问题是让我们的安装程序服务提前启动——将服务启动模式更改为“自动延迟”解决了这个问题。

    我们用 Java 编写了引导安装程序,通过 YAJSW 启动,因为我们对此感到满意。如果您只想要一些简单的 Unix 工具,大多数都可以为 Windows 预编译,例如 wget .

    对于完全不同的东西,你可以试试PsExec在启动后配置实例。

    关于windows-server-2008 - 我将如何创建灵活的 EC2 Windows 2008 启动脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4844084/

    相关文章:

    windows-server-2008 - 使用 Process.Start 和 UAC 在 .NET 中模拟

    PHP mkdir 权限由于只读属性而被拒绝在 Windows Server 2008 IIS 7 上运行?

    c# - 从 Windows 服务启动 WinForms 应用程序

    ssh - 无法在ubuntu终端中输入新命令/ssh权限被拒绝

    amazon-web-services - 如何将预先存在的 key SSH 添加到 ansible? (加密)

    hadoop - 如何在ec2上重启单节点hadoop集群

    c# - 如何让 MSI 包更改已安装的 Win32 应用程序兼容性选项

    .net - .NET 网站处理高流量的最佳方式

    java - AWS EC2 Java Spring Boot - 线程 "main"java.lang.NoClassDefFoundError : org/springframework/boot/SpringApplication 中出现异常

    amazon-web-services - 如何使用命令行将文件从Amazon EC2移至S3存储桶