我是openstack的新手,试图使用Ceilometer 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;发布于 2015-03-20 03:32:27
“端点”简单地说就是“联系服务的URL”。在OpenStack中,keystone服务维护一个端点的“目录”。当您创建一个Ceilometer客户端对象时,它会向服务目录请求metering服务的URL。
如果此服务未在Keystone目录中列出,您将看到此错误。
您可以通过运行openstack endpoint list (如果您有可用的openstack unified client )查看目录中当前配置的端点:
$ 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-list和keystone endpoint-list来获取相同的信息。
如果您的环境没有列出metering服务,您可能需要遵循these instructions (查找标记为“带有标识服务的遥测服务,以便其他OpenStack服务可以找到它”的步骤)。
https://stackoverflow.com/questions/29147164
复制相似问题