我有一台具有一个公共IP的服务器。
- Apache2 已安装。
- Mariadb 已安装。
- 服务器上大约有50个相同的Java应用程序在Tomcat上运行。
- 应用程序在某些端口上运行,并且 Apache 具有反向
代理,因此当输入适当的 www 地址时,
就会重定向到相应应用程序的端口。
该结构如下所示:/apps/
目录 Application1..n 此目录中的子目录
-tomcat
-lib(openjdk)
-files - 上传到应用程序的文件(.pdf、jpg、txt、xls)和应用程序生成的文件(.pdf、xls、csv)
-logs
每个这样的应用程序都有自己的数据库。每天都会备份数据库和文件目录,并将其移至另一个位置。每个月都会进行更新,包括:更新数据库结构(程序员收到我在每个数据库上运行的 SQL 文件)、通过上传新的 *.war 文件更新应用程序、替换 tomcat 目录(更新 Tomcat)以及替换 lib 目录(更新 OpenJDK)。
我想改变这一点,以便每个应用程序都是一个单独的实例。某种容器或虚拟机,包括 mariadb 服务器、tomcat、openjdk。
我还想将 Zabbix 连接到每个应用程序实例(监控整个主机,以及 MySQL、JXM 等)。
我不确定 Docker 还是 Proxmox (LXD),OpenVZ 会更好。在这种情况下哪一个更实用且更易于维护?也许还有其他解决方案?你能给我一些建议吗?