搭建ceph的radosgw对象存储

搭建osd和mds见https://my.oschina.net/u/2326998/blog/805779

一、添加radosgw(civetweb方式)

1、创建网关实例的数据目录

mkdir /var/lib/ceph/radosgw

mkdir /var/lib/ceph/radosgw/ceph-rgw.{name}

2、创建启动文件和done文件

touch /var/lib/ceph/radosgw/ceph-rgw.{name}/done

touch /var/lib/ceph/radosgw/ceph-rgw.{name}/systemd

3、创建用户使用的密钥

ceph auth get-or-create client.rgw.node3 osd "allow rwx" mon "allow rw" -o /var/lib/ceph/radosgw/ceph-rgw.{name}/keyring

cp /var/lib/ceph/radosgw/ceph-rgw.{name}/keyring /etc/ceph/ceph.client.rgw.{name}.keyring

4、把如下内容加入ceph.conf配置文件

[client.rgw.{name}]
rgw_frontends = "civetweb port=80"

5、启动radosgw服务

systemctl enable ceph-radosgw.target

cd /etc/systemd/system/multi-user.target.wants

ln -s ./ceph-radosgw@rgw.{name}.service /lib/systemd/system/ceph-radosgw@.service

systemctl start ceph-radosgw@rgw.{name}.service

二、添加radosgw(nginx方式)

1、2、3、创建目录,创建用户见上步。

4、安装nginx

apt-get install nginx

5、修改ceph.conf配置文件,把client.rgw.{name} 部分修改如下:

[client.rgw.{name}]
rgw dns name = s3.ceph.work
rgw frontends = fastcgi
host = hostname
keyring = /etc/ceph/ceph.client.rgw.keyring
rgw socket path = /var/run/ceph/ceph-client.rgw.{name}.sock
log file = /var/log/ceph/ceph-client.rgw.log
rgw print continue = false
rgw content length compat = true

6、编辑/etc/nginx/nginx.conf文件 http部分修改为如下内容

server {
        listen     80 default;
        server_name s3.ceph.work;
        client_max_body_size 0;
    
        location / {
        fastcgi_pass_header Authorization;
        fastcgi_pass_request_headers on;
        fastcgi_param QUERY_STRING $query_string;
        fastcgi_param REQUEST_METHOD $request_method;
        fastcgi_param CONTENT_LENGTH $content_length;
        fastcgi_param CONTENT_TYPE $content_type;
        fastcgi_param HTTP_CONTENT_LENGTH $content_length;
        if ($request_method = PUT) {
            rewrite ^ /PUT$request_uri;
        }
        include fastcgi_params;
        fastcgi_pass unix:/var/run/ceph/ceph-client.rgw.node-209.sock;
        }
        location /PUT/ {
            internal;
            fastcgi_pass_header Authorization;
            fastcgi_pass_request_headers on;
    
            include fastcgi_params;
            fastcgi_param QUERY_STRING $query_string;
            fastcgi_param REQUEST_METHOD $request_method;
            fastcgi_param CONTENT_LENGTH $content_length;
            fastcgi_param CONTENT_TYPE $content_type;
            fastcgi_param HTTP_CONTENT_LENGTH $content_length;
            fastcgi_pass unix:/var/run/ceph/ceph-client.rgw.node-209.sock;
        }
    }

note:修改文件中开头的user 用户,修改为和sock用户相同,或者注销 user

7、启动服务

用curl http://hostname 测试。

出现如下内容说明搭建成功

<?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>anonymous</ID><DisplayName></DisplayName></Owner><Buckets></Buckets></ListAllMyBucketsResult>

转载于:https://my.oschina.net/u/2326998/blog/838611

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值