您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Infernalis版本radosgw如何搭建配置,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
1.安裝apache。
#apt-get install apache2 libapache2-mod-fastcgi
2.配置apache。
在apache配置文件中添加服務器名稱,即:在/etc/apache2/apache2.conf文件添加如下內容:
ServerName {fqdn}
其中fqdn是hostname -f的輸出結果。
使能apache相關模塊。
a2enmod proxy_fcgi
a2enmod fastcgi
a2enmod rewrite
啟動apache。
#service apache2 start
3.安裝radosgw模塊。
#apt-get install radosgw
4.創建radosgw用戶和keyring。
為rgw創建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用戶創建權限。
#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
分發rgw的keyring。
通過ssh命令將/etc/ceph/ceph.client.radosgw.keyring復制到其他rgw節點上。
5.創建pool。
當創建的rgw用戶有寫權限,則rgw會自動的創建所需的pools,因此該步驟可以省略。
6.配置rgw。
在/etc/ceph/ceph.conf中添加如下內容:
[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
創建rgw工作目錄:
#mkdir -p /var/lib/ceph/radosgw/ceph-radosgw.gateway
創建rgwlog目錄
#mkdir -p /var/log/radosgw
7.啟動rgw。
#/etc/init.d/radosgw start
8.配置radosgw網關。
在/etc/apache2/site-available/目錄下創建rgw.conf文件且該文件內容如下:
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/目錄下創建一個可執行文件s3gw.fcgi且該文件內容如下:
#!/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.創建S3用戶。
#radosgw-admin user create --uid="testuser" --display-name="First User"
輸出內容如下:
{"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.設置S3用戶的訪問權限。
#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端口后,在瀏覽器上會出現如下信息:
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>
出現該信息表示radosgw已經搭建成功。
關于“Infernalis版本radosgw如何搭建配置”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。