Hi,

I've created a JIRA to track this task [1]. It seems a fix has been done in
[2] to resolve this. But I'm not sure why we have to iterate through all
the properties in [3]. Why not just do;

partition.getProperties().getProperty(KUBERNETES_CLUSTER)

[1] https://issues.apache.org/jira/browse/STRATOS-1610
[2]
https://github.com/apache/stratos/commit/b9ff2b10fa743c2eebca8468c99a9ef7ac528f42
[3]
https://github.com/apache/stratos/blob/b9ff2b10fa743c2eebca8468c99a9ef7ac528f42/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java#L1383

Thanks.


On Tue, Nov 10, 2015 at 3:59 AM, Imesh Gunaratne <im...@apache.org> wrote:

> Yes, it looks like the Kubernetes cluster has been removed before the
> above instance get terminated. Currently there is no validation to avoid
> this situation. We may need to fix this.
>
> Thanks
>
> On Mon, Nov 9, 2015 at 9:10 AM, Akila Ravihansa Perera <raviha...@wso2.com
> > wrote:
>
>> Hi Pubudu,
>>
>> Yes, I used the undeploy script. But it shouldn't cause this error right?
>> Stratos should handle if the artifacts are in use. Even Stratos console UI
>> calls the API just like curl command.
>>
>> Thanks.
>>
>>
>> On Monday, 9 November 2015, Pubudu Gunatilaka <pubu...@wso2.com> wrote:
>>
>>> Hi Akila,
>>>
>>> Were you using the undeploy.sh script for undeploying?  I came across
>>> this error while using undeploy.sh script to undeploy application server
>>> application. But this error is not there if we undeploy from the UI. I
>>> think this is because script just executes the curl commands to remove all
>>> the artifacts and it can cause these issues.
>>>
>>> Thank you!
>>>
>>> On Sun, Nov 8, 2015 at 9:26 PM, Akila Ravihansa Perera <
>>> raviha...@wso2.com> wrote:
>>>
>>>> Hi Gayan,
>>>>
>>>> Yes, the application that I tried has a cartridge group.
>>>>
>>>> Thanks.
>>>>
>>>> On Sun, Nov 8, 2015 at 8:46 PM, Gayan Gunarathne <gay...@wso2.com>
>>>> wrote:
>>>>
>>>>> Hi Akila,
>>>>>
>>>>> Seems we are getting null for KubernetesClusterContext. Seems
>>>>> kubClusterIdToKubClusterContextMap map don't contain proper values for the
>>>>> given kubernetes ClusterId.
>>>>> Is that happen when the application has a cartridge group?
>>>>>
>>>>> Thanks,
>>>>> Gayan
>>>>>
>>>>>
>>>>> On Sun, Nov 8, 2015 at 2:32 AM, Akila Ravihansa Perera <
>>>>> raviha...@wso2.com> wrote:
>>>>>
>>>>>> Hi devs,
>>>>>>
>>>>>> I'm seeing the following error when undeploying an app on Kubernetes.
>>>>>> Stratos is unable to delete the Kubernetes pod. Any thoughts?
>>>>>>
>>>>>> [2015-11-08 02:29:18,424]  INFO
>>>>>> {org.apache.stratos.autoscaler.client.AutoscalerCloudControllerClient} -
>>>>>>  Terminating instance via cloud controller: [member]
>>>>>> wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563
>>>>>> [2015-11-08 02:29:18,431] ERROR
>>>>>> {org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas} -
>>>>>>  Could not terminate container, kubernetes cluster context not found:
>>>>>> [partition-id] partition-1 [member-id]
>>>>>> wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563
>>>>>> [2015-11-08 02:29:18,431] ERROR
>>>>>> {org.apache.stratos.cloud.controller.services.impl.InstanceTerminator} -
>>>>>>  Instance termination failed! MemberContext
>>>>>> [applicationId=wso2as-530-application, cartridgeType=wso2as-530-manager,
>>>>>> clusterId=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain,
>>>>>> memberId=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563,
>>>>>> instanceId=pod-1, partition=Partition [id=partition-1, description=null,
>>>>>> isPublic=false, provider=kubernetes, properties=Properties
>>>>>> [properties=[Property [name=cluster, value=kubernetes-cluster-1]]]],
>>>>>> defaultPrivateIP=10.244.44.12, defaultPublicIP=172.17.8.102,
>>>>>> allocatedIPs=null, publicIPs=[172.17.8.102], privateIPs=[10.244.44.12],
>>>>>> initTime=1446929374561, lbClusterId=null,
>>>>>> networkPartitionId=network-partition-kubernetes, kubernetesPodId=pod-1,
>>>>>> kubernetesPodName=317e8be610a28c74fdf019800429597c,
>>>>>> loadBalancingIPType=Public,
>>>>>> instanceMetadata=org.apache.stratos.cloud.controller.domain.InstanceMetadata@2efac273,
>>>>>> properties=Properties [properties=[Property [name=MIN_COUNT, value=1],
>>>>>> Property [name=SCALING_DECISION_ID,
>>>>>> value=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain-30f0a2e0-993b-4ebc-9307-ce3cb0be1102]]]]
>>>>>> java.lang.IllegalArgumentException: Could not terminate container,
>>>>>> kubernetes cluster context not found: [partition-id] partition-1
>>>>>> [member-id]
>>>>>> wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.handleNullObject(KubernetesIaas.java:929)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.terminateContainer(KubernetesIaas.java:861)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.terminateInstance(KubernetesIaas.java:139)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceTerminator.run(InstanceTerminator.java:56)
>>>>>> 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)
>>>>>> Exception in thread "pool-32-thread-73"
>>>>>> org.apache.stratos.cloud.controller.exception.CloudControllerException:
>>>>>> Instance termination failed! MemberContext
>>>>>> [applicationId=wso2as-530-application, cartridgeType=wso2as-530-manager,
>>>>>> clusterId=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain,
>>>>>> memberId=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563,
>>>>>> instanceId=pod-1, partition=Partition [id=partition-1, description=null,
>>>>>> isPublic=false, provider=kubernetes, properties=Properties
>>>>>> [properties=[Property [name=cluster, value=kubernetes-cluster-1]]]],
>>>>>> defaultPrivateIP=10.244.44.12, defaultPublicIP=172.17.8.102,
>>>>>> allocatedIPs=null, publicIPs=[172.17.8.102], privateIPs=[10.244.44.12],
>>>>>> initTime=1446929374561, lbClusterId=null,
>>>>>> networkPartitionId=network-partition-kubernetes, kubernetesPodId=pod-1,
>>>>>> kubernetesPodName=317e8be610a28c74fdf019800429597c,
>>>>>> loadBalancingIPType=Public,
>>>>>> instanceMetadata=org.apache.stratos.cloud.controller.domain.InstanceMetadata@2efac273,
>>>>>> properties=Properties [properties=[Property [name=MIN_COUNT, value=1],
>>>>>> Property [name=SCALING_DECISION_ID,
>>>>>> value=wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain-30f0a2e0-993b-4ebc-9307-ce3cb0be1102]]]]
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceTerminator.run(InstanceTerminator.java:63)
>>>>>> 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: java.lang.IllegalArgumentException: Could not terminate
>>>>>> container, kubernetes cluster context not found: [partition-id] 
>>>>>> partition-1
>>>>>> [member-id]
>>>>>> wso2as-530-application.wso2as-530-manager.wso2as-530-manager.domain64e12d35-4fb5-4958-9e61-5a1c9becf563
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.handleNullObject(KubernetesIaas.java:929)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.terminateContainer(KubernetesIaas.java:861)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.iaases.kubernetes.KubernetesIaas.terminateInstance(KubernetesIaas.java:139)
>>>>>> at
>>>>>> org.apache.stratos.cloud.controller.services.impl.InstanceTerminator.run(InstanceTerminator.java:56)
>>>>>> ... 3 more
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Akila Ravihansa Perera
>>>>>> WSO2 Inc.;  http://wso2.com/
>>>>>>
>>>>>> Blog: http://ravihansa3000.blogspot.com
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> Gayan Gunarathne
>>>>> Technical Lead, WSO2 Inc. (http://wso2.com)
>>>>> Committer & PMC Member, Apache Stratos
>>>>> email : gay...@wso2.com  | mobile : +94 775030545 <%2B94%20766819985>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Akila Ravihansa Perera
>>>> WSO2 Inc.;  http://wso2.com/
>>>>
>>>> Blog: http://ravihansa3000.blogspot.com
>>>>
>>>
>>>
>>>
>>> --
>>> *Pubudu Gunatilaka*
>>> Committer and PMC Member - Apache Stratos
>>> Software Engineer
>>> WSO2, Inc.: http://wso2.com
>>> mobile : +94774079049 <%2B94772207163>
>>>
>>>
>>
>> --
>> Akila Ravihansa Perera
>> WSO2 Inc.;  http://wso2.com/
>>
>> Blog: http://ravihansa3000.blogspot.com
>>
>>
>
>
> --
> Imesh Gunaratne
>
> Senior Technical Lead, WSO2
> Committer & PMC Member, Apache Stratos
>



-- 
Akila Ravihansa Perera
WSO2 Inc.;  http://wso2.com/

Blog: http://ravihansa3000.blogspot.com

Reply via email to