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

Reply via email to