Uploaded image for project: 'CloudStack'
  1. CloudStack
  2. CLOUDSTACK-8488

network with LB rules fails to restart

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 4.6.0
    • 4.6.0
    • Virtual Router
    • Security Level: Public (Anyone can view this level - this is the default.)
    • None

    Description

      Restarting network fails as the LB rules formatting is not good:

      Snippet from the VR config son that is degenerated for LB:

      </script>
      <file>
      /var/cache/cloud/load_balancer.json
      {"rules":[

      {"configuration":["global","\tlog 127.0.0.1:3914 local0 warning","\tmaxconn 4096","\tmaxpipes 1024","\tchroot /var/lib/haproxy","\tuser haproxy","\tgroup haproxy","\tdaemon","\t ","defaults","\tlog global","\tmode tcp","\toption dontlognull","\tretries 3","\toption redispatch","\toption forwardfor","\toption forceclose","\ttimeout connect 5000","\ttimeout client 50000","\ttimeout server 50000","\nlisten stats_on_public 192.168.100.67:8081\n\tmode http\n\toption httpclose\n\tstats enable\n\tstats uri /admin?stats\n\tstats realm Haproxy\\ Statistics\n\tstats auth admin1:AdMiN123\n","\t ","listen 192_168_100_67-80 192.168.100.67:80","\tbalance roundrobin","\tserver 192_168_100_67-80_0 10.1.1.121:80 check","\tserver 192_168_100_67-80_1 10.1.1.211:80 check","\tmode http","\toption httpclose","\t ","\t "],"tmp_cfg_file_path":"/etc/haproxy/","tmp_cfg_file_name":"haproxy.cfg.new.1432103998137","add_rules":["192.168.100.67:80:"],"remove_rules":[],"stat_rules":["192.168.100.67:8081:0/0:,"],"router_ip":"169.254.3.40"}

      ],"type":"loadbalancer"}
      </file>

      Due to formatting issues, there is an error when tis config is applied on VR:

      2015-05-20 12:10:05,222 ERROR [c.c.u.s.SshHelper] (DirectAgent-86:ctx-94e1e0a8) SSH execution of command /opt/cloud/bin/router_proxy.sh vr_cfg.sh 169.254.3.40 -c /var/cache/cloud/VR-41f28904-b10b-4074-aa42-f4d4105ec49b.cfg has an error status code in return. result output: VR config: execution failed: "/opt/cloud/bin/update_config.py load_balancer.json", check /var/log/cloud.log in VR for details

      On VR the rules are copied to /var/cache/cloud/load_balancer.json with content:

      {"rules":[

      {"configuration":["global","tlog 127.0.0.1:3914 local0 warning","tmaxconn 4096","tmaxpipes 1024","tchroot /var/lib/haproxy","tuser haproxy","tgroup haproxy","tdaemon","t ","defaults","tlog global","tmode tcp","toption dontlognull","tretries 3","toption redispatch","toption forwardfor","toption forceclose","ttimeout connect 5000","ttimeout client 50000","ttimeout server 50000","nlisten stats_on_public 192.168.100.67:8081ntmode httpntoption httpclosentstats enablentstats uri /admin?statsntstats realm Haproxy\ Statisticsntstats auth admin1:AdMiN123n","t ","listen 192_168_100_67-80 192.168.100.67:80","tbalance roundrobin","tserver 192_168_100_67-80_0 10.1.1.121:80 check","tserver 192_168_100_67-80_1 10.1.1.211:80 check","tmode http","toption httpclose","t ","t "],"tmp_cfg_file_path":"/etc/haproxy/","tmp_cfg_file_name":"haproxy.cfg.new.1432103998137","add_rules":["192.168.100.67:80:"],"remove_rules":[],"stat_rules":["192.168.100.67:8081:0/0:,"],"router_ip":"169.254.3.40"}

      ],"type":"loadbalancer"}

      The following text is badly formatted:

      "nlisten stats_on_public 192.168.100.67:8081ntmode httpntoption httpclosentstats enablentstats uri /admin?statsntstats realm Haproxy\ Statisticsntstats auth admin1:AdMiN123n","t ",

      Looks like the \n and \t have messed up the format.

      Attachments

        Activity

          People

            aprateek Abhinandan Prateek
            aprateek Abhinandan Prateek
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: