RedisDesktopManager icon indicating copy to clipboard operation
RedisDesktopManager copied to clipboard

Full Redis Sentinel support

Open Bonkebo opened this issue 9 years ago • 10 comments

How to connect to remote Redis Sentinel?

Bonkebo avatar Jul 29 '15 06:07 Bonkebo

Hello @Bonkebo, Redis Sentinel is not supported yet in RDM.

uglide avatar Jul 29 '15 15:07 uglide

@uglide ,thanks for your reply.

Bonkebo avatar Jul 30 '15 01:07 Bonkebo

@Bonkebo Could you please describe which kind of support you want to see in RDM?

uglide avatar Sep 03 '15 08:09 uglide

@uglide I hope it can list Master and Slave,also can point out which one is does not work. how do you think?

Bonkebo avatar Sep 03 '15 09:09 Bonkebo

@Bonkebo Ok, so in connections tree we will have following:

▤ redis-sentinel-foo
 | - ▤ redis-server-1 (master) [up]
      | - ▤ redis-server-10 (slave) [up]
      | - ▤ redis-server-11 (slave) [up]
      | - ▤ redis-server-12 (slave) [up]
      | - ▤ redis-server-13 (slave) [down]
      | - ▤ redis-sentinel-101
      | - ▤ redis-sentinel-102
      | - ▤ redis-sentinel-103
 | - ▤ redis-server-1 (master) [down]

Items like ▤ redis-server-10 (slave) [up] will have context menu with items:

  • Change master settings (GUI for SENTINEL SET command)
  • Remove this master (GUI for SENTINEL REMOVE command)

When we click on such items we connect to this redis-server as usual (db list should be loaded).

Items like ▤ redis-sentinel-101 will have context menu with items:

  • Change master (GUI for SENTINEL MONITOR command)

When we click on such items Events log of this sentinel should be loaded (read-only live log with all events received via PSUBSCRIBE * command).

Does it make sense for you? What should be added to this implementation?

uglide avatar Sep 03 '15 10:09 uglide

@Bonkebo Which network topology do you use? Is it enought to do following in RDM?

RDM <------ SSH Tunnel -----> redis-sentinel-foo
RDM <------ SSH Tunnel -----> redis-sentinel-foo host <------TCP Socket ------> redis-server-1
RDM <------ SSH Tunnel -----> redis-sentinel-foo host <------TCP Socket ------> redis-server-10
...

uglide avatar Sep 03 '15 10:09 uglide

yeah,it makes sense for me.I do not very known about the network topology,but think it is enought for me.

Bonkebo avatar Sep 03 '15 15:09 Bonkebo

Hi. I can be interested in this feature too. Can you give me some details to beta-test it when it is ready?

Many thanks.

gordillo-ramon avatar Dec 30 '15 09:12 gordillo-ramon

For me the most important feature is that we can connect to a Sentinel, and we're using a Redis-Instance that is writable. Current situation:

  • Add all Redis-servers to RDM
  • Connect to first server
  • Try to add key, but get an error because the node is read-only
  • Connect to next server
  • Try to add key, this time it succeeds, because (by luck) we connected to the server that is currently the master.

Desired situation:

  • Add sentinel(s) to RDM (so instead of a Redis-Server entry, this would become a Sentinel-entry)
  • Connect to "sentinel", ask for R/W server
  • Try to add key

I've read the above, and while I agree that everything proposed above is a great addition to RDM, I also believe that maybe the core functionality (auto-select a R/W server using sentinel) would be the first step, and the other steps (GUI tree representation of sentinel and masters/slaves as well as GUI commands that trigger sentinel commands) would follow in later releases. But that's just my 2 cents :).

But regardless of what you think of my proposal, I added a (small) bounty anyway! Thanks for your great work on the project!

DJFliX avatar Apr 18 '16 08:04 DJFliX

+1

kanevbg avatar Jun 24 '21 05:06 kanevbg