Re: Error 400 Bad Request when accessing Ceph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sean,

Thank you for the hint. Just tried with config file below:

# s3cmd --configure

New settings:
  Access Key: XXX49NCDM95R0EHVXXXX
  Secret Key: XXXXLGXc0G4oGfX6XXXXrQ35a3dPgI4OvXXXX
  Default Region: US
  Encryption password: password
  Path to GPG program: /usr/bin/gpg
  Use HTTPS protocol: False
  HTTP Proxy server name: rados.domain.com
  HTTP Proxy server port: 80

Test access with supplied credentials? [Y/n] Y
Please wait, attempting to list all buckets...
ERROR: Error parsing xml: syntax error: line 1, column 0
ERROR: Error 400: Bad Request
Invalid URI: [http://rados.domain.com/?delimiter=/]
ERROR: Test failed: syntax error: line 1, column 0



I saw that change in your config is related to:

host_base = rados.domain.com
host_bucket = %(bucket)s.rados.domain.com


…also tried following with the same result:

host_base = rados.rados.com:80
host_bucket = rados.rados.com:80/%(bucket)s


I have a feeling that issue might be on the Ceph side.
I would appreciate any ideas.

Regards,

Andrey Ptashnik


_______________________________________________

From:  Sean Redmond <sean.redmond1@xxxxxxxxx>
Date:  Tuesday, May 24, 2016 at 11:25 AM
To:  Andrey Ptashnik <APtashnik@xxxxxxxxx>
Subject:  Re:  Error 400 Bad Request when accessing Ceph


Hi,

Your URI looks to be wrong - In testing here it does not including the hostname, protocol or port e.g

DEBUG: Sending request method_string='GET', uri='/',


I would guess something is wrong in your .s3cfg file - a working one is below if it helps:

[default]
access_key = $KEY
bucket_location = US
cloudfront_host = cloudfront.amazonaws.com <http://cloudfront.amazonaws.com>
cloudfront_resource = /2010-07-15/distribution
default_mime_type = binary/octet-stream
delete_removed = False
dry_run = False
encoding = UTF-8
encrypt = False
follow_symlinks = False
force = False
get_continue = False
gpg_command = /usr/bin/gpg
gpg_decrypt = %(gpg_command)s -d --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
gpg_encrypt = %(gpg_command)s -c --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
gpg_passphrase = parker01
guess_mime_type = True
host_base = rados.domain.com <http://rados.domain.com>
host_bucket = %(bucket)s.rados.domain.com <http://s.rados.domain.com>
human_readable_sizes = False
list_md5 = False
log_target_prefix =
preserve_attrs = True
progress_meter = True
proxy_host =
proxy_port = 0
recursive = False
recv_chunk = 4096
reduced_redundancy = False
secret_key = $KEY
send_chunk = 4096
simpledb_host = sdb.amazonaws.com <http://sdb.amazonaws.com>
skip_existing = False
socket_timeout = 300
urlencoding_mode = normal
use_https = False
verbosity = WARNING



Thanks


On Tue, May 24, 2016 at 5:14 PM, Andrey Ptashnik 
<APtashnik@xxxxxxxxx> wrote:

Hello Team,

I set up a Ceph cluster version 0.94.5 for testing and trying to connect to RADOS gateway with s3cmd tool. I’m getting error 400 when trying to list buckets:

DEBUG: Command: ls
DEBUG: CreateRequest: resource[uri]=/
DEBUG: Using signature v2
DEBUG: SignHeaders: 'GET\n\n\n\nx-amz-date:Tue, 24 May 2016 16:00:33 +0000\n/'
DEBUG: Processing request, please wait...
DEBUG: get_hostname(None): 
rados.domain.com:80 <http://rados.domain.com:80>
DEBUG: ConnMan.get(): creating new connection: proxy://rados.domain.com:80 <http://rados.domain.com:80>
DEBUG: proxied HTTPConnection(rados.domain.com <http://rados.domain.com>, 80)
DEBUG: get_hostname(None): 
rados.domain.com:80 <http://rados.domain.com:80>
DEBUG: format_uri(): 
http://rados.domain.com:80/ <http://rados.domain.com:80/>
DEBUG: Sending request method_string='GET', uri='http://rados.domain.com:80/', headers={'Authorization': 'AWS XXX49NCDM95R0EHVXXXX:OabrCtvt+WNfHTl0ZsXXXXXb6Y=', 'x-amz-date': 'Tue, 24
 May 2016 16:00:33 +0000'}, body=(0 bytes)
DEBUG: Response: {'status': 400, 'headers': {'date': 'Tue, 24 May 2016 16:00:33 GMT', 'content-length': '68', 'connection': 'keep-alive'}, 'reason': 'Bad Request', 'data': 'Error 400: Bad Request\nInvalid URI: [http://rados.domain.com:80/]'}
DEBUG: ConnMan.put(): closing proxy connection (keep-alive not yet supported)
ERROR: Error parsing xml: syntax error: line 1, column 0
ERROR: Error 400: Bad Request
Invalid URI: [http://rados.domain.com:80/]


Would you please give me a hint where should I start troubleshooting that?

Regards,

Andrey Ptashnik

_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com





_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux