在 vSphere 环境中部署 Spring Web 应用程序

Deploying a Spring web application on a vSphere environment

我必须在一家公司的内部服务器上部署一个 Spring 应用程序。服务器 运行 在 VMWare vsphere 上有几个虚拟机,我想知道什么是最好的方法以及什么可以用来部署我的 Java Spring 应用程序。

我的两个想法是:

不幸的是,我的应用程序,就其目的和工作方式而言,需要部署在局域网上(我的应用程序从 LAN IoT 客户端轮询数据并且它需要在我们的网络内部),因此我不能使用任何在线服务,如 AWS 或 Google.

我想知道我的选项 2 是否是一个可行的选项以及可以使用什么来实现它(就所需的软件而言以及是否值得付出努力)。不幸的是我不知道从哪里开始。

您不能简单地 运行 虚拟机中的 JVM。 VM 需要先安装 OS,然后 运行 将 JVM 作为进程安装在其中。本质上,就软件堆栈要求而言,运行在 VM 上安装 spring 启动应用程序与 运行在物理计算机上安装它是相同的。您不会被迫使用 Windows 作为 OS,但这取决于您的偏好和公司的政策。最小的 Linux 发行版可以显着减少 VM 所需的资源量,因此 spring-boot 应用程序是主要的资源消耗者。

使用现有的 VM 来 运行 一个新的不相关的服务不是一个好的做法(我假设你已经 运行 在那里安装了其他服务器)。 VM 的主要价值在于它们可以相互隔离,因此不会影响彼此的稳定性,同时仍然受益于位于同一物理硬件上。它们可以在物理主机 while 运行ning (vMotion/DRS) 之间迁移,并在发生故障时自动重启 (vSphere HA)。