Amazon web services 集成AWS EC2、RDS和。。。S3?

Amazon web services 集成AWS EC2、RDS和。。。S3?,amazon-web-services,amazon-ec2,amazon-s3,Amazon Web Services,Amazon Ec2,Amazon S3,我遵循本教程,100%的效果非常出色: 但是,在该教程中,它只使用AmazonEC2和RDS。我想知道如果我的服务器扩展到多个EC2实例,那么我需要更新我的PHP文件 我是否必须在这些实例中手动分发它?因为,据我所知,这些实例没有相互同步 因此,我决定使用S3替换我的/var/www,这样PHP文件现在集中在一个地方 因此,每当这些EC2扩展时,文件都保留在一个地方,我不需要上传到多个EC2 这是为/var/www提供集中文件服务器(S3)的最佳实践吗?因为目前我在使用s3fs挂载时仍然存在权

我遵循本教程,100%的效果非常出色:

但是,在该教程中,它只使用AmazonEC2和RDS。我想知道如果我的服务器扩展到多个EC2实例,那么我需要更新我的PHP文件

我是否必须在这些实例中手动分发它?因为,据我所知,这些实例没有相互同步

因此,我决定使用S3替换我的/var/www,这样PHP文件现在集中在一个地方

因此,每当这些EC2扩展时,文件都保留在一个地方,我不需要上传到多个EC2

这是为/var/www提供集中文件服务器(S3)的最佳实践吗?因为目前我在使用s3fs挂载时仍然存在权限问题


谢谢。

您必须将/var/www/放在S3中,当您的实例需要从您的bucket中进行“aws S3同步”时,您可以在userdata中进行此操作。此外,您还必须选择一个进行更改的“主”实例,一个同步脚本将更改上载到S3,并使用rsync将更改复制到活动FE。这是因为如果您有3个FE从S3下载了/var/www/,并且您想要进行新的更改,那么您必须在所有实例中进行S3同步。 您可以使用inotify管理“主”实例中的更改。Inotify可以检测/var/www/和exec两个命令中的更改,一个可以是aws s3 sync,然后是rsync到其余实例。您可以通过AWSAPI从ELB获得实例列表。 最后一件事是检查“主”实例中的实例终止保护

您的体系结构应该如下所示

好看