安装Ceph对象网关
1,在 client-node 上执行预安装步骤。如果你打算使用 Civetweb 的默认端口 7480 ,必须通过 firewall-cmd 或 iptables 来打开它。
2,从管理节点的工作目录,在client-node上安装对象网关软件包。
ceph-deploy install --rgw <client-node> [<client-node> ...]
注意:ceph-client为可以连接的主机名或者IP地址,最好设置好ssh免密,否则需要输入密码才能进行安装
最好在对应节点设置好yum源使用以下命令安装,否则安装很慢或者安装失败
yum -y update && yum -y install ceph-radosgw
新建对象网关实例
ceph-deploy rgw create {node_name}
例如
ceph-deploy rgw create node1
查看
[root@admin-node my-cluster]# ceph -s cluster: id: 8dc0f409-70c1-4499-94a9-466abdf4f30d health: HEALTH_OK services: mon: 3 daemons, quorum node1,node2,node3 (age 30m) mgr: node1(active, since 35m), standbys: node2 mds: 1 up:standby osd: 3 osds: 3 up (since 19h), 3 in (since 19h) rgw: 1 daemon active (node1) #一个对象网关运行在node1上 task status: data: pools: 5 pools, 256 pgs objects: 235 objects, 14 MiB usage: 3.0 GiB used, 45 GiB / 48 GiB avail pgs: 256 active+clean
一旦网关开始运行,你就可以通过 7480 端口来访问它(比如 http://client-node:7480 )。
配置 CEPH 对象网关实例
1,通过修改 Ceph 配置文件可以更改默认端口(比如改成 80 )。增加名为 [client.rgw.<client-node>] 的小节,把 <client-node> 替换成你自己 Ceph 客户端节点的短名称(即 hostname -s 的输出)。例如,你的节点名就是 client-node ,在 [global] 节后增加一个类似于下面的小节:
[client.rgw.client-node] rgw_frontends = "civetweb port=80"
例如修改配置文件
[global] fsid = 8dc0f409-70c1-4499-94a9-466abdf4f30d mon_initial_members = node1 mon_host = 192.168.1.101 auth_cluster_required = cephx auth_service_required = cephx auth_client_required = cephx osd pool default size = 2 public network = 192.168.1.0/24 mon_allow_pool_delete = true #增加以下两行 [client.rgw.node1] rgw_frontends = "civetweb port=80"
2,为了使新端口设置生效需要重启Ceph对象网关
如果是在管理节点修改了配置还需要先同步配置至网关节点
ceph-deploy --overwrite-conf admin client-node
重启对象网关
systemctl restart ceph-radosgw.target
你应该可以生成一个未授权的请求,并收到应答。例如,一个如下不带参数的请求:
http://<client-node>:80
应该收到这样的应答:
<ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Owner> <ID>anonymous</ID> <DisplayName/> </Owner> <Buckets/> </ListAllMyBucketsResult>