This is a collectd plugin which runs under the Python plugin to collect metrics from CEPH using S3 API
Install python dependecies
python-requests
python-boto
pip install requests-aws
Copy ceph.py to your ModulePath
We need add permission to user to access informations about users, buckets and metadata
Login in your radosgw and execute this commands
radosgw-admin caps add --uid=USERNAME --caps="users=read"
radosgw-admin caps add --uid=USERNAME --caps="buckets=read"
radosgw-admin caps add --uid=USERNAME --caps="metadata=read"
radosgw-admin caps add --uid=USERNAME --caps="usage=*"
We need read and write to usage caps, beacause we remove old stats from users
Check in /etc/ceph/ceph.conf if usage and logs already enabled, if not, add this options to client.radosgw.gateway section
rgw enable usage log = true
rgw usage log tick interval = 30
rgw usage log flush threshold = 1024
rgw usage max shards = 32
rgw usage max user shards = 1
Add configuration to collectd-ceph-plugin into section at collectd.conf
Import "ceph"
AccessKey "access_key"
secretKey "secret_key"
Host "radosgw_address"
Verbose True
Update values:
AccessKey: Your access key
SecretKey: Your secret key
Host: IP or hostname to RADOS Gateway
Verbose: Turn on or off verbose mode
For perfect integration with plugin write_graphite, we need change parameter EscapeCharacter in section Cabon to
EscapeCharacter "."