How do I backup my data to Object Storage using Amanda Backup?
I use Amanda Backup (amanda.org) to backup my Linux machines and to store the backup images in Amazon S3. Then I decided to test sending the backup images to Linode's Object Storage. Used the same configuration but the endpoint, which was set to bucket_name.us-east-1.linodeobjects.com.
Initially Amanda backup returned SignatureDoesNotMatch error when it initialized the storage (it tries to locate and create labels if they're missing) but I managed to overcome it by patching Amanda authentication code because Linode doesn't work well with "url encoded" keys.
Now Amanda can send GETs to Linode's Object Storage and retrieve information, but at the first PUT it does to send those labels, Amanda never receives a response from Linode.
Here's part of the log, with a sequence of GET (successful) and a PUT (no answer). After reading some posts, I tried adding "Expect:" HTTP header to the PUT request but no change was observed. BTW, I'm using Amanda v3.5.1 on Ubuntu LTS 20.04.
Does anyone ever succeed in sending backups from Amanda to Linode's Object Storage? I know I can't expect any Amanda support here, but a piece of software that works with S3 should work with Object Storage as well, shouldn't it? In this case, the frustration is not receiving anything back from Object Storage…
Mon Oct 25 20:32:14.730831662 2021: pid 241728: thd-0x55d002c9b200: amlabel: GET https://s3-name-ue1-d-backup.us-east-1.linodeobjects.com/amanda/Name/slot-01/special-tapestart failed with 404/NoSuchKey
Mon Oct 25 20:32:14.730849643 2021: pid 241728: thd-0x55d002c9b200: amlabel: Amanda header not found while reading tapestart header (this is expected for empty tapes)
Mon Oct 25 20:32:14.730865579 2021: pid 241728: thd-0x55d002c9b200: amlabel: Device s3:s3-name-ue1-d-backup/amanda/Name/slot-01/ error = 'Amanda header not found -- unlabeled volume?'
Mon Oct 25 20:32:14.730898540 2021: pid 241728: thd-0x55d002c9b200: amlabel: Device s3:s3-name-ue1-d-backup/amanda/Name/slot-01/ setting status flag(s): DEVICE_STATUS_DEVICE_ERROR, DEVICE_STATUS_VOLUME_UNLABELED, and DEV
ICE_STATUS_VOLUME_ERROR
Mon Oct 25 20:32:14.732330764 2021: pid 241728: thd-0x55d002c9b200: amlabel: /usr/lib/x86_64-linux-gnu/amanda/perl/Amanda/Label.pm:629:info:1000009 Found an empty tape.
Mon Oct 25 20:32:14.732974800 2021: pid 241728: thd-0x55d002c9b200: amlabel: /usr/lib/x86_64-linux-gnu/amanda/perl/Amanda/Label.pm:788:info:1000020 Writing label 'Name01'...
Mon Oct 25 20:32:14.733643870 2021: pid 241728: thd-0x55d002c9b200: amlabel: Found bundle for host s3-name-ue1-d-backup.us-east-1.linodeobjects.com: 0x55d003330070 [serially]
Mon Oct 25 20:32:14.733659836 2021: pid 241728: thd-0x55d002c9b200: amlabel: Can not multiplex, even if we wanted to!
Mon Oct 25 20:32:14.733676298 2021: pid 241728: thd-0x55d002c9b200: amlabel: Re-using existing connection! (#0) with host s3-name-ue1-d-backup.us-east-1.linodeobjects.com
Mon Oct 25 20:32:14.733689443 2021: pid 241728: thd-0x55d002c9b200: amlabel: Connected to s3-name-ue1-d-backup.us-east-1.linodeobjects.com (97.107.137.245) port 443 (#0)
Mon Oct 25 20:32:14.733841329 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: GET /?max-keys=1000&prefix=amanda%2FName%2Fslot-01%2Ff HTTP/1.1
Mon Oct 25 20:32:14.733922521 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Host: s3-name-ue1-d-backup.us-east-1.linodeobjects.com
Mon Oct 25 20:32:14.733943319 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Accept: */*
Mon Oct 25 20:32:14.733956908 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Authorization: AWS 6WGFK73O6ELUME006341:eglINwCTjmM7ecFR9lW9dcJNPMs=
Mon Oct 25 20:32:14.733968003 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Date: Mon, 25 Oct 2021 23:32:14 GMT
Mon Oct 25 20:32:14.733976316 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out:
Mon Oct 25 20:32:14.865566886 2021: pid 241728: thd-0x55d002c9b200: amlabel: Mark bundle as not supporting multiuse
Mon Oct 25 20:32:14.865629424 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: HTTP/1.1 200 OK
Mon Oct 25 20:32:14.865669376 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: Date: Mon, 25 Oct 2021 23:32:14 GMT
Mon Oct 25 20:32:14.865737191 2021: pid 241728: thd-0x55d002c9b200: amlabel: Time Offset (remote - local) :0
Mon Oct 25 20:32:14.865754277 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: Content-Type: application/xml
Mon Oct 25 20:32:14.865810226 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: Transfer-Encoding: chunked
Mon Oct 25 20:32:14.865856640 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: Connection: keep-alive
Mon Oct 25 20:32:14.865879164 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In: x-amz-request-id: tx00000000000000bdbbf0d-0061773e7e-297c8db-default
Mon Oct 25 20:32:14.865925672 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr In:
Mon Oct 25 20:32:14.912562610 2021: pid 241728: thd-0x55d002c9b200: amlabel: Connection #0 to host s3-name-ue1-d-backup.us-east-1.linodeobjects.com left intact
Mon Oct 25 20:32:14.912623953 2021: pid 241728: thd-0x55d002c9b200: amlabel: data in 272: <?xml version="1.0" encoding="UTF-8"?><ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>s3-name-ue1-d-backup</N
ame><Prefix>amanda/Name/slot-01/f</Prefix><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated><Marker></Marker></ListBucketResult>
Mon Oct 25 20:32:14.912712904 2021: pid 241728: thd-0x55d002c9b200: amlabel: Building type TAPESTART header of 0-10485760 bytes with name='Name01' disk='' dumplevel=0 and blocksize=10485760
Mon Oct 25 20:32:14.912919592 2021: pid 241728: thd-0x55d002c9b200: amlabel: Found bundle for host s3-name-ue1-d-backup.us-east-1.linodeobjects.com: 0x55d003330070 [serially]
Mon Oct 25 20:32:14.912937563 2021: pid 241728: thd-0x55d002c9b200: amlabel: Can not multiplex, even if we wanted to!
Mon Oct 25 20:32:14.912957459 2021: pid 241728: thd-0x55d002c9b200: amlabel: Re-using existing connection! (#0) with host s3-name-ue1-d-backup.us-east-1.linodeobjects.com
Mon Oct 25 20:32:14.912974310 2021: pid 241728: thd-0x55d002c9b200: amlabel: Connected to s3-name-ue1-d-backup.us-east-1.linodeobjects.com (97.107.137.245) port 443 (#0)
Mon Oct 25 20:32:14.913145605 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: PUT /amanda/Name/slot-01/special-tapestart HTTP/1.1
Mon Oct 25 20:32:14.913170265 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Host: s3-name-ue1-d-backup.us-east-1.linodeobjects.com
Mon Oct 25 20:32:14.913181956 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Accept: */*
Mon Oct 25 20:32:14.913192447 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Authorization: AWS 6WGFK73O6ELUME006341:RNnPIQt8rrwjc2gIiANsaoA9ykM=
Mon Oct 25 20:32:14.913203799 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Content-MD5: 295O1NPy2T46RGaOyNUPYw==
Mon Oct 25 20:32:14.913238753 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Content-Length: 42
Mon Oct 25 20:32:14.913475186 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Date: Mon, 25 Oct 2021 23:32:14 GMT
Mon Oct 25 20:32:14.913497817 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out: Expect:
Mon Oct 25 20:32:14.913508658 2021: pid 241728: thd-0x55d002c9b200: amlabel: Hdr Out:
Mon Oct 25 20:33:15.051450788 2021: pid 241728: thd-0x55d002c9b200: amlabel: Connection died, retrying a fresh connect
Mon Oct 25 20:33:15.054127751 2021: pid 241728: thd-0x55d002c9b200: amlabel: Closing connection 0