Hello all.
I installed Stratos and i'm trying to configure it with the StratosManager in
order to work with an OpenStack installation.
I successfully passed steps 1-4 but I stuck on steps 5-6.
When I try to configure Load Balancer I receive an Error (the same on step 6 -
Cartridge configuration): Unable to build the jclouds object for iaas of type:
openstack
In the log I found (truncated stack):
TID: [0] [STRATOS] [2014-09-19 15:50:27,655] INFO
{org.apache.stratos.rest.endpoint.services.ServiceUtils} - Starting to deploy
a Cartridge [type] lb {org.apache.stratos.rest.endpoint.services.ServiceUtils}
TID: [0] [STRATOS] [2014-09-19 15:50:28,530] ERROR
{org.apache.stratos.cloud.controller.util.CloudControllerUtil} - Unable to
build the jclouds object for iaas of type: openstack
{org.apache.stratos.cloud.controller.util.CloudControllerUtil}
java.util.NoSuchElementException: imageId(ec4bb03e-d6df-4964-a490-ae0ef57536e7)
not found
at
org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:749)
at
org.jclouds.compute.domain.internal.TemplateBuilderImpl.findImageWithId(TemplateBuilderImpl.java:734)
at
org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:687)
........
at java.lang.Thread.run(Thread.java:745)
TID: [0] [STRATOS] [2014-09-19 15:50:28,532] ERROR
{org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver} - Unable to build
the jclouds object for iaas of type: openstack
{org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver}
org.apache.stratos.cloud.controller.exception.InvalidIaasProviderException:
Unable to build the jclouds object for iaas of type: openstack
at
org.apache.stratos.cloud.controller.util.CloudControllerUtil.setIaas(CloudControllerUtil.java:219)
at
org.apache.stratos.cloud.controller.util.CloudControllerUtil.getIaas(CloudControllerUtil.java:225)
......
at java.lang.Thread.run(Thread.java:745)
Caused by: java.util.NoSuchElementException:
imageId(ec4bb03e-d6df-4964-a490-ae0ef57536e7) not found
at
org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:749)
... 45 more
TID: [0] [STRATOS] [2014-09-19 15:50:28,676] ERROR
{org.apache.stratos.rest.endpoint.services.ServiceUtils} - Unable to build the
jclouds object for iaas of type: openstack
{org.apache.stratos.rest.endpoint.services.ServiceUtils}
org.apache.axis2.AxisFault: Unable to build the jclouds object for iaas of
type: openstack
at
org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:531)
at
org.apache.axis2.description.RobustOutOnlyAxisOperation$RobustOutOnlyOperationClient.handleResponse(RobustOutOnlyAxisOperation.java:91)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:445)
at
org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225)
....
at java.lang.Thread.run(Thread.java:745)
It's clearly evident that jClouds can't find image id
ec4bb03e-d6df-4964-a490-ae0ef57536e7, but if I type on the nova terminal:
root@os-client:~# nova image-list
+--------------------------------------+----------------------------------------------------------+--------+--------------------------------------+
| ID | Name
| Status | Server |
+--------------------------------------+----------------------------------------------------------+--------+--------------------------------------+
| 7a64fea1-ae52-48f0-a95e-207c784274ed | None
| SAVING | |
| 36378598-7f42-4fc5-806b-9a6df2791f20 |
Basic_Ubuntu_Server_12.04_LTS_OS_Disk_Image | ACTIVE |
|
| ec4bb03e-d6df-4964-a490-ae0ef57536e7 | CentOS-6.5-x86_64
| ACTIVE | |
| 02f8cd09-7c79-4b3a-923a-51cd16496a6f | CentOS64-x86_64
| ACTIVE | |
| b7a4d5e0-9346-44bb-97f0-08ba7cb64718 |
Image_for_CentOS_6_minimal_[CentOS_6.5_KVM] | ACTIVE |
|
So this means that image is present.
I tried with 3 imageID in the following format:
"RegionOne/ec4bb03e-d6df-4964-a490-ae0ef57536e7",
"/ec4bb03e-d6df-4964-a490-ae0ef57536e7" and only
"ec4bb03e-d6df-4964-a490-ae0ef57536e7". All of them fails.
I tried also with another imageId (one was my imageId, another public imageId).
All fails.
This is the conf that I used:
{
"type":"lb",
"provider":"lb",
"host":"stratos.org",
"displayName":"load balancer",
"description":"LB Cartridge",
"version":"4",
"defaultAutoscalingPolicy":"MyTestDeploymentPolicy",
"multiTenant":"false",
"portMapping":[
{
"protocol":"http",
"port":"8280",
"proxyPort":"8280"
},
{
"protocol":"https",
"port":"8243",
"proxyPort":"8243"
}
],
"iaasProvider":[
{
"type":"openstack",
"imageId":"ec4bb03e-d6df-4964-a490-ae0ef57536e7",
"maxInstanceLimit":"5",
"property":[
{
"name":"instanceType",
"value":"small"
},
{
"name":"keyPair",
"value":"ocpkeypair"
}
]
}
],
"property":[
{
"name":"load.balancer",
"value":"true"
}
]
}
I successfully configured first 4 steps. If I repeat the wizard I'm able to
choose old saved partition, old deployment policies and autoscaling policies.
The only thing that is not clear is the region. When I defined the partition I
had error if I specify RegionOne, so I removed the property from the definition
and it went ok. This is the json I used:
{
"id": "OCPSouth1", //modifica a piacimento
"provider": "openstack",
"property": [
{
"name": "zone",
"value": "nova"
}
]
}
Can you please help me to fix this issue?
I'm losing my mind...
Thank you very much...
Marco