【问题标题】:Cloned Virtual Machine, Java services will not start克隆虚拟机,Java 服务无法启动
【发布时间】:2013-02-12 09:37:02
【问题描述】:

在我们的软件环境中,我们有许多运行 Windows Server 2008 R2 的 VM。在这些服务器上,我们有 Java 1.6 并使用 YAJSW 来提供一些服务。作为升级过程的一部分,我们希望在虚拟环境中创建克隆并在部署到生产之前测试我们的升级。

现在解决问题.... Windows 服务不会在克隆的 VM 上启动。

服务启动时运行的命令示例如下:

F:\app\configservice>"D:/Java/jdk1.6.0_27/bin/java.exe" "-classpath" "D:\yajsw-10.8\wrapper.jar" "-Xrs" "-Dwrapper .service=true" "-Dwrapper.working.dir=f:\app\configservice" "-Dwrapper.java.command=D:/Java/jdk1.6.0_27/bin/configservice.exe" "-Dwrapper.config= F:\app\configservice\lib\wrapper.conf" "-Dwrapper.additional.1x=-Xrs" "org.rzo.yajsw.boot.WrapperServiceBooter"

当从命令行手动运行时,它会产生这个输出。

INFO|wrapper|服务配置服务|13-02-11 14:37:49|init
INFO|wrapper|Service ConfigService|13-02-11 14:37:49|Win 服务:在服务初始化之前
INFO|wrapper|Service ConfigService|13-02-11 14:37:49|设置状态 IDLE->STARTING
INFO|wrapper|Service ConfigService|13-02-11 14:37:49|启动过程
INFO|wrapper|Service ConfigService|13-02-11 14:37:49|>StartServiceCtrlDispatcher
中的错误 INFO|wrapper|Service ConfigService|13-02-11 14:37:49|1063:服务进程无法连接到服务控制器。
INFO|wrapper|Service ConfigService|13-02-11 14:37:49|Win 服务:正确终止

谷歌搜索错误让我相信 JVM 可能有问题,但这真的没有意义,因为它是 JVM 完全满意的 VM 的克隆。一些同事提出了组权限策略,但在两台机器上似乎都是一样的。

【问题讨论】:

  • 可能是某个 IP 地址被配置了一些错误
  • 很难从您提供的信息中判断,但我建议您扫描配置文件和启动脚本以查找特定于机器的内容,例如 IP 地址、主机名或 Windows 计算机或用户帐户。
  • 我忘了提...克隆确实收到了新的 IP 和主机名。我不确定这是否会对 JVM 产生不利影响
  • 我实际上可以从命令提示符将服务作为 Java 应用程序运行,因此这里不怪 JVM。有趣的是,当我启动该服务时,我可以使用 7mb RAM 快速看到它,然后只是坐着什么都不做,甚至不记录。在命令提示符下,它几乎立即变为 48mb 并且运行良好

标签: java windows-services virtualization windows-server-2008-r2 yajsw


【解决方案1】:

如果您在与原始虚拟机相同的网络中运行克隆的虚拟机,请确保它具有不同的 MAC 和 IP。

【讨论】:

    【解决方案2】:

    使用 psexec 我创建了一个本地系统级别的命令提示符并开始检查环境变量。我发现本地用户的临时目录映射到一个不存在的驱动器。进一步挖掘发现 Y: 在克隆的 VM 上被映射为 E:。不知道是怎么回事,但问题已经解决了

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-18
      • 2018-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      相关资源
      最近更新 更多