Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Configuration ¶
type Configuration struct {
ListenAddress string
MySQLTopologyUser string
MySQLTopologyPassword string
MySQLOrchestratorHost string
MySQLOrchestratorPort uint
MySQLOrchestratorDatabase string
MySQLOrchestratorUser string
MySQLOrchestratorPassword string
MySQLConnectTimeoutSeconds int // Number of seconds before connection is aborted (driver-side)
SlaveLagQuery string // custom query to check on slave lg (e.g. heartbeat table)
SlaveStartPostWaitMilliseconds int // Time to wait after START SLAVE before re-readong instance (give slave chance to connect to master)
DiscoverByShowSlaveHosts bool // Attempt SHOW SLAVE HOSTS before PROCESSLIST
InstancePollSeconds uint // Number of seconds between instance reads
UnseenInstanceForgetHours uint // Number of hours after which an unseen instance is forgotten
DiscoveryPollSeconds int // Auto/continuous discovery of instances sleep time between polls
HostnameResolveMethod string // Method by which to "normalize" hostname ("none"/"cname")
ExpiryHostnameResolvesMinutes int // Number of minutes after which to expire hostname-resolves
ReasonableReplicationLagSeconds int // Abvoe this value is considered a problem
ReasonableMaintenanceReplicationLagSeconds int // Above this value move-up and move-below are blocked
AuditLogFile string // Name of log file for audit operations. Disabled when empty.
AuditPageSize int
ReadOnly bool
AuthenticationMethod string // Type of autherntication to use, if any. "" for none, "basic" for BasicAuth, "multi" for advanced BasicAuth, "proxy" for forwarded credentials via reverse proxy
HTTPAuthUser string // Username for HTTP Basic authentication (blank disables authentication)
HTTPAuthPassword string // Password for HTTP Basic authentication
AuthUserHeader string // HTTP header indicating auth user, when AuthenticationMethod is "proxy"
PowerAuthUsers []string // On AuthenticationMethod == "proxy", list of users that can make changes. All others are read-only.
ClusterNameToAlias map[string]string // map between regex matching cluster name to a human friendly alias
ServeAgentsHttp bool // Spawn another HTTP interface dedicated for orcehstrator-agent
AgentsUseSSL bool // When "true" orchestrator will listen on agents port with SSL as well as connect to agents via SSL
SSLSkipVerify bool // When using SSL, should we ignore SSL certification error
SSLPrivateKeyFile string // Name of SSL private key file, applies only when AgentsUseSSL = true
SSLCertFile string // Name of SSL certification file, applies only when AgentsUseSSL = true
HttpTimeoutSeconds int // Number of idle seconds before HTTP GET request times out (when accessing orchestrator-agent)
AgentPollMinutes uint // Minutes between agent polling
UnseenAgentForgetHours uint // Number of hours after which an unseen agent is forgotten
StaleSeedFailMinutes uint // Number of minutes after which a stale (no progress) seed is considered failed.
SeedAcceptableBytesDiff int64 // Difference in bytes between seed source & target data size that is still considered as successful copy
PseudoGTIDPattern string // Pattern to look for in binary logs that makes for a unique entry (pseudo GTID). When empty, Pseudo-GTID based refactoring is disabled.
}
Configuration makes for orchestrator configuration input, which can be provided by user via JSON formatted file. Some of the parameteres have reasonable default values, and some (like database credentials) are strictly expected from user.
var Config *Configuration = NewConfiguration()
func ForceRead ¶
func ForceRead(file_name string) *Configuration
ForceRead reads configuration from given file name or bails out if it fails
func NewConfiguration ¶
func NewConfiguration() *Configuration
func Read ¶
func Read(file_names ...string) *Configuration
Read reads configuration from zero, either, some or all given files, in order of input. A file can override configuration provided in previous file.
Click to show internal directories.
Click to hide internal directories.