Создать симлинк на нескольких серверах одновременно

~WR~

Новичок
Есть много серверов с одинаковым набором файлов.
Хочется на каждом из них создать определенный симлинк.

Но необходимо сделать это одновременно и обязательно проверить результат.
Если хотя бы на одном из серверов произошла ошибка - на всех все должно откатится к состоянию, как будто ничего и не было.

Типа как two phase commit в СУБД.

Подскажите, при помощи каких инструментов можно достичь такого результата?
 

~WR~

Новичок
Да, могу.
Вопрос в одном - что делать, если на каком-то из серверов не удалось переключиться?
По любой причине. Нет прав, нет соединения, вспышка на солнце.

Откатывать все остальные серверы обратно такой же ssh командой?
Но тогда будет какой-то короткий момент, когда на части машин уже новый симлинк. И это плохо.
 

SiZE

Новичок
ты можешь сперва загрузить симлинк, а потом его переименовать если везде удачно все. как вариант
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
я и спрашиваю: какой уровень синхронизации тебе нужен?
проверять результат можно асинхронно и сразу запустить команду удаления на всех серверах

если недостаточно - выделяй проблемы и решай их:
пропало соединение, нет прав - создавай симинк с временным именем, когда все создадутся - mv,
вспышка на солнце - ставь сервера в бункер или посчитай затраты и забей
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
Но тогда будет какой-то короткий момент, когда на части машин уже новый симлинк. И это плохо.
имхо это невозможно, чтобы и одновременно и надежно. Какую задачу ты решаешь, расскажи нам
 
Сверху