Add separate params for master and replica load balancers to operator configuration

This commit is contained in:
Sergey Dudoladov 2018-03-14 12:10:10 +01:00
parent ac6c5bcf09
commit 0986e56226
4 changed files with 29 additions and 27 deletions

View File

@ -13,7 +13,7 @@ spec:
- superuser
- createdb
enableMasterLoadBalancer: true
# enableReplicaLoadBalancer: true # uncomment to enable a LB for a replica k8s service
# enableReplicaLoadBalancer: true
allowedSourceRanges: # load balancers' source ranges for both master and replica services
- 127.0.0.1/32
databases:

View File

@ -36,7 +36,8 @@ data:
team_admin_role: "admin"
teams_api_url: http://fake-teams-api.default.svc.cluster.local
workers: "4"
enable_load_balancer: "true"
enable_master_load_balancer: "true"
# enable_replica_load_balancer: "true"
api_port: "8080"
ring_log_lines: "100"
cluster_history_entries: "1000"

View File

@ -679,7 +679,7 @@ func (c *Cluster) shouldCreateLoadBalancerForService(role PostgresRole, spec *sp
// create a load balancer for the master service if either Postgres or operator manifests tell to do so
// if ReplicaLoadBalancer is unset and LB for master service is created, also create a balancer for replicas
return (spec.EnableMasterLoadBalancer != nil && *spec.EnableMasterLoadBalancer) ||
(spec.EnableMasterLoadBalancer == nil && c.OpConfig.EnableLoadBalancer)
(spec.EnableMasterLoadBalancer == nil && c.OpConfig.EnableMasterLoadBalancer)
}

View File

@ -80,7 +80,8 @@ type Config struct {
EnableTeamsAPI bool `name:"enable_teams_api" default:"true"`
EnableTeamSuperuser bool `name:"enable_team_superuser" default:"false"`
TeamAdminRole string `name:"team_admin_role" default:"admin"`
EnableLoadBalancer bool `name:"enable_load_balancer" default:"true"`
EnableMasterLoadBalancer bool `name:"enable_master_load_balancer" default:"true"`
EnableReplicaLoadBalancer bool `name:"enable_replica_load_balancer" default:"false"`
MasterDNSNameFormat stringTemplate `name:"master_dns_name_format" default:"{cluster}.{team}.{hostedzone}"`
ReplicaDNSNameFormat stringTemplate `name:"replica_dns_name_format" default:"{cluster}-repl.{team}.{hostedzone}"`
PDBNameFormat stringTemplate `name:"pdb_name_format" default:"postgres-{cluster}-pdb"`