Open 40417256 opened 10 months ago
osync cannot sync simultaneously multiple targets since initiator files will be modified while one sync operations is ongoing. Best thing to do is to launch a batch on modification, ie osync-batch so initiator mods will trigger a full sync to all targets.
Thanks for the input, but since I require all targets to be updated fairly soon after a modification on the initiator the cron task is not what I need.
What do you think of setting up inotifywait in a systemd service that will run osync-batch.sh ?
Have a great weekend,
Eric
That's an ideal idea in your case.
Would require osync modification to launch osync-batch.sh
instead of osync itself.
The corresponding lines in osync will be
if [ "$ConfigFile" != "" ]; then
osyncSubcmd='bash '$osync_cmd' "'$ConfigFile'" '$opts
else
osyncSubcmd='bash '$osync_cmd' '$opts
fi
where osyncSubcmd would be replaced with bash /path/to/osync_batch.sh
Care to check this manually before I'm implementing this ?
I have one initiator replication one way to multiple targets. I use systemd services (one for each target)
Touch a file on the initiator, the sync tasks kicks in but I get the following error in the log:
There is already a local instance [13020@sysvolsync-traytnkca03] of osync running for this replica. Cannot start.#033[0m
So the second server is not synced, is there something I am missing ? I thought since this is a one way operation from the initiator to ALL targets this would work in parallel or at the worst sequentially.
Thanks,
Eric