Linux服务器,能否部署多个应用,如果能的话是用虚拟机实现的吗?

Linux服务器,能否部署多个应用,如果能的话是用虚拟机实现的吗?,第1张

部署多个应用是支持的

1. 例如部署多个java应用,可以用不同端口 发布出去到外网,同一个端口会冲突

2. 可以使用nginx反向代理,内部应用只对内网监听,Nginx根据不同的访问监听代理不同的内部应用。

3. 用docker发布,docker属于容器(就是类似于虚拟化的效果了),每个docker跑不同的应用发布出去。

4. 如果物理服务器IO资源可以满足,可以直接安装vmware或者pve虚拟化去实现物理层面的虚拟化系统,从而从物理层面去发布和隔离每个应用。

部署的过程,本文只说明从一个打好包的二进制文件或jar包(这里简称服务器程序压缩文件)到这个服务器程序在所有服务器上运行的过程。

这个过程,可分为如下几个阶段:

1.将服务器程序压缩文件传输到所有的服务器上

2.在所有的服务器上将服务器程序压缩文件解压到特定的路径

3.在所有的服务器上执行服务器程序

4.如果发布的服务器程序出现问题,回滚.

====================================================

这其中,涉及到如下几种需求:

1.免登陆

2.将文件从一台服务器传输到所有的服务器上,实现了这种需求,就可以将服务器程序压缩文件传输到所有的服务器上

3.在一台服务器远程执行命令,使所有的服务器都能够执行该命令,实现了这种需求,就可以在所有的服务器上将服务器程序压缩文件解压到特定的路径,并所有的服务器上执行服务器程序。

1.免登陆由于各种文章和Blog介绍较多,这里就不再涉及。

2.如何将文件从一台服务器传输到所有的服务器上

#! /bin/sh

#tf.sh

IPS=(ip地址1 ip地址2 ip地址3 ...)

for ip in ${IPS[*]}

do

do

echo "----Transfer File in $ip----"

scp $1 $ip:$2

done

3.如何在一台服务器上远程远程执行命令,是的所有的服务器都能够执行该命令

#! /bin/sh

#ec.sh

IPS=(ip地址1 ip地址2 ip地址3 ...)

for ip in ${IPS[*]}

do

do

echo "----Execute Command in $ip----"

ssh $ip $1

done

=======================================================

1.将服务器程序压缩文件传输到所有的服务器上

tf.sh /home/admin/server2.0.tar.gz /home/admin/

2.在所有的服务器上将服务器程序压缩文件解压到特定的路径

ec.sh "tar -zxvf /home/admin/server2.0.tar.gz"

3.在所有的服务器上执行服务器程序

ec.sh "sh /home/admin/server2.0/run.sh"

4. 回滚

ec.sh "sh /home/admin/server1.0/rollback.sh"


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/398609.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存