mirror of
https://github.com/ceph/ceph
synced 2024-12-27 14:03:25 +00:00
0082d88c7e
Signed-off-by: Loic Dachary <loic@dachary.org>
243 lines
5.8 KiB
Groff
243 lines
5.8 KiB
Groff
.\" Man page generated from reStructuredText.
|
|
.
|
|
.TH "RADOSGW" "8" "January 12, 2014" "dev" "Ceph"
|
|
.SH NAME
|
|
radosgw \- rados REST gateway
|
|
.
|
|
.nr rst2man-indent-level 0
|
|
.
|
|
.de1 rstReportMargin
|
|
\\$1 \\n[an-margin]
|
|
level \\n[rst2man-indent-level]
|
|
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
-
|
|
\\n[rst2man-indent0]
|
|
\\n[rst2man-indent1]
|
|
\\n[rst2man-indent2]
|
|
..
|
|
.de1 INDENT
|
|
.\" .rstReportMargin pre:
|
|
. RS \\$1
|
|
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
|
|
. nr rst2man-indent-level +1
|
|
.\" .rstReportMargin post:
|
|
..
|
|
.de UNINDENT
|
|
. RE
|
|
.\" indent \\n[an-margin]
|
|
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.nr rst2man-indent-level -1
|
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
|
..
|
|
.
|
|
.nr rst2man-indent-level 0
|
|
.
|
|
.de1 rstReportMargin
|
|
\\$1 \\n[an-margin]
|
|
level \\n[rst2man-indent-level]
|
|
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
-
|
|
\\n[rst2man-indent0]
|
|
\\n[rst2man-indent1]
|
|
\\n[rst2man-indent2]
|
|
..
|
|
.de1 INDENT
|
|
.\" .rstReportMargin pre:
|
|
. RS \\$1
|
|
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
|
|
. nr rst2man-indent-level +1
|
|
.\" .rstReportMargin post:
|
|
..
|
|
.de UNINDENT
|
|
. RE
|
|
.\" indent \\n[an-margin]
|
|
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.nr rst2man-indent-level -1
|
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
|
..
|
|
.SH SYNOPSIS
|
|
.nf
|
|
\fBradosgw\fP
|
|
.fi
|
|
.sp
|
|
.SH DESCRIPTION
|
|
.sp
|
|
\fBradosgw\fP is an HTTP REST gateway for the RADOS object store, a part
|
|
of the Ceph distributed storage system. It is implemented as a FastCGI
|
|
module using libfcgi, and can be used in conjunction with any FastCGI
|
|
capable web server.
|
|
.SH OPTIONS
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-c ceph.conf, \-\-conf=ceph.conf
|
|
Use \fIceph.conf\fP configuration file instead of the default
|
|
\fB/etc/ceph/ceph.conf\fP to determine monitor addresses during startup.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-m monaddress[:port]
|
|
Connect to specified monitor (instead of looking through
|
|
\fBceph.conf\fP).
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-rgw\-socket\-path=path
|
|
Specify a unix domain socket path.
|
|
.UNINDENT
|
|
.SH CONFIGURATION
|
|
.sp
|
|
Currently it\(aqs the easiest to use the RADOS Gateway with Apache and mod_fastcgi:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
FastCgiExternalServer /var/www/s3gw.fcgi \-socket /tmp/radosgw.sock
|
|
|
|
<VirtualHost *:80>
|
|
ServerName rgw.example1.com
|
|
ServerAlias rgw
|
|
ServerAdmin webmaster@example1.com
|
|
DocumentRoot /var/www
|
|
|
|
RewriteEngine On
|
|
RewriteRule ^/([a\-zA\-Z0\-9\-_.]*)([/]?.*) /s3gw.fcgi?page=$1¶ms=$2&%{QUERY_STRING} [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
|
|
|
|
<IfModule mod_fastcgi.c>
|
|
<Directory /var/www>
|
|
Options +ExecCGI
|
|
AllowOverride All
|
|
SetHandler fastcgi\-script
|
|
Order allow,deny
|
|
Allow from all
|
|
AuthBasicAuthoritative Off
|
|
</Directory>
|
|
</IfModule>
|
|
|
|
AllowEncodedSlashes On
|
|
ServerSignature Off
|
|
</VirtualHost>
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
And the corresponding radosgw script (/var/www/s3gw.fcgi):
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
#!/bin/sh
|
|
exec /usr/bin/radosgw \-c /etc/ceph/ceph.conf \-n client.radosgw.gateway
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The radosgw daemon is a standalone process which needs a configuration
|
|
section in the ceph.conf The section name should start with
|
|
\(aqclient.radosgw.\(aq as specified in /etc/init.d/radosgw:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
[client.radosgw.gateway]
|
|
host = gateway
|
|
keyring = /etc/ceph/keyring.radosgw.gateway
|
|
rgw socket path = /tmp/radosgw.sock
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
You will also have to generate a key for the radosgw to use for
|
|
authentication with the cluster:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
ceph\-authtool \-C \-n client.radosgw.gateway \-\-gen\-key /etc/ceph/keyring.radosgw.gateway
|
|
ceph\-authtool \-n client.radosgw.gateway \-\-cap mon \(aqallow rw\(aq \-\-cap osd \(aqallow rwx\(aq /etc/ceph/keyring.radosgw.gateway
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
And add the key to the auth entries:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
ceph auth add client.radosgw.gateway \-\-in\-file=keyring.radosgw.gateway
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Now you can start Apache and the radosgw daemon:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
/etc/init.d/apache2 start
|
|
/etc/init.d/radosgw start
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SH USAGE LOGGING
|
|
.sp
|
|
The \fBradosgw\fP maintains an asynchronous usage log. It accumulates
|
|
statistics about user operations and flushes it periodically. The
|
|
logs can be accessed and managed through \fBradosgw\-admin\fP\&.
|
|
.sp
|
|
The information that is being logged contains total data transfer,
|
|
total operations, and total successful operations. The data is being
|
|
accounted in an hourly resolution under the bucket owner, unless the
|
|
operation was done on the service (e.g., when listing a bucket) in
|
|
which case it is accounted under the operating user.
|
|
.sp
|
|
Following is an example configuration:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
[client.radosgw.gateway]
|
|
rgw enable usage log = true
|
|
rgw usage log tick interval = 30
|
|
rgw usage log flush threshold = 1024
|
|
rgw usage max shards = 32
|
|
rgw usage max user shards = 1
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The total number of shards determines how many total objects hold the
|
|
usage log information. The per\-user number of shards specify how many
|
|
objects hold usage information for a single user. The tick interval
|
|
configures the number of seconds between log flushes, and the flush
|
|
threshold specify how many entries can be kept before resorting to
|
|
synchronous flush.
|
|
.SH AVAILABILITY
|
|
.sp
|
|
\fBradosgw\fP is part of the Ceph distributed storage system. Please refer
|
|
to the Ceph documentation at \fI\%http://ceph.com/docs\fP for more
|
|
information.
|
|
.SH SEE ALSO
|
|
.sp
|
|
\fBceph\fP(8)
|
|
\fBradosgw\-admin\fP(8)
|
|
.SH COPYRIGHT
|
|
2010-2014, Inktank Storage, Inc. and contributors. Licensed under Creative Commons BY-SA
|
|
.\" Generated by docutils manpage writer.
|
|
.
|