Difference between revisions of "API Special Interest Group/Current Design/Service Catalog"
(Current Design) |
(TODO Analysis) |
||
Line 1: | Line 1: | ||
The format of the service catalog needs to be fixed. The de facto standard is currently DevStack. We need to define a proper format for the service catalog. | The format of the service catalog needs to be fixed. The de facto standard is currently DevStack. We need to define a proper format for the service catalog. | ||
+ | |||
+ | = Analysis = | ||
+ | |||
+ | TODO | ||
+ | |||
+ | * What keys are common? | ||
+ | * What values are common? | ||
+ | * What ranges do the values take? | ||
+ | * What services have a version in the URL? | ||
+ | * Are ports used everywhere? | ||
+ | * ... | ||
= Current Design = | = Current Design = |
Revision as of 03:24, 19 December 2014
The format of the service catalog needs to be fixed. The de facto standard is currently DevStack. We need to define a proper format for the service catalog.
Contents
Analysis
TODO
- What keys are common?
- What values are common?
- What ranges do the values take?
- What services have a version in the URL?
- Are ports used everywhere?
- ...
Current Design
TryStack (RDO)
{ "access": { "metadata": { "is_admin": 0, "roles": [ "9fe2ff9ee4384b1894a90878d3e92bab" ] }, "serviceCatalog": [ { "endpoints": [ { "adminURL": "http://10.100.0.222:8774/v2/TENANT_ID", "id": "0eb78b6d3f644438aea327d9c57b7b5a", "internalURL": "http://10.100.0.222:8774/v2/TENANT_ID", "publicURL": "http://8.21.28.222:8774/v2/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "nova", "type": "compute" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:9696/", "id": "3f4b6015a2f9481481ca03dace8acf32", "internalURL": "http://10.100.0.222:9696/", "publicURL": "http://8.21.28.222:9696/", "region": "RegionOne" } ], "endpoints_links": [], "name": "neutron", "type": "network" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8776/v2/TENANT_ID", "id": "16f6416588f64946bdcdf4a431a8f252", "internalURL": "http://10.100.0.222:8776/v2/TENANT_ID", "publicURL": "http://8.21.28.222:8776/v2/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "cinder_v2", "type": "volumev2" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8779/v1.0/TENANT_ID", "id": "be48765ae31e425cb06036b1ebab694a", "internalURL": "http://10.100.0.222:8779/v1.0/TENANT_ID", "publicURL": "http://8.21.28.222:8779/v1.0/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "trove", "type": "database" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:9292", "id": "1adfcb5414304f3596fb81edb2dfb514", "internalURL": "http://10.100.0.222:9292", "publicURL": "http://8.21.28.222:9292", "region": "RegionOne" } ], "endpoints_links": [], "name": "glance", "type": "image" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8774/v3", "id": "14187733d29845e5993d9b4e0f2df4fc", "internalURL": "http://10.100.0.222:8774/v3", "publicURL": "http://8.21.28.222:8774/v3", "region": "RegionOne" } ], "endpoints_links": [], "name": "novav3", "type": "computev3" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8777", "id": "350f3b91d73f4b3ab8a061c94ac31fbb", "internalURL": "http://10.100.0.222:8777", "publicURL": "http://8.21.28.222:8777", "region": "RegionOne" } ], "endpoints_links": [], "name": "ceilometer", "type": "metering" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8000/v1/", "id": "2198b0d32a604e75a5cc1e13276a813d", "internalURL": "http://10.100.0.222:8000/v1/", "publicURL": "http://8.21.28.222:8000/v1/", "region": "RegionOne" } ], "endpoints_links": [], "name": "heat-cfn", "type": "cloudformation" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8776/v1/TENANT_ID", "id": "7c193c4683d849ca8e8db493722a4d8c", "internalURL": "http://10.100.0.222:8776/v1/TENANT_ID", "publicURL": "http://8.21.28.222:8776/v1/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "cinder", "type": "volume" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8773/services/Admin", "id": "11fac8254be74d7d906110f0069e5748", "internalURL": "http://10.100.0.222:8773/services/Cloud", "publicURL": "http://8.21.28.222:8773/services/Cloud", "region": "RegionOne" } ], "endpoints_links": [], "name": "nova_ec2", "type": "ec2" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:8004/v1/TENANT_ID", "id": "38fa4f9afce34d4ca0f5e0f90fd758dd", "internalURL": "http://10.100.0.222:8004/v1/TENANT_ID", "publicURL": "http://8.21.28.222:8004/v1/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "heat", "type": "orchestration" }, { "endpoints": [ { "adminURL": "http://10.100.0.222:35357/v2.0", "id": "256cdf78ecb04051bf0f57ec11070222", "internalURL": "http://10.100.0.222:5000/v2.0", "publicURL": "http://8.21.28.222:5000/v2.0", "region": "RegionOne" } ], "endpoints_links": [], "name": "keystone", "type": "identity" } ], "token": { "audit_ids": [ "gsjrNoqFSQeuLUo0QeJprQ" ], "expires": "2014-12-15T15:09:29Z", "id": "TOKEN_ID", "issued_at": "2014-12-15T14:09:29.794527", "tenant": { "description": "Auto created account", "enabled": true, "id": "TENANT_ID", "name": "USERNAME" } }, "user": { "id": "USER_ID", "name": "USERNAME", "roles": [ { "name": "_member_" } ], "roles_links": [], "username": "USERNAME" } } }
Rackspace Public Cloud
{ "access": { "serviceCatalog": [ { "endpoints": [ { "publicURL": "https://cdn5.clouddrive.com/v1/MossoCloudFS_ID", "region": "IAD", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn4.clouddrive.com/v1/MossoCloudFS_ID", "region": "SYD", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn1.clouddrive.com/v1/MossoCloudFS_ID", "region": "DFW", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn6.clouddrive.com/v1/MossoCloudFS_ID", "region": "HKG", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn2.clouddrive.com/v1/MossoCloudFS_ID", "region": "ORD", "tenantId": "MossoCloudFS_ID" } ], "name": "cloudFilesCDN", "type": "rax:object-cdn" }, { "endpoints": [ { "internalURL": "https://snet-storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID", "region": "IAD", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID", "region": "SYD", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID", "region": "DFW", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID", "region": "HKG", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID", "region": "ORD", "tenantId": "MossoCloudFS_ID" } ], "name": "cloudFiles", "type": "object-store" }, { "endpoints": [ { "publicURL": "https://syd.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudBlockStorage", "type": "volume" }, { "endpoints": [ { "publicURL": "https://iad.images.api.rackspacecloud.com/v2", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.images.api.rackspacecloud.com/v2", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.images.api.rackspacecloud.com/v2", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.images.api.rackspacecloud.com/v2", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.images.api.rackspacecloud.com/v2", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "cloudImages", "type": "image" }, { "endpoints": [ { "internalURL": "https://snet-hkg.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://hkg.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-ord.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://ord.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-syd.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://syd.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-dfw.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://dfw.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-iad.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://iad.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" } ], "name": "cloudQueues", "type": "rax:queues" }, { "endpoints": [ { "publicURL": "https://iad.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudBigData", "type": "rax:bigdata" }, { "endpoints": [ { "publicURL": "https://hkg.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "cloudOrchestration", "type": "orchestration" }, { "endpoints": [ { "publicURL": "https://syd.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://syd.servers.api.rackspacecloud.com/v2", "versionList": "https://syd.servers.api.rackspacecloud.com/" }, { "publicURL": "https://dfw.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://dfw.servers.api.rackspacecloud.com/v2", "versionList": "https://dfw.servers.api.rackspacecloud.com/" }, { "publicURL": "https://iad.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://iad.servers.api.rackspacecloud.com/v2", "versionList": "https://iad.servers.api.rackspacecloud.com/" }, { "publicURL": "https://hkg.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://hkg.servers.api.rackspacecloud.com/v2", "versionList": "https://hkg.servers.api.rackspacecloud.com/" }, { "publicURL": "https://ord.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://ord.servers.api.rackspacecloud.com/v2", "versionList": "https://ord.servers.api.rackspacecloud.com/" } ], "name": "cloudServersOpenStack", "type": "compute" }, { "endpoints": [ { "publicURL": "https://ord.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "autoscale", "type": "rax:autoscale" }, { "endpoints": [ { "publicURL": "https://syd.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudDatabases", "type": "rax:database" }, { "endpoints": [ { "publicURL": "https://iad.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudBackup", "type": "rax:backup" }, { "endpoints": [ { "publicURL": "https://iad.networks.api.rackspacecloud.com/v2.0", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://lon.networks.api.rackspacecloud.com/v2.0", "region": "LON", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.networks.api.rackspacecloud.com/v2.0", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.networks.api.rackspacecloud.com/v2.0", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.networks.api.rackspacecloud.com/v2.0", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.networks.api.rackspacecloud.com/v2.0", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudNetworks", "type": "network" }, { "endpoints": [ { "publicURL": "https://global.metrics.api.rackspacecloud.com/v2.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" } ], "name": "cloudMetrics", "type": "rax:cloudmetrics" }, { "endpoints": [ { "publicURL": "https://syd.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" } ], "name": "cloudLoadBalancers", "type": "rax:load-balancer" }, { "endpoints": [ { "internalURL": "https://atom.prod.hkg1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://hkg.feeds.api.rackspacecloud.com/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.syd2.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://syd.feeds.api.rackspacecloud.com/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.iad3.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://iad.feeds.api.rackspacecloud.com/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.dfw1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://dfw.feeds.api.rackspacecloud.com/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.ord1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://ord.feeds.api.rackspacecloud.com/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudFeeds", "type": "rax:feeds" }, { "endpoints": [ { "publicURL": "https://monitoring.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID" } ], "name": "cloudMonitoring", "type": "rax:monitor" }, { "endpoints": [ { "publicURL": "https://dns.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID" } ], "name": "cloudDNS", "type": "rax:dns" }, { "endpoints": [ { "publicURL": "https://servers.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://servers.api.rackspacecloud.com/v1.0", "versionList": "https://servers.api.rackspacecloud.com/" } ], "name": "cloudServers", "type": "compute" } ], "token": { "RAX-AUTH:authenticatedBy": [ "PASSWORD" ], "expires": "2014-12-11T03:26:57.420Z", "id": "TOKEN_ID", "tenant": { "id": "TENANT_ID", "name": "TENANT_ID" } }, "user": { "RAX-AUTH:defaultRegion": "DFW", "id": "USER_ID", "name": "useranme", "roles": [ { "description": "Checkmate Access role", "id": "10000150", "name": "checkmate" }, { "description": "A Role that allows a user access to keystone Service methods", "id": "5", "name": "object-store:default", "tenantId": "MossoCloudFS_ID" }, { "description": "A Role that allows a user access to keystone Service methods", "id": "6", "name": "compute:default", "tenantId": "TENANT_ID" }, { "description": "User Admin Role.", "id": "3", "name": "identity:user-admin" } ] } } }
HP Public Cloud
{ "access": { "serviceCatalog": [ { "endpoints": [ { "publicURL": "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/", "region": "region-a.geo-1", "versionId": "2.0", "versionInfo": "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/", "versionList": "https://region-a.geo-1.identity.hpcloudsvc.com:35357" }, { "publicURL": "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v3/", "region": "region-a.geo-1", "versionId": "3.0", "versionInfo": "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v3/", "versionList": "https://region-a.geo-1.identity.hpcloudsvc.com:35357" }, { "publicURL": "https://region-b.geo-1.identity.hpcloudsvc.com:35357/v2.0/", "region": "region-b.geo-1", "versionId": "2.0", "versionInfo": "https://region-b.geo-1.identity.hpcloudsvc.com:35357/v2.0/", "versionList": "https://region-b.geo-1.identity.hpcloudsvc.com:35357" }, { "publicURL": "https://region-b.geo-1.identity.hpcloudsvc.com:35357/v3/", "region": "region-b.geo-1", "versionId": "3.0", "versionInfo": "https://region-b.geo-1.identity.hpcloudsvc.com:35357/v3/", "versionList": "https://region-b.geo-1.identity.hpcloudsvc.com:35357" } ], "name": "Identity", "type": "identity" }, { "endpoints": [ { "publicURL": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/TENANT_ID", "publicURL2": "https://az-1.region-a.geo-1.ec2-compute.hpcloudsvc.com/services/Cloud", "region": "az-1.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.1", "versionInfo": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/", "versionList": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com" }, { "publicURL": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/TENANT_ID", "publicURL2": "https://az-2.region-a.geo-1.ec2-compute.hpcloudsvc.com/services/Cloud", "region": "az-2.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.1", "versionInfo": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/", "versionList": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com" } ], "name": "Compute", "type": "compute" }, { "endpoints": [ { "publicURL": "", "publicURL2": "", "region": "az-1.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "", "versionInfo": "", "versionList": "" }, { "publicURL": "", "publicURL2": "", "region": "az-2.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "", "versionInfo": "", "versionList": "" } ], "name": "Networking", "type": "network" }, { "endpoints": [ { "publicURL": "", "region": "region-a.geo-1", "versionId": "2", "versionInfo": "https://region-a.geo-1.usage-reporting-internal.hpcloudsvc.com:8777", "versionList": "https://region-a.geo-1.usage-reporting-internal.hpcloudsvc.com:8777" }, { "publicURL": "", "region": "region-b.geo-1", "versionId": "2", "versionInfo": "https://region-b.geo-1.usage-reporting-internal.hpcloudsvc.com:8777", "versionList": "https://region-b.geo-1.usage-reporting-internal.hpcloudsvc.com:8777" } ], "name": "Usage Reporting", "type": "metering" }, { "endpoints": [ { "publicURL": "https://region-a.geo-1.objects.hpcloudsvc.com/v1/TENANT_ID", "region": "region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://region-a.geo-1.objects.hpcloudsvc.com/v1.0/", "versionList": "https://region-a.geo-1.objects.hpcloudsvc.com" } ], "name": "Object Storage", "type": "object-store" }, { "endpoints": [ { "publicURL": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/TENANT_ID", "publicURL2": "", "region": "az-1.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.1", "versionInfo": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/", "versionList": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com" }, { "publicURL": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/TENANT_ID", "publicURL2": "", "region": "az-2.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.1", "versionInfo": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/", "versionList": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com" } ], "name": "Block Storage", "type": "volume" }, { "endpoints": [ { "publicURL": "https://region-a.geo-1.cdnmgmt.hpcloudsvc.com/v1.0/TENANT_ID", "region": "region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://region-a.geo-1.cdnmgmt.hpcloudsvc.com/v1.0/", "versionList": "https://region-a.geo-1.cdnmgmt.hpcloudsvc.com/" } ], "name": "CDN", "type": "hpext:cdn" }, { "endpoints": [ { "publicURL": "https://glance1.uswest.hpcloud.net:9292/v1.0", "publicURL2": "", "region": "az-1.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://glance1.uswest.hpcloud.net:9292/v1.0/", "versionList": "https://glance1.uswest.hpcloud.net:9292" }, { "publicURL": "https://glance2.uswest.hpcloud.net:9292/v1.0", "publicURL2": "", "region": "az-2.region-a.geo-1", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://glance2.uswest.hpcloud.net:9292/v1.0/", "versionList": "https://glance2.uswest.hpcloud.net:9292" } ], "name": "Image Management", "type": "image" } ], "token": { "expires": "2014-12-15T03:15:25.438Z", "id": "TOKEN_ID", "tenant": { "id": "TENANT_ID", "name": "TOKEN_NAME" } }, "user": { "id": "USER_ID", "name": "USER_NAME", "otherAttributes": { "domainStatus": "enabled", "domainStatusCode": "00" }, "roles": [ { "id": "00000000004003", "name": "domainadmin", "serviceId": "100" }, { "id": "00000000004014", "name": "cdn-admin", "serviceId": "150", "tenantId": "TENANT_ID" }, { "id": "00000000004025", "name": "sysadmin", "serviceId": "120", "tenantId": "TENANT_ID" }, { "id": "00000000004022", "name": "Admin", "serviceId": "110", "tenantId": "TENANT_ID" }, { "id": "00000000004004", "name": "domainuser", "serviceId": "100" }, { "id": "00000000004016", "name": "netadmin", "serviceId": "120", "tenantId": "TENANT_ID" }, { "id": "00000000004024", "name": "user", "serviceId": "140", "tenantId": "TENANT_ID" }, { "id": "00000000004013", "name": "block-admin", "serviceId": "130", "tenantId": "TENANT_ID" } ] } } }
Rackspace Private Cloud
{ "access": { "serviceCatalog": [ { "endpoints": [ { "publicURL": "https://cdn5.clouddrive.com/v1/MossoCloudFS_ID", "region": "IAD", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn4.clouddrive.com/v1/MossoCloudFS_ID", "region": "SYD", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn1.clouddrive.com/v1/MossoCloudFS_ID", "region": "DFW", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn6.clouddrive.com/v1/MossoCloudFS_ID", "region": "HKG", "tenantId": "MossoCloudFS_ID" }, { "publicURL": "https://cdn2.clouddrive.com/v1/MossoCloudFS_ID", "region": "ORD", "tenantId": "MossoCloudFS_ID" } ], "name": "cloudFilesCDN", "type": "rax:object-cdn" }, { "endpoints": [ { "internalURL": "https://snet-storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.iad3.clouddrive.com/v1/MossoCloudFS_ID", "region": "IAD", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.syd2.clouddrive.com/v1/MossoCloudFS_ID", "region": "SYD", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_ID", "region": "DFW", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_ID", "region": "HKG", "tenantId": "MossoCloudFS_ID" }, { "internalURL": "https://snet-storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID", "publicURL": "https://storage101.ord1.clouddrive.com/v1/MossoCloudFS_ID", "region": "ORD", "tenantId": "MossoCloudFS_ID" } ], "name": "cloudFiles", "type": "object-store" }, { "endpoints": [ { "publicURL": "https://syd.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.blockstorage.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudBlockStorage", "type": "volume" }, { "endpoints": [ { "publicURL": "https://iad.images.api.rackspacecloud.com/v2", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.images.api.rackspacecloud.com/v2", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.images.api.rackspacecloud.com/v2", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.images.api.rackspacecloud.com/v2", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.images.api.rackspacecloud.com/v2", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "cloudImages", "type": "image" }, { "endpoints": [ { "internalURL": "https://snet-hkg.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://hkg.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-ord.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://ord.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-syd.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://syd.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-dfw.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://dfw.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "internalURL": "https://snet-iad.queues.api.rackspacecloud.com/v1/TENANT_ID", "publicURL": "https://iad.queues.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" } ], "name": "cloudQueues", "type": "rax:queues" }, { "endpoints": [ { "publicURL": "https://iad.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.bigdata.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudBigData", "type": "rax:bigdata" }, { "endpoints": [ { "publicURL": "https://hkg.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.orchestration.api.rackspacecloud.com/v1/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "cloudOrchestration", "type": "orchestration" }, { "endpoints": [ { "publicURL": "https://syd.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://syd.servers.api.rackspacecloud.com/v2", "versionList": "https://syd.servers.api.rackspacecloud.com/" }, { "publicURL": "https://dfw.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://dfw.servers.api.rackspacecloud.com/v2", "versionList": "https://dfw.servers.api.rackspacecloud.com/" }, { "publicURL": "https://iad.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://iad.servers.api.rackspacecloud.com/v2", "versionList": "https://iad.servers.api.rackspacecloud.com/" }, { "publicURL": "https://hkg.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://hkg.servers.api.rackspacecloud.com/v2", "versionList": "https://hkg.servers.api.rackspacecloud.com/" }, { "publicURL": "https://ord.servers.api.rackspacecloud.com/v2/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID", "versionId": "2", "versionInfo": "https://ord.servers.api.rackspacecloud.com/v2", "versionList": "https://ord.servers.api.rackspacecloud.com/" } ], "name": "cloudServersOpenStack", "type": "compute" }, { "endpoints": [ { "publicURL": "https://ord.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.autoscale.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" } ], "name": "autoscale", "type": "rax:autoscale" }, { "endpoints": [ { "publicURL": "https://syd.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.databases.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudDatabases", "type": "rax:database" }, { "endpoints": [ { "publicURL": "https://iad.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.backup.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudBackup", "type": "rax:backup" }, { "endpoints": [ { "publicURL": "https://iad.networks.api.rackspacecloud.com/v2.0", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://lon.networks.api.rackspacecloud.com/v2.0", "region": "LON", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.networks.api.rackspacecloud.com/v2.0", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://syd.networks.api.rackspacecloud.com/v2.0", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.networks.api.rackspacecloud.com/v2.0", "region": "DFW", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.networks.api.rackspacecloud.com/v2.0", "region": "HKG", "tenantId": "TENANT_ID" } ], "name": "cloudNetworks", "type": "network" }, { "endpoints": [ { "publicURL": "https://global.metrics.api.rackspacecloud.com/v2.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" } ], "name": "cloudMetrics", "type": "rax:cloudmetrics" }, { "endpoints": [ { "publicURL": "https://syd.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "publicURL": "https://iad.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "publicURL": "https://ord.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" }, { "publicURL": "https://hkg.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "publicURL": "https://dfw.loadbalancers.api.rackspacecloud.com/v1.0/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" } ], "name": "cloudLoadBalancers", "type": "rax:load-balancer" }, { "endpoints": [ { "internalURL": "https://atom.prod.hkg1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://hkg.feeds.api.rackspacecloud.com/TENANT_ID", "region": "HKG", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.syd2.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://syd.feeds.api.rackspacecloud.com/TENANT_ID", "region": "SYD", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.iad3.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://iad.feeds.api.rackspacecloud.com/TENANT_ID", "region": "IAD", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.dfw1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://dfw.feeds.api.rackspacecloud.com/TENANT_ID", "region": "DFW", "tenantId": "TENANT_ID" }, { "internalURL": "https://atom.prod.ord1.us.ci.rackspace.net/TENANT_ID", "publicURL": "https://ord.feeds.api.rackspacecloud.com/TENANT_ID", "region": "ORD", "tenantId": "TENANT_ID" } ], "name": "cloudFeeds", "type": "rax:feeds" }, { "endpoints": [ { "publicURL": "https://monitoring.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID" } ], "name": "cloudMonitoring", "type": "rax:monitor" }, { "endpoints": [ { "publicURL": "https://dns.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID" } ], "name": "cloudDNS", "type": "rax:dns" }, { "endpoints": [ { "publicURL": "https://servers.api.rackspacecloud.com/v1.0/TENANT_ID", "tenantId": "TENANT_ID", "versionId": "1.0", "versionInfo": "https://servers.api.rackspacecloud.com/v1.0", "versionList": "https://servers.api.rackspacecloud.com/" } ], "name": "cloudServers", "type": "compute" } ], "token": { "RAX-AUTH:authenticatedBy": [ "PASSWORD" ], "expires": "2014-12-11T03:26:57.420Z", "id": "TOKEN_ID", "tenant": { "id": "TENANT_ID", "name": "TENANT_ID" } }, "user": { "RAX-AUTH:defaultRegion": "DFW", "id": "USER_ID", "name": "useranme", "roles": [ { "description": "Checkmate Access role", "id": "10000150", "name": "checkmate" }, { "description": "A Role that allows a user access to keystone Service methods", "id": "5", "name": "object-store:default", "tenantId": "MossoCloudFS_ID" }, { "description": "A Role that allows a user access to keystone Service methods", "id": "6", "name": "compute:default", "tenantId": "TENANT_ID" }, { "description": "User Admin Role.", "id": "3", "name": "identity:user-admin" } ] } } }
DevStack
{ "access": { "metadata": { "is_admin": 0, "roles": [ "b4b435b99d7846048a27a32b8ebcea89", "9fe2ff9ee4384b1894a90878d3e92bab", "e026698b534844e8829e11d55e3a745c", "d42cb0c16b23461d971df41c843192b5" ] }, "serviceCatalog": [ { "endpoints": [ { "adminURL": "http://111.222.333.444:8004/v1/TENANT_ID", "id": "249083e367a242e5bde5833805d0ec96", "internalURL": "http://111.222.333.444:8004/v1/TENANT_ID", "publicURL": "http://111.222.333.444:8004/v1/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "heat", "type": "orchestration" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8774/v2/TENANT_ID", "id": "483b2f0455df450ba49a992ab078e0eb", "internalURL": "http://111.222.333.444:8774/v2/TENANT_ID", "publicURL": "http://111.222.333.444:8774/v2/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "nova", "type": "compute" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:9696/", "id": "33b6fbc1b4f247038c159cda2c202429", "internalURL": "http://111.222.333.444:9696/", "publicURL": "http://111.222.333.444:9696/", "region": "RegionOne" } ], "endpoints_links": [], "name": "neutron", "type": "network" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8776/v2/TENANT_ID", "id": "08f5f43c145c4552b81e58e81e7fa563", "internalURL": "http://111.222.333.444:8776/v2/TENANT_ID", "publicURL": "http://111.222.333.444:8776/v2/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "cinderv2", "type": "volumev2" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8779/v1.0/TENANT_ID", "id": "3c09e566901b4adf9c76bd115c2b3da5", "internalURL": "http://111.222.333.444:8779/v1.0/TENANT_ID", "publicURL": "http://111.222.333.444:8779/v1.0/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "trove", "type": "database" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:3333", "id": "0dc5ba19c56a4136b3a64f35787557fc", "internalURL": "http://111.222.333.444:3333", "publicURL": "http://111.222.333.444:3333", "region": "RegionOne" } ], "endpoints_links": [], "name": "s3", "type": "s3" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:9292", "id": "a90b1081ec4e4c89bf785de88ba4c821", "internalURL": "http://111.222.333.444:9292", "publicURL": "http://111.222.333.444:9292", "region": "RegionOne" } ], "endpoints_links": [], "name": "glance", "type": "image" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8000/v1", "id": "1ea607dab4fa4c2c9f5ab7e9cba48cc7", "internalURL": "http://111.222.333.444:8000/v1", "publicURL": "http://111.222.333.444:8000/v1", "region": "RegionOne" } ], "endpoints_links": [], "name": "heat-cfn", "type": "cloudformation" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8776/v1/TENANT_ID", "id": "74e3e4245a1848a5bc8933775165711d", "internalURL": "http://111.222.333.444:8776/v1/TENANT_ID", "publicURL": "http://111.222.333.444:8776/v1/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "cinder", "type": "volume" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8773/services/Admin", "id": "718512c34d264188ba06deb48e86cd2d", "internalURL": "http://111.222.333.444:8773/services/Cloud", "publicURL": "http://111.222.333.444:8773/services/Cloud", "region": "RegionOne" } ], "endpoints_links": [], "name": "ec2", "type": "ec2" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8774/v2.1/TENANT_ID", "id": "5671f9e9789f49188184b5b1d6cd2d0d", "internalURL": "http://111.222.333.444:8774/v2.1/TENANT_ID", "publicURL": "http://111.222.333.444:8774/v2.1/TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "novav21", "type": "computev21" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:8080", "id": "64117a0362294a2488f4e0b2e82d2391", "internalURL": "http://111.222.333.444:8080/v1/AUTH_TENANT_ID", "publicURL": "http://111.222.333.444:8080/v1/AUTH_TENANT_ID", "region": "RegionOne" } ], "endpoints_links": [], "name": "swift", "type": "object-store" }, { "endpoints": [ { "adminURL": "http://111.222.333.444:35357/v2.0", "id": "1fbdedef18064304954ef0cb439949d6", "internalURL": "http://111.222.333.444:5000/v2.0", "publicURL": "http://111.222.333.444:5000/v2.0", "region": "RegionOne" } ], "endpoints_links": [], "name": "keystone", "type": "identity" } ], "token": { "audit_ids": [ "S0qw2tDSSiaaj7327vGXNw" ], "expires": "2014-12-16T04:06:16Z", "id": "TOKEN_ID", "issued_at": "2014-12-16T03:06:16.054920", "tenant": { "description": null, "enabled": true, "id": "TENANT_ID", "name": "demo" } }, "user": { "id": "USER_ID", "name": "demo", "roles": [ { "name": "Member" }, { "name": "_member_" }, { "name": "anotherrole" }, { "name": "heat_stack_owner" } ], "roles_links": [], "username": "demo" } } }
Mirantis
TODO
Outstanding Questions
- How are entry points currently done for all the services?
- How are versions currently done for all the services?
- Why are Name and Type both needed?
- Which of Name and Type are guaranteed to be unique?
- Does there need to be a top-level "access" property?