Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-1000

Allow scale-down of unhealthy member when it doesn't violate quorum

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Normal Normal
    • None
    • 4.12, 4.11
    • Etcd
    • None
    • Moderate
    • None
    • ETCD Sprint 225, ETCD Sprint 226
    • 2
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      Currently the clustermemberremoval controller allows will automatically remove an etcd member when the pre-conditions for scale down are met, i.e we have a machine pending deletion and N+1 voting members where N is the desired control-plane size.

      The controller will not automatically scale-down if any voting members are unhealthy.
      https://github.com/openshift/cluster-etcd-operator/blob/master/pkg/operator/clustermemberremovalcontroller/clustermemberremovalcontroller.go#L174-L190

      However in the event of a 4 voting member cluster with 1/4 unhealthy members an administrator would want to remove the unhealthy by deleting its associated machine. Removing the member would not violate quorum since the resulting cluster would still be at the desired number of healthy voting members (3 in this example).

      The proposed fix here would be to modify the clustermemberremoval controller to relax the scale-down pre-requisite for an unhealthy member and proceed with its removal if the cluster is at or above the desired number of healthy voting members.

      Version-Release number of selected component (if applicable):

       

      How reproducible:

       

      Steps to Reproduce:

      1.
      2.
      3.
      

      Actual results:

       

      Expected results:

       

      Additional info:

       

              melbeher@redhat.com Mustafa Elbehery
              rhn-coreos-htariq Haseeb Tariq
              Ge Liu Ge Liu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: