Обновление файлов на нескольких FTP

R
На сайте с 03.07.2006
Offline
214
548

Всем привет,

У меня есть проект, который сейчас активно развивается и переводится на разные языки, запускается в разных странах.

Столкнулся с такой задачей, что нужно обновлять одни и те же файлы на многих серверах. Сейчас просто подключаюсь по очереди к каждому ФТП и обновляю файлы. Естественно это неудобно и занимает кучу времени. Прежде чем выдумывать велосипед с rsync или чем-то подобным, решил спросить у вас, возможно уже есть какое-то готовое решение для таких задач? А также возможно ли похожее решение для обновления многих Mysql баз на отдельных серверах?

L
На сайте с 31.08.2013
Offline
14
#1

Быстрее наверное только ssh и соответственно unzip. Можно это на Cron поставить.

Либо модуль какой-нибудь написать, с возможностью указания zip архива с обновлением, и пусть автоматом всё закачивает и обновляет.

[umka]
На сайте с 25.05.2008
Offline
456
#2

Сделайте, чтобы скрипты обновлялись сами с "главного" сервера.

Как это делает, например, вордпресс.

Лог в помощь!
R
На сайте с 03.07.2006
Offline
214
#3
'[umka:
;13312665']Сделайте, чтобы скрипты обновлялись сами с "главного" сервера.
Как это делает, например, вордпресс.

Я сначала так и хотел сделать. Заливать файл на один сервер в отдельную папку и по крону другие сервера его забирают, запускают обновление. Дополнительно придётся вести учёт обновлений на каждом сервере, чтобы не запускались старые обновления. Вообщем это хоть и несложный но всё равно велосипед. Хочется готового, проверенного чтобы настроить и забыть.

[umka]
На сайте с 25.05.2008
Offline
456
#4

Ну так сделайте скрипт обновления, настройте и забудьте :)

Это пять строчек: проверить наличие новых версий и скачать обновлённые файлы.

Если цель сделать навороченное решение — CVS, SVN и т.д.

R
На сайте с 03.07.2006
Offline
214
#5

Написал скрипт на bash

Для работы нужен установленный lftp

Кому надо, пользуйтесь:

#!/bin/bash

SITE_DIR="/home/user/www"
UPDATES_DIR="/updates"
LOGIN="ftpduser"
PASSWORD="ftppassword"
FTPHOST="website.com"

lftp -c "set ftp:list-options -a;
open $LOGIN:$PASSWORD@$FTPHOST;
lcd $SITE_DIR;
cd $UPDATES_DIR;
mirror -n;
quit"

Сохраняем на каждом сервере этот скрипт и добавляем его в cron

параметры FTPHOST LOGIN и PASSWORD это доступ к источнику. Можно использовать не только какой-то мейн-сервер, но и отдельную папку на рабочем компе.

К сожалению, не дописал ещё обработку SQL скриптов. Если в будущем сделаю и не забуду, то добавлю сюда тоже.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий