Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在生产Linux服务器上运行更新_Linux_Tomcat_Amazon Ec2 - Fatal编程技术网

在生产Linux服务器上运行更新

在生产Linux服务器上运行更新,linux,tomcat,amazon-ec2,Linux,Tomcat,Amazon Ec2,当web应用程序处于活动状态时,在运行Tomcat的生产服务器上以独立模式运行linux更新(sudo yum update)是否可以接受 该服务器是一个运行Amazon Linux的AWS EC2实例。我可以接受,我认为大多数人都可以接受。当您安装更新时,出现问题的可能性总是很小,但是有什么替代方案呢?我认为阻止Tomcat不会有多大帮助 如果Tomcat本身在要更新的软件包列表中,它将在更新后重新启动(至少Ubuntu是这样,AmazonLinux不确定),因此用户可能会有一个小的停机时间(

当web应用程序处于活动状态时,在运行Tomcat的生产服务器上以独立模式运行linux更新(sudo yum update)是否可以接受


该服务器是一个运行Amazon Linux的AWS EC2实例。

我可以接受,我认为大多数人都可以接受。当您安装更新时,出现问题的可能性总是很小,但是有什么替代方案呢?我认为阻止Tomcat不会有多大帮助

如果Tomcat本身在要更新的软件包列表中,它将在更新后重新启动(至少Ubuntu是这样,AmazonLinux不确定),因此用户可能会有一个小的停机时间(几秒钟)

在安装更新之前,我总是拍摄一个AMI映像(并没有选择重新启动选项)。这样,如果出现问题,我可以通过启动旧映像快速回滚更改


如果你真的不想有任何空闲时间,你可以做的是从你当前实例的映像中启动第二个EC2实例,在新实例上安装更新,然后将旧实例的弹性IP切换到新实例。但是,您需要确保您的会话被复制或存储在实例本身之外,否则用户将注销并失去会话。

我没有提到这一点,但是,是的,创建第二个实例是另一种选择。这不是一个任务关键型应用程序,所以如果更新有问题,我可以从我的AMI创建一个新实例并将war部署到它。当更新Tomcat包时,像server.xml和Tomcat-users.xml这样的配置文件会被覆盖吗?谢谢