Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit 575d053

Browse files
committed
2 parents a6b1286 + 8479e55 commit 575d053

14 files changed

+1720
-534
lines changed

src/sentinel/redis-6380/redis.conf

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Relative to ./src/sentinel
2+
include redis.conf
3+
4+
port 6380
5+
dir ./redis-6380/state

src/sentinel/redis-6380/sentinel.conf

+3-177
Original file line numberDiff line numberDiff line change
@@ -1,181 +1,7 @@
1-
# Redis1 sentinel.conf
1+
# Relative to ./src/sentinel
22

3-
# port <sentinel-port>
4-
# The port that this sentinel instance will run on
53
port 26380
6-
bind 127.0.0.1
7-
8-
# sentinel announce-ip <ip>
9-
# sentinel announce-port <port>
10-
#
11-
# The above two configuration directives are useful in environments where,
12-
# because of NAT, Sentinel is reachable from outside via a non-local address.
13-
#
14-
# When announce-ip is provided, the Sentinel will claim the specified IP address
15-
# in HELLO messages used to gossip its presence, instead of auto-detecting the
16-
# local address as it usually does.
17-
#
18-
# Similarly when announce-port is provided and is valid and non-zero, Sentinel
19-
# will announce the specified TCP port.
20-
#
21-
# The two options don't need to be used together, if only announce-ip is
22-
# provided, the Sentinel will announce the specified IP and the server port
23-
# as specified by the "port" option. If only announce-port is provided, the
24-
# Sentinel will announce the auto-detected local IP and the specified port.
25-
#
26-
# Example:
27-
#
28-
# sentinel announce-ip 1.2.3.4
29-
30-
# dir <working-directory>
31-
# Every long running process should have a well-defined working directory.
32-
# For Redis Sentinel to chdir to /tmp at startup is the simplest thing
33-
# for the process to don't interfere with administrative tasks such as
34-
# unmounting filesystems.
35-
dir "C:\\src\\ServiceStack.Redis\\src\\sentinel\\redis-6380"
36-
37-
# sentinel monitor <master-name> <ip> <redis-port> <quorum>
38-
#
39-
# Tells Sentinel to monitor this master, and to consider it in O_DOWN
40-
# (Objectively Down) state only if at least <quorum> sentinels agree.
41-
#
42-
# Note that whatever is the ODOWN quorum, a Sentinel will require to
43-
# be elected by the majority of the known Sentinels in order to
44-
# start a failover, so no failover can be performed in minority.
45-
#
46-
# Slaves are auto-discovered, so you don't need to specify slaves in
47-
# any way. Sentinel itself will rewrite this configuration file adding
48-
# the slaves using additional configuration options.
49-
# Also note that the configuration file is rewritten when a
50-
# slave is promoted to master.
51-
#
52-
# Note: master name should not include special characters or spaces.
53-
# The valid charset is A-z 0-9 and the three characters ".-_".
4+
dir ./redis-6380/state
545
sentinel monitor mymaster 127.0.0.1 6380 2
6+
protected-mode no
557

