Uploaded image for project: 'OpenShift Windows Containers'
  1. OpenShift Windows Containers
  2. WINC-579

Support drain and cordon of BYOH instances

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Won't Do
    • Icon: Undefined Undefined
    • None
    • None
    • wmco
    • None
    • 8
    • False
    • False
    • OCPPLAN-2389 - Drive Workload and Consumption
    • Undefined

      As an OpenShift cluster administrator I would like my Windows nodes to be drained and cordoned before removal and before upgrading.

      Description

      Augment the ConfigMap controller in WMCO to react to the removal of any entries in the openshift-windows-machine-config-operator/windows-instances ConfigMap or changes to Node objects. The reaction should be drain and cordon the node corresponding to the entry removed.

      Engineering details

      The ConfigMap controller now also needs to watch Node objects. Any change to the ConfigMap or Node objects, will cause WMCO to compare the list of instances with the set of existing Windows nodes. The comparison will be based on the instance and node's IP addresses and WMCO will then react in the following manner:

      • If the list of nodes has IP addresses that do not map to any in the list of instances, WMCO will perform an uninstall operation on the node. This will involve:
        • Drain and cordon the node

      Required

      WMCO should only drain and cordon BYOH instances that it has added to the cluster.

      Acceptance criteria

      • The ConfigMap controller should also watch for Node objects
      • WMCO should be able to handle draining and cordoning BYOH instances when their entries are removed from windows-instances.
      • e2e test that exercises this feature

              Unassigned Unassigned
              paravindh Aravindh Puthiyaparambil (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: