首页 > 解决方案 > 如何在 keystone 会话中使用 senlinclient

问题描述

如何将 senlinclient 与 keystone 会话一起使用?谁能给我一个例子?谢谢。

from keystoneauth1 import session
from keystoneauth1.identity import v3
from senlinclient.client import Client as senlinClient


def get_senlin_client_by_session(session):
    return senlinClient(api_ver=1, session=session)


admin_auth = v3.Password(username='admin',
                         password='xxxxxx',
                         auth_url='http://vip:5000/v3',
                         project_name='admin',
                         user_domain_name='Default',
                         project_domain_name='Default'
                         )
session = session.Session(auth=admin_auth)
senlin_client = get_senlin_client_by_session(session)
print(senlin_client)

上面的例子我试过了,但是会报如下错误。

  File "/usr/lib/python2.7/site-packages/senlinclient/client.py", line 23, in Client
    return cls(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/senlinclient/v1/client.py", line 28, in __init__
    self.service = self.conn.cluster
  File "/usr/lib/python2.7/site-packages/openstack/service_description.py", line 95, in __get__
    allow_version_hack=True,
  File "/usr/lib/python2.7/site-packages/openstack/config/cloud_region.py", line 457, in get_session_client
    session=self.get_session(),
  File "/usr/lib/python2.7/site-packages/openstack/config/cloud_region.py", line 324, in get_session
    "Problem with auth parameters")
openstack.exceptions.ConfigException: Problem with auth parameters

标签: openstackkeystone

解决方案


问题已解决。

openstack rocky 使用 python2-senlinclient-1.8.0-1.el7.noarch 和 python2-openstacksdk-0.17.3-1.el7.noarch。我将 python2-senlinclient 升级到 1.9.0 版本,问题就解决了。


推荐阅读