這篇文章將為大家詳細(xì)講解有關(guān)Infernalis版本radosgw如何搭建配置,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
1.安裝apache。
#apt-get install apache2 libapache2-mod-fastcgi
2.配置apache。
在apache配置文件中添加服務(wù)器名稱,即:在/etc/apache2/apache2.conf文件添加如下內(nèi)容:
ServerName {fqdn}
其中fqdn是hostname -f的輸出結(jié)果。
使能apache相關(guān)模塊。
a2enmod proxy_fcgi
a2enmod fastcgi
a2enmod rewrite
啟動apache。
#service apache2 start
3.安裝radosgw模塊。
#apt-get install radosgw
4.創(chuàng)建radosgw用戶和keyring。
為rgw創(chuàng)建keyring。
#ceph-authtool --create-keyring /etc/ceph/ceph.client.radosgw.keyring
#chmod +r /etc/ceph/ceph.client.radosgw.keyring
為rgw用戶生成key。
#ceph-authtool /etc/ceph/ceph.client.radosgw.keyring -n client.radosgw.gateway --gen-key
為rgw用戶創(chuàng)建權(quán)限。
#ceph-authtool -n client.radosgw.gateway --cap osd 'allow rwx' --cap mon 'allow rwx' /etc/ceph/ceph.client.radosgw.keyring
將rgw用戶添加到ceph集群。
#ceph -k /etc/ceph/ceph.client.admin.keyring auth add client.radosgw.gateway -i /etc/ceph/ceph.client.radosgw.keyring
分發(fā)rgw的keyring。
通過ssh命令將/etc/ceph/ceph.client.radosgw.keyring復(fù)制到其他rgw節(jié)點(diǎn)上。
5.創(chuàng)建pool。
當(dāng)創(chuàng)建的rgw用戶有寫權(quán)限,則rgw會自動的創(chuàng)建所需的pools,因此該步驟可以省略。
6.配置rgw。
在/etc/ceph/ceph.conf中添加如下內(nèi)容:
[client.radosgw.gateway]
host = ceph-node1
keyring = /etc/ceph/ceph.client.radosgw.keyring
rgw socket path = /tmp/radosgw.sock
log file = /var/log/radosgw/client.radosgw.gateway.log
rgw print continue = false
創(chuàng)建rgw工作目錄:
#mkdir -p /var/lib/ceph/radosgw/ceph-radosgw.gateway
創(chuàng)建rgwlog目錄
#mkdir -p /var/log/radosgw
7.啟動rgw。
#/etc/init.d/radosgw start
8.配置radosgw網(wǎng)關(guān)。
在/etc/apache2/site-available/目錄下創(chuàng)建rgw.conf文件且該文件內(nèi)容如下:
FastCgiExternalServer /var/www/s3gw.fcgi -socket /tmp/radosgw.sock
<VirtualHost *:80>
ServerName ceph-node1
ServerAlias ceph-node1
DocumentRoot /var/www
RewriteEngine On
RewriteRule ^/(.*) /s3gw.fcgi?%{QUERY_STRING} [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "HEAD,GET,PUT,POST,DELETE,OPTIONS"
Header set Access-Control-Allow-Headers "authorization,content-type,x-amz-date,x-amz-user-agent,content-md5,neunn-token,neunn-user-id,x-amz-copy-source,x-amz-acl,neunn-radosgw-user-id,neunn-user-adminops"
Header set Access-Control-Expose-Headers "ETag"
</IfModule>
<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
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
ServerSignature Off
</VirtualHost>
另外在/var/www/目錄下創(chuàng)建一個可執(zhí)行文件s3gw.fcgi且該文件內(nèi)容如下:
#!/bin/sh
exec /usr/bin/radosgw -c /etc/ceph/ceph.conf -n client.radosgw.gateway
9.重新啟動apache。
使能rgw模塊。
#a2ensite rgw.conf
#a2dissite 000-default
重啟apache。
#service apache2 restart
10.創(chuàng)建S3用戶。
#radosgw-admin user create --uid="testuser" --display-name="First User"
輸出內(nèi)容如下:
{"user_id": "testuser",
"display_name": "First User",
"email": "",
"suspended": 0,
"max_buckets": 1000,
"auid": 0,
"subusers": [],
"keys": [
{ "user": "testuser",
"access_key": "I0PJDPCIYZ665MW88W9R",
"secret_key": "dxaXZ8U90SXydYzyS5ivamEP20hkLSUViiaR+ZDA"}],
"swift_keys": [],
"caps": [],
"op_mask": "read, write, delete",
"default_placement": "",
"placement_tags": [],
"bucket_quota": { "enabled": false,
"max_size_kb": -1,
"max_objects": -1},
"user_quota": { "enabled": false,
"max_size_kb": -1,
"max_objects": -1},
"temp_url_keys": []}
其中比較重要的是access_key和secret_key。
11.設(shè)置S3用戶的訪問權(quán)限。
#radosgw-admin caps add --uid=testuser --caps="users=*"
#radosgw-admin caps add --uid=testuser --caps="buckets=*"
#radosgw-admin caps add --uid=testuser --caps="metadata=*"
#radosgw-admin caps add --uid=testuser --caps="usage=*"
#radosgw-admin caps add --uid=testuser --caps="zone=*"
12.使用瀏覽器訪問radosgw。
使用通用瀏覽器訪問radosgw的80端口后,在瀏覽器上會出現(xiàn)如下信息:
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>anonymous</ID>
<DisplayName/>
</Owner>
<Buckets/>
</ListAllMyBucketsResult>
出現(xiàn)該信息表示radosgw已經(jīng)搭建成功。
關(guān)于“Infernalis版本radosgw如何搭建配置”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。