Hi, I'm trying to write a simple test application using the Python 3 RADOS API. I've made a separate keyring for my application with the same permissions as the admin keyring, but I can't seem to use it to connect to my cluster. The only keyring that seems to work is the client.admin keyring. Does anyone have any experience with this issue?
Cluster info: OS: Ubuntu 18.04.1 Ceph: Mimic 13.2.1 (from Ceph repository) Attempting to connect to the cluster using python3-rados or python-rados results in the following error: >>> import rados >>> cluster = rados.Rados(conffile="python_ceph.conf") >>> cluster.connect() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "rados.pyx", line 895, in rados.Rados.connect File "rados.pyx", line 474, in rados.make_ex TypeError: InvalidArgumentError does not take keyword arguments Contents of python_ceph.conf: [global] cluster network = 0.0.0.0/0 fsid = 518403a0-6b6f-42b8-be99-e58788bee5c2 mon host = <redacted> mon initial members = <hostname of monitor> mon_allow_pool_delete = True osd crush chooseleaf type = 0 public network = 0.0.0.0/0 keyring = /etc/ceph/ceph.client.dms.keyring # Everything works ok if i use client.adming.keyring Output of ceph auth ls ... client.admin key: <Redacted> caps: [mds] allow * caps: [mgr] allow * caps: [mon] allow * caps: [osd] allow * ... client.dms key: <redacted, but matches contents of keyring file> caps: [mgr] allow * caps: [mon] allow * caps: [osd] allow * ... What's even more odd is that I can use client.dms keyring with the ceph command line program without issues... e.g., "ceph --user dms status" does not result in any errors has the same output as "ceph --user admin status" Does anyone have any thoughts on what could be causing this issue? Thanks, Ben
_______________________________________________ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com