7.2.1 安装ceph对象网关
在管理节点的工作目录下,给 Ceph 对象网关节点安装Ceph对象所需的软件包。例如:
ceph-deploy install --rgw <gateway-node1> [<gateway-node2> ...]
让 Ceph 对象网关节点成为管理节点,在管理节点的工作目录下执行以下命令:
ceph-deploy admin <gateway-node1>
7.2.2 新建网关实例
在 Ceph 对象网关节点上新建一个 Ceph对象网关实例:
ceph-deploy rgw create <gateway-node1>
在网关服务成功运行后,使用未经授权的请求来访问端口 7480:
wget http://gateway-node1:7480
如果网关实例工作正常,收到如下的返回信息:
root@data01:/etc/ceph# wget http://data02:7480
--2016-12-14 07:28:45-- http://data02:7480/
Resolving data02 (data02)... 100.100.100.245
Connecting to data02 (data02)|100.100.100.245|:7480... connected.
HTTP request sent, awaiting response... 200 OK
Length: 214 [application/xml]
Saving to: ‘index.html’
100%[===========================================================================================================================================>] 214 --.-K/s in 0s
2016-12-14 07:28:57 (23.2 MB/s) - ‘index.html’ saved [214/214]
7.2.3 修改默认端口
Civetweb 默认运行在端口 7480 之上。如果想修改这个默认端口 (比如使用端口 80),修改你的管理节点的工作目录下的 Ceph 配置文件。
在 ceph.conf 文件中添加以下信息
[client.rgw.gateway-node1]
rgw_frontends = "civetweb port=80"
7.2.4 从apache迁移到civetweb
[client.radosgw.gateway-node]
host = {hostname}
keyring = /etc/ceph/ceph.client.radosgw.keyring
rgw socket path = /var/run/ceph/ceph.radosgw.gateway.fastcgi.sock
log file = /var/log/radosgw/client.radosgw.gateway-node1.log
将配置文件推送到所有ceph以及网关节点
ceph-deploy --overwrite-conf config push data01 data02 data03
重启网关
service radosgw-all restart
7.2.5 使用网关
为 S3 访问创建 RADOSGW 用户
一个radosgw
用户需要被新建并被分配权限。命令 man radosgw-admin 会提供该命令的额外信息。
为了新建用户,在 gateway host 上执行下面的命令:
sudo radosgw-admin user create --uid="testuser" --display-name="First User"
命令的输出跟下面的类似:
...
"user": "testuser-data03",
"access_key": "PTX508ROWHY1CFAS6BN4",
"secret_key": "3vFkNwtAd4uXQe5Q327t4qNFd1BTPIyNiEnOyAdp"
...