49
45
# Create the configuration file for the AppLoadBalancer Rails application
50
46
def self.create_app_load_balancer_config(my_ip, listen_port)
47
self.create_app_config(my_ip, listen_port, LoadBalancer.server_ports, LoadBalancer.name)
50
# Create the configuration file for the AppMonitoring Rails application
51
def self.create_app_monitoring_config(my_ip, listen_port)
52
self.create_app_config(my_ip, listen_port, Monitoring.server_ports, Monitoring.name)
55
# A generic function for creating haproxy config files used by appscale services
56
def self.create_app_config(my_ip, listen_port, server_ports, name)
53
APP_LOAD_BALANCER_PORTS.each_with_index do |port, index|
54
servers << HAProxy.server_config("as_alb", index, my_ip, port)
58
server_ports.each_with_index do |port, index|
59
servers << HAProxy.server_config(name, index, my_ip, port)
57
alb_config = "# Create a load balancer for the AppLoadBalancer Rails application \n"
58
alb_config << "listen as_alb #{my_ip}:#{listen_port} \n"
59
alb_config << servers.join("\n")
62
config = "# Create a load balancer for the #{name} application \n"
63
config << "listen #{name} #{my_ip}:#{listen_port} \n"
64
config << servers.join("\n")
61
alb_config_path = File.join(SITES_ENABLED_PATH, "as_alb.#{CONFIG_EXTENSION}")
62
File.open(alb_config_path, "w") { |dest_file| dest_file.write(alb_config) }
66
config_path = File.join(SITES_ENABLED_PATH, "#{name}.#{CONFIG_EXTENSION}")
67
File.open(config_path, "w") { |dest_file| dest_file.write(config) }
64
69
HAProxy.regenerate_config