<    April 2017    >
Su Mo Tu We Th Fr Sa  
                   1  
 2  3  4  5  6  7  8  
 9 10 11 12 13 14 15  
16 17 18 19 20 21 22  
23 24 25 26 27 28 29  
30
00:09 BrianMiller joined
00:21 farsonic joined
00:30 Guest96 joined
00:31 steeze joined
00:32 minimalism joined
01:23 edvorg joined
01:29 pid1 joined
01:44 edvorg joined
02:11 edvorg joined
02:11 EyePulp joined
02:27 steeze joined
02:30 daxelrod joined
03:23 etehtsea joined
03:55 garfed joined
04:03 svm_invictvs joined
04:06 RemiFedora joined
04:08 bannakaffalatta joined
04:13 minimalism joined
04:16 sfa joined
04:20 Azure|dc joined
04:28 EyePulp joined
04:31 siddv29 joined
04:31 <siddv29> Hi guys, i am new to redis DB. Could someone provide any tutorial link with deep dive in redis. I went through the redis.io tutorial. would love to understand redis' architecture in much more detail
04:31 rchavik joined
04:41 Guest96 joined
04:59 ppang joined
05:06 steeze joined
05:11 mrgreenfur joined
05:14 wlightning-fuel joined
05:22 fakenerd joined
05:41 sz0 joined
05:42 mrgreenfur joined
05:42 rendar joined
05:46 mmason joined
05:50 steeze joined
06:13 mrgreenfur joined
06:31 soveran joined
06:31 soveran joined
06:43 EyePulp joined
06:44 mrgreenfur joined
06:53 bf_ joined
07:05 barisyesilcicek joined
07:18 JohnnyRun joined
07:21 Dave_R joined
07:29 winem_ joined
07:30 masber joined
07:47 metoikos joined
07:49 last1 joined
07:56 barisyesilcicek joined
08:33 beni joined
08:35 FeersumEndjinn joined
08:51 efphe joined
08:58 drbobbeaty joined
09:00 EyePulp joined
09:01 Mr__Anderson joined
09:07 DodgeThis joined
09:23 Guest96 joined
09:46 kraftman joined
09:47 programmingcool joined
09:56 mikecmpbll joined
09:56 ppang_ joined
09:58 FeersumEndjinn joined
10:01 <mikecmpbll> can anyone help me figure out what might be going on here? https://gist.github.com/mikecmpbll/e081f92b862e794ca0332ee90a8b32a9
10:01 <mikecmpbll> looks like they're all (the sentinels) trying to reconfigure eachother in a loop
10:02 dudeji joined
10:02 <mikecmpbll> one thing i notice is the two "known-slave" in the sentinel config are actually two IPs for the same server, which could be the cause. not sure how these are discovered though so don't know how to address the issue.
10:15 <minus> Are you doing anything with proxies or so?
10:16 <minus> Don't attach slaves through haproxy or so
10:16 <badboy_> the sentinels seem to see different IPs for a single node
10:16 <badboy_> ensure sentinels are all using the right IP to talk to other sentinels
10:17 <badboy_> either bind to a fixed IP or change the advertised IP
10:18 <mikecmpbll> nothing with proxies. there are two networks involved but all the servers are on both networks
10:19 <mikecmpbll> how do the sentinels "see" an IP for a node
10:20 <mikecmpbll> if nodes are resolving IPs differently, i'm not sure how to sort that
10:22 <badboy_> Sentinel nodes try to detect the IP from the interface they are bound to and than advertise that
10:23 <badboy_> and the other side sees a node connect with another IP
10:23 <badboy_> and thus lead to both sides seeing different things
10:23 <badboy_> so just pick one and stick with it ;)
10:35 EyePulp joined
10:45 bf_ joined
10:51 <mikecmpbll> "<@badboy_> Sentinel nodes try to detect the IP from the interface they are bound to" — how does a sentinel get bound to interface? sorry if i'm being a moron just trying to figure this out.
10:53 <mikecmpbll> oh, literally the bind directive in the config? i'm not using that at all at present.
10:57 drbobbeaty joined
11:01 HelgeO joined
11:07 <mikecmpbll> so if i explicitly bind everything, sentinels and servers, to their interface on the same vlan ..
11:13 <minus> how many sentinels do you have?
11:13 <mikecmpbll> 3
11:13 <minus> 2 in one DC, 1 in the other?
11:13 <mikecmpbll> correct
11:13 <minus> with a quorum of 2?
11:14 <mikecmpbll> indeed. (yes i know, it doesn't make sense right now, i'm just getting it set up and i'll add more :D)
11:15 <minus> i'm not sure it can ever make sense with sentinels in the DCs. the DC with fewer sentinels can never promote to master on netsplit
11:16 <minus> well, maybe if you put at least one sentinel in a third location
11:17 <mikecmpbll> hmmm.
11:17 Dave_R joined
11:18 <mikecmpbll> can i have 4 sentinels and a quorum of 2? :D
11:18 <minus> of course
11:18 <minus> if you want 2 masters
11:18 <minus> :D
11:20 <mikecmpbll> why 2 masters? 😖
11:20 <mikecmpbll> oh yeah nvm.
11:22 Guest96 joined
11:23 fakenerd joined
11:24 winem_ joined
11:27 barisyesilcicek joined
11:29 <mikecmpbll> what happens if >=quorum of sentinels become unavailable
11:29 <mikecmpbll> no reconfiguration will ever happen?
11:30 <minus> i'd assume so
11:31 <badboy_> you can have 4 sentinels, but that won't buy you anything
11:31 <badboy_> you will need 3 sentinels in contact to do a failover
11:31 <badboy_> it's always (n/2)+1 for the actual failover, no matter what quorum you configured for down detection
11:32 <mikecmpbll> i see.
11:32 <mikecmpbll> so this isn't the right tool for the job, i'm assuming? i want datacentre independence like i have for all my other services.
11:35 <badboy_> I don't know what you want to achieve^^
11:36 <mikecmpbll> if one DC goes down my clients can failover to the redis slave at the other DC :D
11:37 programmingcool joined
11:38 <badboy_> in that case you wil always need an external node to help with decisions
11:39 <badboy_> also it's not clients doing a failover, it's the actual data nodes switching ;)
11:39 <badboy_> (but I guess I know what you mean)
11:39 garfed joined
11:40 <mikecmpbll> hmmm yeah. so i could have 2 at each DC and 1 at another place. therefore if either production DC goes down we got a majority of sentinels external to that to detect it
11:40 <badboy_> right
11:41 <badboy_> or just one per datacenter, but definitely one externally
11:41 <mikecmpbll> ah yeah. that's good. i can understand that 👍🏼. just this IP issue to figure out now.
11:42 <badboy_> yes, use "bind" to explicitely bind to one IP
11:42 <mikecmpbll> righto, i'll stick binds in everywhere and see how i get on.
11:42 <mikecmpbll> thanks for your help @badboy_ & minus :')
11:43 timg__ joined
12:16 raspado joined
12:25 Dave_R joined
12:27 tarkus joined
12:40 mrgreenfur joined
12:44 garfed joined
12:45 fakenerd joined
12:45 pid1 joined
13:02 cyborg-one joined
13:15 FeersumEndjinn joined
13:19 RemiFedora joined
13:19 Dave_R joined
13:20 EyePulp joined
13:25 chipotle joined
13:34 <mikecmpbll> is there a way I can see the announce-ip from redis-cli? https://github.com/antirez/redis/blob/06263485d46696ba76a653d2b594f3493103c001/src/sentinel.c#L2478-L2484
13:44 <badboy_> config get announce-ip
13:45 <badboy_> oh, well, that will show the configured one
13:46 SkyRocknRoll joined
13:51 <mikecmpbll> yeah, i'm interested to see how it is configured with bind address as 0.0.0.0
13:54 wlightning-fuel joined
13:56 al-damiri joined
13:57 daxelrod joined
14:03 <badboy_> SUBSCRIBE __sentinel__:hello on one of your Redis nodes
14:03 <badboy_> then you will see what they announce
14:05 <mikecmpbll> <3 thanks
14:12 SkyRocknRoll_ joined
14:13 <mikecmpbll> this is what i'm trying to achieve .. https://goo.gl/obwLe0
14:15 <badboy_> well, can sentinel 3 reach 10.1.24.* IPs?
14:15 <mikecmpbll> no :(
14:18 <badboy_> then this will never work
14:18 <badboy_> Sentinels need to be able to talk to each other
14:20 timg__ joined
14:21 <mikecmpbll> well, they could talk to eachother, but on different interfaces.
14:23 iamchrisf joined
14:25 <mikecmpbll> maybe i can make them all announce public ips and do some NAT for ones on the same local network :/
14:33 timg___ joined
14:34 bannakaffalatta joined
14:38 <minus> is there a library for sorted sets like they exist for python?
14:38 <minus> is there a library for sorted sets like they exist in redis for python?
14:50 barisyesilcicek joined
14:50 shinnya joined
15:00 etehtsea joined
15:02 hahuang61 joined
15:03 Dave_R joined
15:03 fanfan joined
15:03 <fanfan> whois soveran
15:09 etehtsea joined
15:10 minimalism joined
15:15 timg__ joined
15:19 FunnyLookinHat joined
15:19 FunnyLookinHat joined
15:20 Mr__Anderson joined
15:25 bannakaf_ joined
15:35 winem_ joined
15:37 medahamada joined
15:43 timg__ joined
15:50 edge226 joined
16:09 wlightning-fuel joined
16:12 svm_invictvs joined
16:26 steeze joined
17:00 steeze joined
17:03 hahuang61 joined
17:27 EyePulp joined
17:27 steeze joined
17:31 tavish joined
17:31 pid1_ joined
17:48 mrgreenfur joined
17:50 hndk joined
17:50 wlightning-fuel joined
17:51 wlightning-fuel joined
17:53 daxelrod joined
17:56 chipotle joined
18:05 wlightning-fuel joined
18:17 wlightning-fuel joined
18:19 cyborg-one joined
18:19 Malediction joined
18:20 stickperson joined
18:20 <stickperson> is there a way to blpop multiple items?
18:21 EyePulp joined
18:21 <minus> no
18:24 shodan45 joined
18:37 <shodan45> anyone using the predis php lib?
18:38 <shodan45> trying to figure out transactions
18:38 barisyesilcicek joined
18:46 EyePulp joined
18:48 <shodan45> WATCH is like a lock, right?
18:50 <minus> no, it doesn't lock anything
18:50 <minus> well, it's passive
18:51 <shodan45> I need to protect against a race condition - I need to DEL 2 things, but only if HGET firstthing foo is a certain value
18:51 <minus> if any of the watched keys are touched the transaction aborts
18:51 <minus> you can do that in a lua script
18:51 <minus> those are atomic
18:51 <shodan45> yeah... I was hoping to avoid that
18:51 <minus> but you'll have to do the check in lua
18:52 <minus> watch/multi/exec should work too though, as long as you just have one DEL command
18:52 <minus> and no other modifications
18:52 <shodan45> already have too many different languages :/
18:52 <minus> but it might fail and you have to retry
18:53 <shodan45> just 1 DEL? why is that?
18:54 <minus> ah nvm
18:55 <minus> should probably work
18:55 <minus> the docs should tell you everything you need to know
18:56 <shodan45> except that I have to "translate" the redis docs into php/predis :)
18:57 <shodan45> hah. I just realized that the race condition can't happen.
18:57 <shodan45> wheeeee
18:58 <shodan45> it's impossible to go from "ok to delete" to "not ok to delete"
19:03 hahuang61 joined
19:07 steeze joined
19:20 EyePulp joined
19:21 wlightning-fuel joined
19:21 wlightning-fuel joined
19:26 minimalism joined
19:27 pid1 joined
19:31 mikecmpbll joined
19:44 EyePulp joined
19:51 barisyesilcicek joined
20:07 ghoti joined
20:30 daxelrod1 joined
20:45 Mr__Anderson joined
20:51 soveran joined
20:51 soveran joined
20:55 bannakaffalatta joined
21:04 hahuang61 joined
21:06 Specialist joined
21:18 ogres joined
21:35 soveran joined
21:35 soveran joined
21:53 BrianMiller joined
21:56 hashpuppy joined
21:57 hashpuppy left
22:04 EyePulp joined
22:13 winem_ joined
22:16 mrgreenfur joined
22:30 daxelrod joined
22:35 olalonde joined
22:36 daxelrod1 joined
23:05 hahuang61 joined
23:59 EyePulp joined