# File lib/right_gogrid.rb, line 708
    def add_loadbalancer(name, virtual_ip, virtual_port, real_ips, description=nil, type=nil, persistence="None")
      # mandatory
      opts = { :name            => name,
               "virtualip.ip"   => virtual_ip,
               "virtualip.port" => virtual_port}
      # optional
      opts[:description] = description if description
      opts[:type]        = type        if type
      opts[:persistence] = persistence if persistence

      real_ip_tuples = real_ips # It's an array of 2 item hashes [{:ip=>"216.121.60.18",:port=>"8080"},{:ip=>"200.100.50.1",:port=>"80"} ]
      extra_opts = []
      if real_ip_tuples && real_ip_tuples.length > 0
        index=-1
        real_ip_tuples.each do |tuple|
          extra_opts << {"realiplist.#{index += 1}.ip" => tuple[:ip]}
          extra_opts << {"realiplist.#{index}.port"    => tuple[:port]}
        end
      end
      do_request("grid/loadbalancer/add", opts, extra_opts)
    rescue
      on_exception
    end