负载平衡Web服务器+保持内容同步

Mat*_*hew 4 apache lamp load-balancing amazon-ec2 amazon-web-services

我正在考虑实施EC2的Elastic Load Balancing功能,但我正在运行一个经常更改的Web应用程序(并在LAMP堆栈上运行),并想知道最常见的策略是保持应用程序在负载均衡的服务器之间保持同步.数据库将存在于其他地方,因此我只担心(此时)关于在进行更改时保持实际脚本同步.

Pet*_*ter 5

这取决于您更新脚本的频率:

  • 最常见的解决方案是将共享组件存储在EBS卷中,创建快照,然后从实例安装 - 作为根设备(允许您在所有实例中保持整个代码状态同步)或作为辅助设备volume(仅包含您的代码,允许您使用其他用户构建的AMI,如Canonical)
  • 通过频繁更新,像rsync这样的简单解决方案很可能成为赢家,或者您可以将它们保存在S3上并使用S3熔丝模块直接从S3安装脚本(使用此解决方案,您最终可能会花费更多的S3 GET数量)请求取决于S3熔丝缓存的方式).