Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

AssignToLoadBalancerRuleCmd Flow
  • if there is a certificate id in the request execute() method of the command calls {{assignToLoadBalancer
    assignSslCertToLoadBalancer(lb_id, vmIds, certId) }}certId) in LoadBalancingRulesManagerImpl
  • assignSslCertToLoadBalancer checks if the loadbalancer is capable of SSL. If not error is returned.
  • verify if other certificate is bound to the loadbalancer and if it is, return error
  • It then verifies if the certificate is valid ( not revoked ) and creates an entry in the load_balancer_cert_map table
  • the loadbalncer state is set to Add
  • call the applyLoadBalancerConfig which calls applyLoadBalancerRules with the lbId
  • getLoadBalancerRuleToApply function should also add getSslCertificates(lbId) which gets called from applyLoadBalancerConfig
  • Now the rule has SSL certificate info as well.
  • When the rules get applied by calling applyLBRules of the NetscalerElement, the SSL info is passed inside the rule.
  • NetscalerElement creates a LoadBalancerTO which transfers the params to the resouce layer.
  • The LoadBalancerTO should contain SslCertTO for holding certificate information.
  • The SSL offload will be defined as a Capability in LbSchemes as SSL
  • NetscalerElement when checking for canHandleLbRules will check for SSL rule and respond accordingly
  • LoadBalancerTO will have a new parameter for passing certificate information.
    Code Block
    titleLbSslCert.java
    borderStylesolid
    // Transfer object for SSL certificates
    public class LbSslCert()
    {
        String cert;
        String key;
        String password;
    }
    

...