Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-1417

draining a node should be possible like haproxy does

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 2.1.7
    • 2.3.0
    • maxctrl
    • None
    • linux ubuntu 14.04 n.a
    • MXS-SPRINT-58

    Description

      set server xxx maintenance causes existing connections to abort. it would be much nicer to have a set server xxx drain as haproxy does

      see irc conversions with markus

      (09:04:57) shinguz: does MaxScale 2.1 really not allow draining a node as HAproxy does?
      (09:05:14) markusjm: what do you mean by draining?
      (09:05:16) shinguz: I could only find maintenance in the doku
      (09:05:34) markusjm: prevent new connections from being created?
      (09:06:25) shinguz: prevent new connections from being created (as maintenance does) and keep old open until they are finished
      (09:06:45) markusjm: you can remove the server from the service and won't be used by new connections
      (09:06:54) shinguz: maintenance in MaxScale disconnects sessions as I have experienced in some tests
      (09:06:58) markusjm: give me a sec and I'll point you to the docs
      (09:07:22) markusjm: but you're right, it's not something that's very obvious and I think it could be documented better
      (09:07:38) markusjm: https://mariadb.com/kb/en/mariadb-enterprise/mariadb-maxscale-21-maxadmin-admin-interface/#runtime-configuration-changes
      (09:07:39) shinguz: what? that it disconnects old connections?
      (09:08:11) markusjm: I was referring to the fact that removing a server is the same as draining a server
      (09:08:27) shinguz: aha
      (09:08:32) shinguz: I see, thanks!
      (09:08:37) markusjm: so you should be able to do that in 2.1 with `maxadmin remove server <server> <service>`
      (09:08:54) markusjm: it's sort of like a soft-maintenance mode
      (09:08:55) shinguz: I see
      (09:09:14) shinguz: but needs an add again and this is error prone
      (09:09:55) shinguz: so set server nodeC drain imho is more intuitive...
      (09:10:09) markusjm: that's true
      (09:10:17) shinguz: feature request?
      (09:10:27) markusjm: but from a conceptual point of view, you want to remove a server from the list of available servers for a service
      (09:10:36) shinguz: no
      (09:10:39) markusjm: a feature request would be good
      (09:10:59) markusjm: out of curiosity, why do you want to drain the server?
      (09:11:08) shinguz: when I put it to maintenance I also do not want to remove it from the entity service I want to put it in maintenance
      (09:11:19) shinguz: because we get errors on existing connections
      (09:11:25) shinguz: and this is ugly
      (09:11:50) shinguz: so we want to drain a server until everybody has finished his work
      (09:11:56) shinguz: and then put it in maintenanxce
      (09:12:08) shinguz: so no lost connections
      (09:12:16) markusjm: yup, that makes perfect sense
      (09:12:21) shinguz: for example applications which do persistent connections
      (09:12:33) shinguz: ok. I will write feature request
      (09:12:46) shinguz: any preference or assignments? shall I mention you?
      (09:13:04) markusjm: I think the feature request is quite self-explanatory
      (09:13:14) markusjm: but please do, I like being mentioned
      (09:13:37) shinguz: .oO(why jira???)
      (09:13:40) markusjm: but I don't think it'll get in the next majod release

      Attachments

        Activity

          People

            markus makela markus makela
            oli Oli Sennhauser
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.