On 2018-11-16 12:27, Chris Miller wrote:
Hi Folks,

I'm unclear on the timing of the flush from holding disk to vtape. Suppose I run two backup jobs,and each uses the holding disk. When will the second job start? Obviously, after the client has sent everything... Before the holding disk flush starts, or after the holding disk flush has completed?
If by 'jobs' you mean 'amanda configurations', the second one starts when you start it. Note that `amdump` does not return until everything is finished dumping and optionally taping if anything would be taped, so you can literally just run each one sequentially in a shell script and they won't run in parallel.

If by 'jobs' you mean DLE's, they run as concurrently as you tell Amanda to run them. If you've got things serialized (`inparallel` is set to 1 in your config), then the next DLE will start dumping once the previous one is finished dumping to the holding disk. Otherwise, however many you've said can run in parallel run (within per-host limits), and DLE's start when the previous one in sequence for that dumper finishes. Taping can (by default) run in parallel with dumping if you're using a holding disk, which is generally a good thing, though you can also easily configure it to wait for some amount of data to be buffered on the holding disk before it starts taping.

Is there any way to defer the holding disk flush until all backup jobs for a given night have completed?
Generically, set `autoflush no` in each configuration, and then run `amflush` for each configuration once all the dumps are done.

However, unless you've got an odd arrangement where every system saturates the network link while actually dumping and you are sharing a single link on the Amanda server for both dumping and taping, this actually probably won't do anything for your performance. You can easily configure amanda to flush backups from each DLE as soon as they are done, and it will wait to exit until everything is actually flushed.

Building from that, if you just want to ensure the `amdump` instances don't run in parallel, just use a tool to fire them off sequentially in the foreground. Stuff like Ansible is great for this (especially because you can easily conditionally back up your index and tapelist when the dump finishes). As long as the next `amdump` command isn't started until the previous one returns, you won't have to worry about them fighting each other for bandwidth.

Reply via email to