Skip to content

Commit

Permalink
doc: Adds updated radosgw man page under man/
Browse files Browse the repository at this point in the history
Signed-off-by: Nilamdyuti Goswami <[email protected]>
  • Loading branch information
nilamdyuti committed Mar 23, 2015
1 parent 7a1984d commit db80e45
Showing 1 changed file with 117 additions and 54 deletions.
171 changes: 117 additions & 54 deletions man/radosgw.8
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
.TH "RADOSGW" "8" "January 12, 2014" "dev" "Ceph"
.TH "RADOSGW" "8" "January 15, 2015" "dev" "Ceph"
.SH NAME
radosgw \- rados REST gateway
.
Expand Down Expand Up @@ -72,91 +72,153 @@ capable web server.
.INDENT 0.0
.TP
.B \-c ceph.conf, \-\-conf=ceph.conf
Use \fIceph.conf\fP configuration file instead of the default
Use \fBceph.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).
Connect to specified monitor (instead of looking through \fBceph.conf\fP).
.UNINDENT
.INDENT 0.0
.TP
.B \-i ID, \-\-id ID
Set the ID portion of name for radosgw
.UNINDENT
.INDENT 0.0
.TP
.B \-n TYPE.ID, \-\-name TYPE.ID
Set the rados user name for the gateway (eg. client.radosgw.gateway)
.UNINDENT
.INDENT 0.0
.TP
.B \-\-cluster NAME
Set the cluster name (default: ceph)
.UNINDENT
.INDENT 0.0
.TP
.B \-d
Run in foreground, log to stderr
.UNINDENT
.INDENT 0.0
.TP
.B \-f
Run in foreground, log to usual location
.UNINDENT
.INDENT 0.0
.TP
.B \-\-rgw\-socket\-path=path
Specify a unix domain socket path.
.UNINDENT
.INDENT 0.0
.TP
.B \-\-rgw\-region=region
The region where radosgw runs
.UNINDENT
.INDENT 0.0
.TP
.B \-\-rgw\-zone=zone
The zone where radosgw runs
.UNINDENT
.SH CONFIGURATION
.sp
Currently it\(aqs the easiest to use the RADOS Gateway with Apache and mod_fastcgi:
Earlier RADOS Gateway had to configured with \fBApache\fP and \fBmod_fastcgi\fP\&.
Now, \fBmod_proxy_fcgi\fP module is used instead of \fBmod_fastcgi\fP as the later
doesn\(aqt come under a free license. \fBmod_proxy_fcgi\fP works differently than a
traditional FastCGI module. This module requires the service of \fBmod_proxy\fP
which provides support for the FastCGI protocol. So, to be able to handle
FastCGI protocol, both \fBmod_proxy\fP and \fBmod_proxy_fcgi\fP have to be present
in the server. Unlike \fBmod_fastcgi\fP, \fBmod_proxy_fcgi\fP cannot start the
application process. Some platforms have \fBfcgistarter\fP for that purpose.
However, external launching of application or process management may be available
in the FastCGI application framework in use.
.sp
\fBApache\fP can be configured in a way that enables \fBmod_proxy_fcgi\fP to be used
with localhost tcp or through unix domain socket. \fBmod_proxy_fcgi\fP that doesn\(aqt
support unix domain socket such as the ones in Apache 2.2 and earlier versions of
Apache 2.4, needs to be configured for use with localhost tcp.
.INDENT 0.0
.IP 1. 3
Modify \fB/etc/ceph/ceph.conf\fP file to make radosgw use tcp instead of unix
domain socket.
.INDENT 3.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 [email protected]
DocumentRoot /var/www

RewriteEngine On
RewriteRule ^/([a\-zA\-Z0\-9\-_.]*)([/]?.*) /s3gw.fcgi?page=$1&params=$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>
[client.radosgw.gateway]
host = gateway
keyring = /etc/ceph/keyring.radosgw.gateway

AllowEncodedSlashes On
ServerSignature Off
</VirtualHost>
; ********
; tcp fastcgi
rgw socket path = ""
rgw frontends = fastcgi socket_port=9000 socket_host=0.0.0.0
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
And the corresponding radosgw script (/var/www/s3gw.fcgi):
.INDENT 0.0
.IP 2. 3
Modify Apache\(aqs configuration file so that \fBmod_proxy_fcgi\fP can be used
with localhost tcp.
.INDENT 3.0
.INDENT 3.5
.sp
.nf
.ft C
#!/bin/sh
exec /usr/bin/radosgw \-c /etc/ceph/ceph.conf \-n client.radosgw.gateway
<VirtualHost *:80>
ServerName localhost
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

LogLevel debug


RewriteEngine On

RewriteRule .* \- [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

SetEnv proxy\-nokeepalive 1

ProxyPass / fcgi://127.0.01:9000/
</VirtualHost>
.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
.IP 3. 3
Modify Apache\(aqs configuration file so that \fBmod_proxy_fcgi\fP can be used
through unix domain socket.
.INDENT 3.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
<VirtualHost *:80>
ServerName localhost
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

LogLevel debug


RewriteEngine On

RewriteRule .* \- [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

ProxyPass / unix:///tmp/.radosgw.sock|fcgi://localhost:9000/ disablereuse=On
</VirtualHost>
.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
.IP 4. 3
Generate a key for radosgw to use for authentication with the cluster.
.INDENT 3.0
.INDENT 3.5
.sp
.nf
Expand All @@ -167,9 +229,9 @@ ceph\-authtool \-n client.radosgw.gateway \-\-cap mon \(aqallow rw\(aq \-\-cap o
.fi
.UNINDENT
.UNINDENT
.sp
And add the key to the auth entries:
.INDENT 0.0
.IP 5. 3
Add the key to the auth entries.
.INDENT 3.0
.INDENT 3.5
.sp
.nf
Expand All @@ -179,9 +241,9 @@ ceph auth add client.radosgw.gateway \-\-in\-file=keyring.radosgw.gateway
.fi
.UNINDENT
.UNINDENT
.sp
Now you can start Apache and the radosgw daemon:
.INDENT 0.0
.IP 6. 3
Start Apache and radosgw.
.INDENT 3.0
.INDENT 3.5
.sp
.nf
Expand All @@ -192,9 +254,10 @@ Now you can start Apache and the radosgw daemon:
.fi
.UNINDENT
.UNINDENT
.UNINDENT
.SH USAGE LOGGING
.sp
The \fBradosgw\fP maintains an asynchronous usage log. It accumulates
\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
Expand Down

0 comments on commit db80e45

Please sign in to comment.