AFAIU the reason for Stratos not picking the correct availability zone from
the NW partition is because we have the property name as *availabilityZone *in
the cloud-controller.xml and *zone *in the cartridge definition. So, it
will not be overridden.

On Wed, Nov 18, 2015 at 5:55 AM, Isuru Haththotuwa <isu...@apache.org>
wrote:

> Hi Akila,
>
> Can you attach the complete log here? If you enable DEBUG logs for [1], we
> can get more information on what is the exact zone selected by Stratos
> prior to starting the instance.
>
> [1]. org.apache.stratos.cloud.controller.util.CloudControllerUtil
>
> On Wed, Nov 18, 2015 at 12:46 AM, Akila Ravihansa Perera <
> raviha...@wso2.com> wrote:
>
>> Hi,
>>
>> I'm still seeing the $subject in latest pack. I've the following
>> configuration in cloud-controller.xml
>>
>>         <iaasProvider type="ec2" name="Amazon EC2">
>>
>> <className>org.apache.stratos.cloud.controller.iaases.ec2.EC2Iaas</className>
>>             <provider>aws-ec2</provider>
>>             <identity
>> svns:secretAlias="cloud.controller.ec2.identity">XXX</identity>
>>             <credential
>> svns:secretAlias="cloud.controller.ec2.credential">XXX</credential>
>>             <property name="jclouds.ec2.ami-query"
>> value="owner-id=742434826329;state=available;image-type=machine"/>
>>             <property name="availabilityZone" value="us-east-1d"/>
>>             <property name="securityGroups" value="test1"/>
>>             <property name="autoAssignIp" value="true" />
>>             <property name="keyPair" value="ravihansa-ec2"/>
>>         </iaasProvider>
>>
>>
>> My cartridge definition IaaS section as follows;
>>
>> "iaasProvider": [
>> {
>> "type": "ec2",
>> "imageId": "ap-southeast-1/ami-9232f5f1",
>> "property": [
>> {
>> "name": "instanceType",
>> "value": "t2.micro"
>> },
>> {
>> "name": "keyPair",
>> "value": "ravihansa-ec2"
>> },
>> {
>> "name": "securityGroups",
>> "value": "test1"
>> }
>> ],
>>
>>
>> Network partition as follows;
>>
>>     "partitions": [
>>         {
>>             "id": "partition-1",
>>             "property": [
>>                 {
>>                     "name": "region",
>>                     "value": "ap-southeast-1"
>>                 },
>>                 {
>>                     "name": "zone",
>>                     "value": "ap-southeast-1a"
>>                 }
>>
>>             ]
>>
>> Stratos prints the following log when deploying the app;
>>
>> [2015-11-18 00:39:57,652]  INFO
>> {org.apache.stratos.cloud.controller.iaases.ec2.EC2Iaas} -  ZONE has been
>> set as us-east-1d with id: us-east-1d
>>
>>
>> But the network partition is set to ap-southeast-1a availability zone. It
>> is not picking up correct values.
>>
>>
>> Also I'm getting the following error when deploying an app on ec2;
>>
>>
>> [2015-11-18 00:40:00,316] ERROR
>> {org.apache.stratos.cloud.controller.iaases.JcloudsIaas} -  Failed to start
>> an instance. MemberContext [applicationId=single-cartridge-app-ec2,
>> cartridgeType=php-ec2,
>> clusterId=single-cartridge-app-ec2.my-php-app-ec2.php-ec2.domain,
>> memberId=single-cartridge-app-ec2.my-php-app-ec2.php-ec2.domaincd6f406a-9278-466e-9ab9-7198ca948a5a,
>> instanceId=null, partition=Partition [id=partition-1, description=null,
>> isPublic=false, provider=ec2, properties=Properties [properties=[Property
>> [name=region, value=ap-southeast-1], Property [name=zone,
>> value=ap-southeast-1a]]]], defaultPrivateIP=null, defaultPublicIP=null,
>> allocatedIPs=null, publicIPs=null, privateIPs=null, initTime=1447787397961,
>> lbClusterId=null, networkPartitionId=network-partition-ec2,
>> kubernetesPodId=null, kubernetesPodName=null, loadBalancingIPType=Private,
>> instanceMetadata=null, properties=Properties [properties=[Property
>> [name=MIN_COUNT, value=1], Property [name=SCALING_DECISION_ID,
>> value=single-cartridge-app-ec2.my-php-app-ec2.php-ec2.domain-373113aa-7fa9-4bfa-8bd3-93f845488d1a],
>> Property [name=EC2_REGION, value=ap-southeast-1], Property
>> [name=EC2_AVAILABILITY_ZONE, value=ap-southeast-1a]]]] Cause: The image id
>> '[ami-9232f5f1]' does not exist
>> org.jclouds.rest.ResourceNotFoundException: The image id '[ami-9232f5f1]'
>> does not exist
>> at
>> org.jclouds.aws.handlers.ParseAWSErrorFromXmlContent.refineException(ParseAWSErrorFromXmlContent.java:108)
>> at
>> org.jclouds.aws.handlers.ParseAWSErrorFromXmlContent.handleError(ParseAWSErrorFromXmlContent.java:89)
>> at
>> org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:65)
>> at
>> org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:136)
>> at
>> org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:105)
>> at
>> org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
>> at
>> org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
>> at
>> org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
>> at
>> org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
>> at
>> com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
>> at com.sun.proxy.$Proxy120.runInstancesInRegion(Unknown Source)
>> at
>> org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.createNodesInRegionAndZone(EC2CreateNodesInGroupThenAddToSet.java:240)
>> at
>> org.jclouds.aws.ec2.compute.strategy.AWSEC2CreateNodesInGroupThenAddToSet.createNodesInRegionAndZone(AWSEC2CreateNodesInGroupThenAddToSet.java:104)
>> at
>> org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.createKeyPairAndSecurityGroupsAsNeededThenRunInstances(EC2CreateNodesInGroupThenAddToSet.java:215)
>> at
>> org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.runInstancesAndWarnOnInvisible(EC2CreateNodesInGroupThenAddToSet.java:151)
>> at
>> org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.execute(EC2CreateNodesInGroupThenAddToSet.java:132)
>> at
>> org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:210)
>> at
>> org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
>> at
>> org.apache.stratos.cloud.controller.iaases.JcloudsIaas.startInstance(JcloudsIaas.java:137)
>> at
>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.startInstance(InstanceCreator.java:99)
>> at
>> org.apache.stratos.cloud.controller.services.impl.InstanceCreator.run(InstanceCreator.java:67)
>> at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>> at java.lang.Thread.run(Thread.java:745)
>> Caused by: org.jclouds.aws.AWSResponseException: request POST
>> https://ec2.us-east-1.amazonaws.com/ HTTP/1.1 failed with code 400,
>> error: AWSError{requestId='0b183790-561b-4089-8414-87ff8251f8cb',
>> requestToken='null', code='InvalidAMIID.NotFound', message='The image id
>> '[ami-9232f5f1]' does not exist', context='{Response=, Errors=}'}
>> at
>> org.jclouds.aws.handlers.ParseAWSErrorFromXmlContent.handleError(ParseAWSErrorFromXmlContent.java:75)
>> ... 22 more
>> [2015-11-18 00:40:00,318] ERROR
>> {org.apache.stratos.cloud.controller.services.impl.InstanceCreator} -
>>  Could not start instance: [cartridge-type] php-ec2 [cluster-id]
>> single-cartridge-app-ec2.my-php-app-ec2.php-ec2.domain
>>
>>
>> It says image id does not exist. But I've verified that it does actually
>> exist. Any thoughts?
>>
>> Thanks.
>>
>> --
>> Akila Ravihansa Perera
>> WSO2 Inc.;  http://wso2.com/
>>
>> Blog:
>> http://ravihansa3000.blogspot.com
>>
>> --
>> <http://ravihansa3000.blogspot.com>
>> <http://ravihansa3000.blogspot.com>
>> Thanks and Regards,
>>
>> Isuru H.
>> <http://ravihansa3000.blogspot.com>
>> +94 716 358 048 <http://ravihansa3000.blogspot.com>* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
Thanks and Regards,

Isuru H.
+94 716 358 048* <http://wso2.com/>*

Reply via email to