56-
# sentinel auth-pass <master-name> <password>
57-
#
58-
# Set the password to use to authenticate with the master and slaves.
59-
# Useful if there is a password set in the Redis instances to monitor.
60-
#
61-
# Note that the master password is also used for slaves, so it is not
62-
# possible to set a different password in masters and slaves instances
63-
# if you want to be able to monitor these instances with Sentinel.
64-
#
65-
# However you can have Redis instances without the authentication enabled
66-
# mixed with Redis instances requiring the authentication (as long as the
67-
# password set is the same for all the instances requiring the password) as
68-
# the AUTH command will have no effect in Redis instances with authentication
69-
# switched off.
70-
#
71-
# Example:
72-
#
73-
# sentinel auth-pass mymaster MySUPER--secret-0123passw0rd
74-
75-
# sentinel down-after-milliseconds <master-name> <milliseconds>
76-
#
77-
# Number of milliseconds the master (or any attached slave or sentinel) should
78-
# be unreachable (as in, not acceptable reply to PING, continuously, for the
79-
# specified period) in order to consider it in S_DOWN state (Subjectively
80-
# Down).
81-
#
82-
# Default is 30 seconds.
83-
sentinel config-epoch mymaster 4
84-
85-
# sentinel parallel-syncs <master-name> <numslaves>
86-
#
87-
# How many slaves we can reconfigure to point to the new slave simultaneously
88-
# during the failover. Use a low number if you use the slaves to serve query
89-
# to avoid that all the slaves will be unreachable at about the same
90-
# time while performing the synchronization with the master.
91-
sentinel leader-epoch mymaster 4
92-
93-
# sentinel failover-timeout <master-name> <milliseconds>
94-
#
95-
# Specifies the failover timeout in milliseconds. It is used in many ways:
96-
#
97-
# - The time needed to re-start a failover after a previous failover was
98-
# already tried against the same master by a given Sentinel, is two
99-
# times the failover timeout.
100-
#
101-
# - The time needed for a slave replicating to a wrong master according
102-
# to a Sentinel current configuration, to be forced to replicate
103-
# with the right master, is exactly the failover timeout (counting since
104-
# the moment a Sentinel detected the misconfiguration).
105-
#
106-
# - The time needed to cancel a failover that is already in progress but
107-
# did not produced any configuration change (SLAVEOF NO ONE yet not
108-
# acknowledged by the promoted slave).
109-
#
110-
# - The maximum time a failover in progress waits for all the slaves to be
111-
# reconfigured as slaves of the new master. However even after this time
112-
# the slaves will be reconfigured by the Sentinels anyway, but not with
113-
# the exact parallel-syncs progression as specified.
114-
#
115-
# Default is 3 minutes.
116-
sentinel known-slave mymaster 127.0.0.1 6381
117-
sentinel known-slave mymaster 127.0.0.1 6382
118-
119-
# SCRIPTS EXECUTION
120-
#
121-
# sentinel notification-script and sentinel reconfig-script are used in order
122-
# to configure scripts that are called to notify the system administrator
123-
# or to reconfigure clients after a failover. The scripts are executed
124-
# with the following rules for error handling:
125-
#
126-
# If script exits with "1" the execution is retried later (up to a maximum
127-
# number of times currently set to 10).
128-
#
129-
# If script exits with "2" (or an higher value) the script execution is
130-
# not retried.
131-
#
132-
# If script terminates because it receives a signal the behavior is the same
133-
# as exit code 1.
134-
#
135-
# A script has a maximum running time of 60 seconds. After this limit is
136-
# reached the script is terminated with a SIGKILL and the execution retried.
137-
138-
# NOTIFICATION SCRIPT
139-
#
140-
# sentinel notification-script <master-name> <script-path>
141-
#
142-
# Call the specified notification script for any sentinel event that is
143-
# generated in the WARNING level (for instance -sdown, -odown, and so forth).
144-
# This script should notify the system administrator via email, SMS, or any
145-
# other messaging system, that there is something wrong with the monitored
146-
# Redis systems.
147-
#
148-
# The script is called with just two arguments: the first is the event type
149-
# and the second the event description.
150-
#
151-
# The script must exist and be executable in order for sentinel to start if
152-
# this option is provided.
153-
#
154-
# Example:
155-
#
156-
# sentinel notification-script mymaster /var/redis/notify.sh
157-
158-
# CLIENTS RECONFIGURATION SCRIPT
159-
#
160-
# sentinel client-reconfig-script <master-name> <script-path>
161-
#
162-
# When the master changed because of a failover a script can be called in
163-
# order to perform application-specific tasks to notify the clients that the
164-
# configuration has changed and the master is at a different address.
165-
#
166-
# The following arguments are passed to the script:
167-
#
168-
# <master-name> <role> <state> <from-ip> <from-port> <to-ip> <to-port>
169-
#
170-
# <state> is currently always "failover"
171-
# <role> is either "leader" or "observer"
172-
#
173-
# The arguments from-ip, from-port, to-ip, to-port are used to communicate
174-
# the old address of the master and the new address of the elected slave
175-
# (now a master).
176-
#
177-
# This script should be resistant to multiple invocations.
178-
#
179-
# Example:
180-
#
181-
# sentinel client-reconfig-script mymaster /var/redis/reconfig.sh
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
# Redis1 sentinel.conf
2+
3+
# port <sentinel-port>
4+
# The port that this sentinel instance will run on
5+
port 26380
6+
bind 127.0.0.1
7+
8+
# sentinel announce-ip <ip>
9+
# sentinel announce-port <port>
10+
#
11+
# The above two configuration directives are useful in environments where,
12+
# because of NAT, Sentinel is reachable from outside via a non-local address.
13+
#
14+
# When announce-ip is provided, the Sentinel will claim the specified IP address
15+
# in HELLO messages used to gossip its presence, instead of auto-detecting the
16+
# local address as it usually does.
17+
#
18+
# Similarly when announce-port is provided and is valid and non-zero, Sentinel
19+
# will announce the specified TCP port.
20+
#
21+
# The two options don't need to be used together, if only announce-ip is
22+
# provided, the Sentinel will announce the specified IP and the server port
23+
# as specified by the "port" option. If only announce-port is provided, the
24+
# Sentinel will announce the auto-detected local IP and the specified port.
25+
#
26+
# Example:
27+
#
28+
# sentinel announce-ip 1.2.3.4
29+
30+
# dir <working-directory>
31+
# Every long running process should have a well-defined working directory.
32+
# For Redis Sentinel to chdir to /tmp at startup is the simplest thing
33+
# for the process to don't interfere with administrative tasks such as
34+
# unmounting filesystems.
35+
dir "C:\\src\\ServiceStack.Redis\\src\\sentinel\\redis-6380"
36+
37+
# sentinel monitor <master-name> <ip> <redis-port> <quorum>
38+
#
39+
# Tells Sentinel to monitor this master, and to consider it in O_DOWN
40+
# (Objectively Down) state only if at least <quorum> sentinels agree.
41+
#
42+
# Note that whatever is the ODOWN quorum, a Sentinel will require to
43+
# be elected by the majority of the known Sentinels in order to
44+
# start a failover, so no failover can be performed in minority.
45+
#
46+
# Slaves are auto-discovered, so you don't need to specify slaves in
47+
# any way. Sentinel itself will rewrite this configuration file adding
48+
# the slaves using additional configuration options.
49+
# Also note that the configuration file is rewritten when a
50+
# slave is promoted to master.
51+
#
52+
# Note: master name should not include special characters or spaces.
53+
# The valid charset is A-z 0-9 and the three characters ".-_".
54+
sentinel monitor mymaster 127.0.0.1 6380 2
55+
56+
# sentinel auth-pass <master-name> <password>
57+
#
58+
# Set the password to use to authenticate with the master and slaves.
59+
# Useful if there is a password set in the Redis instances to monitor.
60+
#
61+
# Note that the master password is also used for slaves, so it is not
62+
# possible to set a different password in masters and slaves instances
63+
# if you want to be able to monitor these instances with Sentinel.
64+
#
65+
# However you can have Redis instances without the authentication enabled
66+
# mixed with Redis instances requiring the authentication (as long as the
67+
# password set is the same for all the instances requiring the password) as
68+
# the AUTH command will have no effect in Redis instances with authentication
69+
# switched off.
70+
#
71+
# Example:
72+
#
73+
# sentinel auth-pass mymaster MySUPER--secret-0123passw0rd
74+
75+
# sentinel down-after-milliseconds <master-name> <milliseconds>
76+
#
77+
# Number of milliseconds the master (or any attached slave or sentinel) should
78+
# be unreachable (as in, not acceptable reply to PING, continuously, for the
79+
# specified period) in order to consider it in S_DOWN state (Subjectively
80+
# Down).
81+
#
82+
# Default is 30 seconds.
83+
sentinel config-epoch mymaster 4
84+
85+
# sentinel parallel-syncs <master-name> <numslaves>
86+
#
87+
# How many slaves we can reconfigure to point to the new slave simultaneously
88+
# during the failover. Use a low number if you use the slaves to serve query
89+
# to avoid that all the slaves will be unreachable at about the same
90+
# time while performing the synchronization with the master.
91+
sentinel leader-epoch mymaster 4
92+
93+
# sentinel failover-timeout <master-name> <milliseconds>
94+
#
95+
# Specifies the failover timeout in milliseconds. It is used in many ways:
96+
#
97+
# - The time needed to re-start a failover after a previous failover was
98+
# already tried against the same master by a given Sentinel, is two
99+
# times the failover timeout.
100+
#
101+
# - The time needed for a slave replicating to a wrong master according
102+
# to a Sentinel current configuration, to be forced to replicate
103+
# with the right master, is exactly the failover timeout (counting since
104+
# the moment a Sentinel detected the misconfiguration).
105+
#
106+
# - The time needed to cancel a failover that is already in progress but
107+
# did not produced any configuration change (SLAVEOF NO ONE yet not
108+
# acknowledged by the promoted slave).
109+
#
110+
# - The maximum time a failover in progress waits for all the slaves to be
111+
# reconfigured as slaves of the new master. However even after this time
112+
# the slaves will be reconfigured by the Sentinels anyway, but not with
113+
# the exact parallel-syncs progression as specified.
114+
#
115+
# Default is 3 minutes.
116+
sentinel known-slave mymaster 127.0.0.1 6381
117+
sentinel known-slave mymaster 127.0.0.1 6382
118+
119+
# SCRIPTS EXECUTION
120+
#
121+
# sentinel notification-script and sentinel reconfig-script are used in order
122+
# to configure scripts that are called to notify the system administrator
123+
# or to reconfigure clients after a failover. The scripts are executed
124+
# with the following rules for error handling:
125+
#
126+
# If script exits with "1" the execution is retried later (up to a maximum
127+
# number of times currently set to 10).
128+
#
129+
# If script exits with "2" (or an higher value) the script execution is
130+
# not retried.
131+
#
132+
# If script terminates because it receives a signal the behavior is the same
133+
# as exit code 1.
134+
#
135+
# A script has a maximum running time of 60 seconds. After this limit is
136+
# reached the script is terminated with a SIGKILL and the execution retried.
137+
138+
# NOTIFICATION SCRIPT
139+
#
140+
# sentinel notification-script <master-name> <script-path>
141+
#
142+
# Call the specified notification script for any sentinel event that is
143+
# generated in the WARNING level (for instance -sdown, -odown, and so forth).
144+
# This script should notify the system administrator via email, SMS, or any
145+
# other messaging system, that there is something wrong with the monitored
146+
# Redis systems.
147+
#
148+
# The script is called with just two arguments: the first is the event type
149+
# and the second the event description.
150+
#
151+
# The script must exist and be executable in order for sentinel to start if
152+
# this option is provided.
153+
#
154+
# Example:
155+
#
156+
# sentinel notification-script mymaster /var/redis/notify.sh
157+
158+
# CLIENTS RECONFIGURATION SCRIPT
159+
#
160+
# sentinel client-reconfig-script <master-name> <script-path>
161+
#
162+
# When the master changed because of a failover a script can be called in
163+
# order to perform application-specific tasks to notify the clients that the
164+
# configuration has changed and the master is at a different address.
165+
#
166+
# The following arguments are passed to the script:
167+
#
168+
# <master-name> <role> <state> <from-ip> <from-port> <to-ip> <to-port>
169+
#
170+
# <state> is currently always "failover"
171+
# <role> is either "leader" or "observer"
172+
#
173+
# The arguments from-ip, from-port, to-ip, to-port are used to communicate
174+
# the old address of the master and the new address of the elected slave
175+
# (now a master).
176+
#
177+
# This script should be resistant to multiple invocations.
178+
#
179+
# Example:
180+
#
181+
# sentinel client-reconfig-script mymaster /var/redis/reconfig.sh

src/sentinel/redis-6381/redis.conf

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Relative to ./src/sentinel
2+
include redis.conf
3+
4+
port 6381
5+
dir ./redis-6381/state
6+
slaveof 127.0.0.1 6380

0 commit comments

Comments
 (0)