Hi Amanda developers,
I would like to get a better understanding of how Amanda's holding disk and
dump splitting features work.
According to the documentation, to speed up backups, one could could setup
holding disks where the data will be buffered before it is written to tape.
This method is known as FILE-WRITE [1]. This sounds good and works well for
DLE's which can fit into the holding disk area.
Nevertheless, for the DLE's that don't fit into the holding disk, Amanda would
use the second method known as PORT-WRITE [1]. With this method, Amanda splits
the DLE into chucks of a given size S, writes each chunk to disk one at a time,
and then, once the chunk of size S is completely on disk, writes the chunk to
tape.
Questions:
- Does Amanda continuosly keep the disk buffer full? In other words, as it
starts writing to tape the buffered chunk1, will it start buffering chunk2?
Probably not, because it would need the complete copy of chunk1, if chunk1
fails to be written successfully to tape. Right?
- Is there a way to see the speed at which 'taper' writes data to tape?
- Why is disk buffer so slow for me? When I use FILE-WRITE, I get great speeds!
This is not the case with PORT-WRITE. I am running Amanda 2.6.1p2 (I'll upgrade
to 3.1.2 soon), with a holding disk of 840Gb and a disk buffer of 370Gb. I have
some DLE's which are greate than 1Tb and Amanda is using the PORT-WRITE method
to write them to tape. When this happens, I see that the disk buffer becomes
full, which is good, but yet the speed of writing to tape seems slow. I don't
have a way to see the writing speed of the 'taper', so I'm relying on the
amount of data Amanda reads from the disk device. With 'iostat' I can see that
Amanda is reading from the device at a peak spead of 4Mb/sec (the device
/dev/dm-8 or /dev/mapper/cronos-amanda-diskbuffer below is dedicated to
Amanda's disk buffer):
# df -h /dev/mapper/cronos-amanda-diskbuffer
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cronos-amanda-diskbuffer
394G 371G 3.2G 100% /data4
# dmsetup info /dev/dm-8
Name: cronos-amanda-diskbuffer
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 1
Event number: 0
Major, minor: 253, 8
Number of targets: 1
UUID: mpath-36090a06850b8fdba16c6c4f6f400001d
# iostat -m /dev/dm-8 1 5
Linux 2.6.18-194.8.1.el5 (cronos) 08/16/2010
avg-cpu: %user %nice %system %iowait %steal %idle
0.66 0.00 1.62 2.49 0.00 95.24
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
dm-8 180.10 0.01 0.70 5250 431913
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
dm-8 18791.00 1.93 71.47 1 71
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
dm-8 169.00 0.65 0.01 0 0
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
dm-8 458.42 1.79 0.00 1 0
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
dm-8 978.00 3.82 0.00 3 0
Please advise.
[1] http://wiki.zmanda.com/man/amanda.conf.5.html
Best,
Valeriu