How to solve TypeError: __init__() got an unexpected keyword argument 'interface' error in ceilometer?

asked 2018-01-11 06:57:07 -0500

Bhautik gravatar image

updated 2018-01-11 07:02:22 -0500

Hi, I am using gnocchi as backend for ceilometer in openstack Ocata version. These are the version of gnocchi and ceilometer packages.

gnocchi==4.1.2 gnocchiclient==7.0.1

ceilometer==8.1.2 python-ceilometerclient==2.8.0

While running ceilometer-upgrade --skip-metering-database I am getting error like

2018-01-11 18:24:53.638 6489 CRITICAL ceilometer [-] TypeError: __init__() got an unexpected keyword argument 'interface' 2018-01-11 18:24:53.638 6489 ERROR ceilometer Traceback (most recent call last): 2018-01-11 18:24:53.638 6489 ERROR ceilometer File "/usr/bin/ceilometer-upgrade", line 10, in <module> 2018-01-11 18:24:53.638 6489 ERROR ceilometer sys.exit(upgrade()) 2018-01-11 18:24:53.638 6489 ERROR ceilometer File "/usr/lib/python2.7/dist-packages/ceilometer/cmd/storage.py", line 53, in upgrade 2018-01-11 18:24:53.638 6489 ERROR ceilometer gnocchi_client.upgrade_resource_types(conf) 2018-01-11 18:24:53.638 6489 ERROR ceilometer File "/usr/lib/python2.7/dist-packages/ceilometer/gnocchi_client.py", line 110, in upgrade_resource_types 2018-01-11 18:24:53.638 6489 ERROR ceilometer gnocchi = get_gnocchiclient(conf) 2018-01-11 18:24:53.638 6489 ERROR ceilometer File "/usr/lib/python2.7/dist-packages/ceilometer/gnocchi_client.py", line 29, in get_gnocchiclient 2018-01-11 18:24:53.638 6489 ERROR ceilometer endpoint_override=endpoint_override) 2018-01-11 18:24:53.638 6489 ERROR ceilometer File "/usr/local/lib/python2.7/dist-packages/gnocchiclient/client.py", line 24, in Client 2018-01-11 18:24:53.638 6489 ERROR ceilometer return client_class(args, *kwargs) 2018-01-11 18:24:53.638 6489 ERROR ceilometer TypeError: __init__() got an unexpected keyword argument 'interface' 2018-01-11 18:24:53.638 6489 ERROR ceilometer

Can anyone suggest me where exactly i am making mistake?

edit retag flag offensive close merge delete

Comments

I'm not sure if this applies, but there are config options for the interface(s):

control1:~ # egrep -ve "^#|^$" /etc/gnocchi/gnocchi.conf | grep interface
interface = internalURL
control1:~ # egrep -ve "^#|^$" /etc/ceilometer/ceilometer.conf | grep interface
interface = internal
eblock gravatar imageeblock ( 2018-01-15 03:07:34 -0500 )edit

I don't even know if mine are correct, but it did work - at least to collect data. But getting ceilometer to work with gnocchi is quite a challenge, I thought I had figured it out. Data is written to ceph backend, but querying gnocchi still doesn't work and I don't know why.

eblock gravatar imageeblock ( 2018-01-15 03:12:20 -0500 )edit

@eblock My configuration is same as you mention here. I tried to change the version and then the error changed so i feel problem is version mismatch. If you know version compatibility for ceilometer than please let me know which versions i have to use to make it work.

Bhautik gravatar imageBhautik ( 2018-01-16 00:13:17 -0500 )edit

I don't have any information which versions are compatible, but these are mine:

openstack-gnocchi-3.1.4
python-gnocchiclient-2.8.2
openstack-ceilometer-8.1.1
python-ceilometerclient-2.8.0

So there is a difference between our gnocchi versions, maybe try mine?

eblock gravatar imageeblock ( 2018-01-16 01:59:44 -0500 )edit

Thanks,

I will reinstall with your versions.

Bhautik gravatar imageBhautik ( 2018-01-16 02:22:38 -0500 )edit