2

I've deployed an 6 nodes ceph storage cluster + 1 admin & 1 monitor. Everything seems fine. I've just created a gateway node and it appears to be fine when I started the ceph-radosgw process:

[ceph@gwy001iad ~]$ sudo /etc/init.d/ceph-radosgw status
/bin/radosgw is running.

But I'm not able to use any rados or rados-admin cmd on it.

[ceph@gwy001iad ~]$ sudo radosgw-admin user create --uid="testuser" --display-name="First User"
2015-04-22 16:22:12.706227 7f6579876880 -1 monclient(hunting): ERROR: missing keyring, cannot use cephx for authentication
2015-04-22 16:22:12.706234 7f6579876880  0 librados: client.admin initialization error (2) No such file or directory
couldn't init storage provider

[ceph@gwy001iad ~]$ rados lspools
2015-04-22 16:37:57.504032 7fb5dcb837c0 -1 monclient(hunting): ERROR: missing keyring, cannot use cephx for authentication
2015-04-22 16:37:57.504038 7fb5dcb837c0  0 librados: client.admin initialization error (2) No such file or directory

couldn't connect to cluster! error -2

The keyring file has read permission:

[ceph@gwy001iad ~]$ ls -l /etc/ceph/
total 16
-rw-r--r-- 1 root root 252 Apr 21 17:14 ceph.client.radosgw.keyring
-rw-r--r-- 1 root root 121 Apr 20 17:53 ceph.client.radosgw.keyring.bk
-rw-r--r-- 1 root root 814 Apr 21 17:30 ceph.conf
drwxr-xr-x 2 root root   6 Apr 21 12:31 radosgw-agent
-rwxr-xr-x 1 root root  92 Apr 10 12:42 rbdmap
-rw------- 1 root root   0 Apr 21 11:57 tmpavz_Y7

And the config does indicate the right path for the ring file:

[ceph@gwy001iad ~]$ cat /etc/ceph/ceph.conf
[global]
mon_initial_members = mondev001iad
mon_host = 10.96.40.98
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
filestore_xattr_use_omap = true
osd_pool_default_size = 2
osd pool default pg num = 100
osd pool default pgp num = 100
#debug ms = 1
#debug rgw = 20

[mon]
#        mon host = mondev001iad
#       mon addr = 10.96.40.98:6789
[mon.cldstoremondev001iad]
    host = mondev001iad
    mon addr = 10.96.40.98:6789


[client.radosgw.gwy001iad]
host = gwy001iad
keyring = /etc/ceph/ceph.client.radosgw.keyring
rgw socket path = ""
log file = /var/log/radosgw/client.radosgw.gateway.log
rgw frontends = fastcgi socket_port=9000 socket_host=0.0.0.0
rgw print continue = false

keyring file does provide write permission.

[ceph@gwy001iad ~]$ cat /etc/ceph/ceph.client.radosgw.keyring
[client.radosgw.gwy001iad]
    key = AQCl5jZVVu6NEBAAR3xNNAbDK9m0cQnlCG/+1w==
    caps mon = "allow rwx"
    caps osd = "allow rwx"

The gateway host only have ceph-radosgw and radosgw-agent installed on it. I appreciate if anyone can provide me tips for troubleshooting. Best wishes.

windonwaters
  • 21
  • 1
  • 3

1 Answers1

0

Trying copying the admin keyring (or creating one using ceph auth get-or-create) to the node using radosgw-admin.

xworder
  • 81
  • 1
  • 7