就Ceilometer API python而言,终点意味着什么?

时间:2015-03-19 14:26:10

标签: python openstack keystone ceilometer

我是openstack的新手,尝试使用Ceilometer python API从测试平台服务器中提取一些数据,但是我得到了这个错误,我不明白,它需要什么作为端点?

raise exceptions.EndpointNotFound()
keystoneclient.openstack.common.apiclient.exceptions.EndpointNotFound

我的代码很简单,

import ceilometerclient
import ceilometerclient.client
import ceilometerclient.v2 as c_client


OS_USERNAME="myusername"
OS_PASSWORD="mypassword"
OS_TENANT_NAME="myproject"
OS_AUTH_URL="url"

cclient = ceilometerclient.client.get_client(2, os_username=OS_USERNAME, os_password=OS_PASSWORD, os_tenant_name=OS_TENANT_NAME, os_auth_url=OS_AUTH_URL)

samples = cclient.meters.list()
for s in sample:
    print s;
    print;

1 个答案:

答案 0 :(得分:0)

"端点"只是表示"您联系服务的网址"。在OpenStack中,keystone服务维护一个"目录" API端点。创建Ceilometer客户端对象时,它会向服务目录询问metering服务的URL。

如果您的Keystone目录中未列出此服务,您将看到此错误。

您可以通过运行openstack endpoint list来查看目录中当前配置的端点(如果您有openstack统一客户端可用):

$ openstack endpoint list
+------...+-----------+--------------+---------------+
| ID   ...| Region    | Service Name | Service Type  |
+------...+-----------+--------------+---------------+
| c700a...| RegionOne | myservice    | messagequeue  |
| 4bd81...| RegionOne | keystone     | identity      |
| a2e5f...| RegionOne | nova         | compute       |
| 30483...| RegionOne | heat         | orchestration |
| f4ab0...| RegionOne | neutron      | network       |
| 482d9...| RegionOne | cinder       | volume        |
| e2615...| RegionOne | myservice    | messagequeue  |
| e7ef8...| RegionOne | ceilometer   | metering      |
| 41a1d...| RegionOne | nova_ec2     | ec2           |
| 9a7b8...| RegionOne | glance       | image         |
| 5bb58...| RegionOne | cinder_v2    | volumev2      |
+------...+-----------+--------------+---------------+

如果您没有可用的统一客户端,则可以使用 keystone service-listkeystone endpoint-list的组合 得到相同的信息。

如果您的环境没有列出metering服务,您可能就是这样 需要遵循these instructions(查找标有&#34的步骤;使用身份服务的遥测服务,以便其他OpenStack服务可以找到它")。