我正在 EC2 上设置自动扩展;实例将运行具有大流量峰值的 Web 应用程序。我尝试的第一个跨实例同步文件的解决方案(因为 Web 应用程序会将文件写入磁盘)是使用 s3fs 进行挂载的 S3。但是,即使是轻负载测试也会导致 s3fs 占用 CPU(这很奇怪,因为 s3fs 配置为使用本地缓存)。
是否有其他方法可以利用 S3 来实现此目的(可能重新配置 s3fs),或者我是否需要研究其他解决方案?
谢谢。
答案1
在 ec2 上,我将通过 pki 和 rsync 跨实例同步,因为这样方式比 s3 更快。如果数据量巨大,另一个选择是 rsync 到 ebs 挂载,然后卸载、分离、在下一个实例上重新连接、挂载、rsync、卸载、分离、下一个实例,.... 等等
使用 aws ec2 cli api 工具编写脚本来传递 ebs 卷以进行本地 rsyncing 非常容易。