Развертывание контента на нескольких серверах (EC2)

Я работал над облачным (AWS EC2) PHP веб-приложением, и я борюсь с одной проблемой, когда речь идет о работе с несколькими серверами (все под AWS Elastic Load Balancer). На одном сервере, когда я загружаю последние файлы, они мгновенно запускаются во всем приложении. Но это не так при использовании нескольких серверов - вы должны загружать файлы на каждый из них, каждый раз, когда вы вносите изменения. Это может хорошо работать, если вы не обновляете что-либо очень часто, или если у вас просто один или два сервера. Но что если вы обновите систему несколько раз в течение одной недели на десяти серверах?

То, что я ищу, - это способ «зафиксировать» изменения с нашего сервера разработки или тестирования и немедленно «вытолкнуть» его на все наши производственные серверы. В идеале, обновление должно применяться только к одному серверу за раз (даже если на сервер требуется секунда или две), поэтому ELB не будет отправлять ему трафик во время изменения файлов, чтобы не нарушать производственный трафик, который может быть течет к ELB. Каков наилучший способ сделать это? Одной из моих мыслей было бы использовать SVN на сервере dev, но на самом деле это не «подталкивает» к серверам. Я ищу процесс, который занимает всего несколько секунд, чтобы зафиксировать обновление и впоследствии начать применять его к серверам. Кроме того, для тех из вас, кто знаком с AWS, каков наилучший способ обновления AMI последними обновлениями, чтобы автоматическое масштабирование всегда запускало новые экземпляры с последней версией программного обеспечения?

Должны быть хорошие способы сделать это ... не могут реально представить такие сайты, как Facebook, Google, Apple, Amazon, Twitter и т. Д., Проходящие и обновляющие сотни или тысячи серверов вручную и один за другим, когда они вносят изменения.

Заранее спасибо за вашу помощь. Я надеюсь, что мы сможем найти какое-то решение этой проблемы ... что должно быть, по крайней мере, 100 поисковых запросов в Google, проведенных и мной, и моим деловым партнером за последний день, оказались по большей части неудачными в решении этой проблемы.

Alex

Ответы на вопрос(2)

Ваш ответ на вопрос