venkata swamybabu budumuru created CLOUDSTACK-2462: ------------------------------------------------------
Summary: [GSLB] Failed to create GSLB rule with "proximity" algorithm Key: CLOUDSTACK-2462 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2462 Project: CloudStack Issue Type: Bug Security Level: Public (Anyone can view this level - this is the default.) Components: Network Controller Affects Versions: 4.2.0 Environment: commit # 09af15035b9febe6f55e73a1389f950ab042564f Reporter: venkata swamybabu budumuru Assignee: Murali Reddy Fix For: 4.2.0 Steps to reproduce : 1. Have CloudStack setup with at least 1 adv zone 2. Try to create a GSLB rule by setting "gslblbmethod" to "proximity" Observations : (i) It fails with the following error in the mgmt server logs 2013-05-13 16:20:35,421 DEBUG [cloud.user.AccountManagerImpl] (Job-Executor-22:job-327) Access to Rule[7-LoadBalancing-Active] granted to Acct[5-dom1Acc3] by DomainChecker_EnhancerByCloudStack_31a4ebb4 2013-05-13 16:20:35,467 DEBUG [agent.transport.Request] (Job-Executor-22:job-327) Seq 26-754647047: Sending { Cmd , MgmtId: 7280707764394, via: 26, Ver: v1, Flags: 100011, [{"routing.GlobalLoadBalancerConfigCommand":{"domainName":"proximity.cloud.xyztelcom.com","serviceType":"tcp","lbMethod":"proximity","persistenceType":"sourceip","gslbId":26,"revoked":false,"siteLoadBalancers":[{"local":true,"revoked":false,"serviceType":"tcp","servicePublicIp":"10.147.44.61","servicePort":"22","gslbProviderPrivateIp":"10.147.44.20","dataCenterId":1}],"wait":0}}] } 2013-05-13 16:20:35,467 DEBUG [agent.transport.Request] (Job-Executor-22:job-327) Seq 26-754647047: Executing: { Cmd , MgmtId: 7280707764394, via: 26, Ver: v1, Flags: 100011, [{"routing.GlobalLoadBalancerConfigCommand":{"domainName":"proximity.cloud.xyztelcom.com","serviceType":"tcp","lbMethod":"proximity","persistenceType":"sourceip","gslbId":26,"revoked":false,"siteLoadBalancers":[{"local":true,"revoked":false,"serviceType":"tcp","servicePublicIp":"10.147.44.61","servicePort":"22","gslbProviderPrivateIp":"10.147.44.20","dataCenterId":1}],"wait":0}}] } 2013-05-13 16:20:35,468 DEBUG [agent.manager.DirectAgentAttache] (DirectAgent-492:null) Seq 26-754647047: Executing request 2013-05-13 16:20:35,540 DEBUG [network.resource.NetscalerResource] (DirectAgent-492:null) Failed to add GSLB virtual server: cloud-gslb-vserver-proximity.cloud.xyztelcom.com due to Invalid argument value [proximity] 2013-05-13 16:20:35,582 WARN [network.resource.NetscalerResource] (DirectAgent-492:null) Retrying GlobalLoadBalancerConfigCommand. Number of retries remaining: 1 2013-05-13 16:20:35,651 DEBUG [network.resource.NetscalerResource] (DirectAgent-492:null) Failed to add GSLB virtual server: cloud-gslb-vserver-proximity.cloud.xyztelcom.com due to Invalid argument value [proximity] 2013-05-13 16:20:35,704 WARN [network.resource.NetscalerResource] (DirectAgent-492:null) Retrying GlobalLoadBalancerConfigCommand. Number of retries remaining: 0 2013-05-13 16:20:35,772 DEBUG [network.resource.NetscalerResource] (DirectAgent-492:null) Failed to add GSLB virtual server: cloud-gslb-vserver-proximity.cloud.xyztelcom.com due to Invalid argument value [proximity] 2013-05-13 16:20:35,773 DEBUG [agent.manager.DirectAgentAttache] (DirectAgent-492:null) Seq 26-754647047: Response Received: 2013-05-13 16:20:35,773 DEBUG [agent.transport.Request] (DirectAgent-492:null) Seq 26-754647047: Processing: { Ans: , MgmtId: 7280707764394, via: 26, Ver: v1, Flags: 10, [{"routing.GlobalLoadBalancerConfigAnswer":{"result":false,"details":"Failed to apply GSLB configuration due to Failed to add GSLB virtual server: cloud-gslb-vserver-proximity.cloud.xyztelcom.com due to Invalid argument value [proximity]","wait":0}}] } 2013-05-13 16:20:35,773 DEBUG [agent.transport.Request] (Job-Executor-22:job-327) Seq 26-754647047: Received: { Ans: , MgmtId: 7280707764394, via: 26, Ver: v1, Flags: 10, { GlobalLoadBalancerConfigAnswer } } 2013-05-13 16:20:35,773 DEBUG [agent.manager.AgentManagerImpl] (Job-Executor-22:job-327) Details from executing class com.cloud.agent.api.routing.GlobalLoadBalancerConfigCommand: Failed to apply GSLB configuration due to Failed to add GSLB virtual server: cloud-gslb-vserver-proximity.cloud.xyztelcom.com due to Invalid argument value [proximity] 2013-05-13 16:20:35,774 DEBUG [network.element.NetscalerElement] (Job-Executor-22:job-327) Unable to apply global load balancer rule to the gslb service provider in zone 1 2013-05-13 16:20:35,774 WARN [region.gslb.GlobalLoadBalancingRulesServiceImpl] (Job-Executor-22:job-327) Failed to configure GSLB rul in the zone 1 due to Resource [DataCenter:1] is unreachable: Unable to apply global load balancer rule to the gslb service provider in zone 1 2013-05-13 16:20:35,774 ERROR [cloud.async.AsyncJobManagerImpl] (Job-Executor-22:job-327) Unexpected exception while executing org.apache.cloudstack.api.command.user.region.ha.gslb.AssignToGlobalLoadBalancerRuleCmd com.cloud.utils.exception.CloudRuntimeException: Failed to configure GSLB rul in the zone at org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl.applyGlobalLoadBalancerRuleConfig(GlobalLoadBalancingRulesServiceImpl.java:595) at org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl.assignToGlobalLoadBalancerRule(GlobalLoadBalancingRulesServiceImpl.java:254) at org.apache.cloudstack.api.command.user.region.ha.gslb.AssignToGlobalLoadBalancerRuleCmd.execute(AssignToGlobalLoadBalancerRuleCmd.java:106) at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:155) at com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:437) 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:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) 2013-05-13 16:20:35,775 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-22:job-327) Complete async job-327, jobStatus: 2, resultCode: 530, result: Error Code: 530 Error text: Failed to configure GSLB rul in the zone (ii) When I manually checked on the "Netscaler", found that only the following values are valid for lbmethod during the GSLB rule creation. > set gslb vserver cloud-gslb-vserver-test -lbMethod CUSTOMLOAD LEASTBANDWIDTH LEASTCONNECTION LEASTPACKETS LEASTRESPONSETIME ROUNDROBIN RTT SOURCEIPHASH STATICPROXIMITY Attaching all the required logs along with db dump. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira