[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-6448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13973905#comment-13973905
 ] 

Anton Opgenoort commented on CLOUDSTACK-6448:
---------------------------------------------

The use case why we need to destroy the VPC router: we need to move the 
routerVM away from the cluster it is running on, since the cluster will be 
decomissioned. routerVM's can't be migrated, thus need to be destroyed to have 
them created on a new cluster. 

This issue prevents a smooth travelling of VPC routers from old to new 
clusters. 

> VPC router won't be created when a gateway is defined. 
> -------------------------------------------------------
>
>                 Key: CLOUDSTACK-6448
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-6448
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: Network Devices, Virtual Router
>    Affects Versions: 4.3.0, 4.4.0, 4.3.1
>            Reporter: Anton Opgenoort
>
> Reproduce by creating a VPC, adding a gateway, and destroy the associated 
> virtual router. Then try to start a VM in one of the VPC network tiers; this 
> results in message below, and routerVM is not started for VPC network. 
> Then remove the private gateway, and start a VM again. Now the routerVM is 
> started normally, and the VM is being provisioned. 
> 2014-04-18 10:35:04,895 DEBUG [c.c.v.VirtualMachineManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) VM is being created in podId: 1
> 2014-04-18 10:35:04,907 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Network id=1143 is already 
> implemented
> 2014-04-18 10:35:04,943 DEBUG [c.c.n.NetworkModelImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Service SecurityGroup is not 
> supported in the network id=1143
> 2014-04-18 10:35:04,958 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Changing active number of nics 
> for network id=1143 on 1
> 2014-04-18 10:35:04,973 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Asking VpcVirtualRouter to 
> prepare for Nic[98879-15684-e51a9969-e1f1-4c45-ad65-761e51435b90-10.1.1.98]
> 2014-04-18 10:35:04,979 DEBUG [c.c.n.r.VpcVirtualNetworkApplianceManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Deploying Virtual Router in VPC 
> [VPC [313-mccoat1]
> 2014-04-18 10:35:05,006 DEBUG [c.c.n.r.VirtualNetworkApplianceManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Adding nic for Virtual Router in 
> Control network 
> 2014-04-18 10:35:05,014 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Found existing network 
> configuration for offering [Network Offering 
> [5-Control-System-Control-Network]: Ntwk[202|Control|5]
> 2014-04-18 10:35:05,014 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Releasing lock for 
> Acct[5083d876-e429-4aa4-bb9a-1958ad753f18-system]
> 2014-04-18 10:35:05,016 DEBUG [c.c.n.r.VirtualNetworkApplianceManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Adding nic for Virtual Router in 
> Public network 
> 2014-04-18 10:35:05,026 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Found existing network 
> configuration for offering [Network Offering 
> [1-Public-System-Public-Network]: Ntwk[200|Public|1]
> 2014-04-18 10:35:05,026 DEBUG [o.a.c.e.o.NetworkOrchestrator] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Releasing lock for 
> Acct[5083d876-e429-4aa4-bb9a-1958ad753f18-system]
> 2014-04-18 10:35:05,055 ERROR [c.c.v.VirtualMachineManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Failed to start instance 
> VM[User|antontest-cloud-1600]
> java.lang.NullPointerException
>         at 
> com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.createPrivateNicProfileForGateway(VpcVirtualNetworkApplianceManagerImpl.java:1290)
>         at 
> com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.createVpcRouterNetworks(VpcVirtualNetworkApplianceManagerImpl.java:1231)
>         at 
> com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.deployVpcRouter(VpcVirtualNetworkApplianceManagerImpl.java:344)
>         at 
> com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.findOrDeployVirtualRouterInVpc(VpcVirtualNetworkApplianceManagerImpl.java:234)
>         at 
> com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl.deployVirtualRouterInVpc(VpcVirtualNetworkApplianceManagerImpl.java:183)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:616)
>         at 
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>         at 
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>         at 
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy240.deployVirtualRouterInVpc(Unknown Source)
>         at 
> com.cloud.network.element.VpcVirtualRouterElement.prepare(VpcVirtualRouterElement.java:223)
>         at 
> org.apache.cloudstack.engine.orchestration.NetworkOrchestrator.prepareElement(NetworkOrchestrator.java:1175)
>         at 
> org.apache.cloudstack.engine.orchestration.NetworkOrchestrator.prepareNic(NetworkOrchestrator.java:1309)
>         at 
> org.apache.cloudstack.engine.orchestration.NetworkOrchestrator.prepare(NetworkOrchestrator.java:1245)
>         at 
> com.cloud.vm.VirtualMachineManagerImpl.orchestrateStart(VirtualMachineManagerImpl.java:960)
>         at 
> com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachineManagerImpl.java:761)
>         at 
> com.cloud.vm.VirtualMachineManagerImpl.start(VirtualMachineManagerImpl.java:601)
>         at 
> org.apache.cloudstack.engine.cloud.entity.api.VMEntityManagerImpl.deployVirtualMachine(VMEntityManagerImpl.java:228)
>         at 
> org.apache.cloudstack.engine.cloud.entity.api.VirtualMachineEntityImpl.deploy(VirtualMachineEntityImpl.java:207)
>         at 
> com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3581)
>         at 
> com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3161)
>         at 
> com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3147)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:616)
>         at 
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>         at 
> com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:50)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
>         at 
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>         at 
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy169.startVirtualMachine(Unknown Source)
>         at 
> org.apache.cloudstack.api.command.user.vm.DeployVMCmd.execute(DeployVMCmd.java:443)
>         at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:161)
>         at 
> com.cloud.api.ApiAsyncJobDispatcher.runJobInContext(ApiAsyncJobDispatcher.java:109)
>         at 
> com.cloud.api.ApiAsyncJobDispatcher$1.run(ApiAsyncJobDispatcher.java:66)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
>         at 
> com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:63)
>         at 
> org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:509)
>         at 
> org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
>         at 
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
>         at 
> org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
>         at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:679)
> 2014-04-18 10:35:05,062 DEBUG [c.c.v.VirtualMachineManagerImpl] 
> (Job-Executor-74:ctx-37d3b587 ctx-641440ee) Cleaning up resources for the vm 
> VM[User|antontest-cloud-1600] in Starting state



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to