Bug 1879355

Summary: Unable to apply Schedular Policy on OCP 4.4
Product: OpenShift Container Platform Reporter: kedar <ksalunkh>
Component: kube-schedulerAssignee: Jan Chaloupka <jchaloup>
Status: CLOSED DUPLICATE QA Contact: RamaKasturi <knarra>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.4CC: aos-bugs, mfojtik
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-09-16 10:29:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
sample policy.cfg file none

Description kedar 2020-09-16 04:32:34 UTC
Created attachment 1715016 [details]
sample policy.cfg file

Description of problem:
Unable to apply Schedular Policy on OCP 4.4 but It's supported on OCP 4.3.

While upgradation from 4.3 to 4.4, faced problems with the scheduler policy. So delete it and upgradation completed. 

Now while applying the scheduler policy, we are facing the below problem.

I0826 12:04:52.210766       1 algorithm_factory.go:449] Priority type TaintTolerationPriority already registered, reusing.
I0826 12:04:52.210771       1 factory.go:219] Creating scheduler with fit predicates 'map[CheckNodeUnschedulable:{} CheckServiceAffinity:{} CheckVolumeBinding:{} GeneralPredicates:{} MatchInterPodAffinity:{} MatchNodeSelector:{} MaxAzureDiskVolumeCount:{} MaxCSIVolumeCountPred:{} MaxEBSVolumeCount:{} MaxGCEPDVolumeCount:{} NoDiskConflict:{} NoVolumeZoneConflict:{} PodFitsHostPorts:{} PodFitsResources:{} PodToleratesNodeTaints:{}]' and priority functions 'map[BalancedResourceAllocation:{} ImageLocalityPriority:{} InterPodAffinityPriority:{} LeastRequestedPriority:{} NodeAffinityPriority:{} NodePreferAvoidPodsPriority:{} SelectorSpreadPriority:{} ServiceAffinity:{} TaintTolerationPriority:{}]'
F0826 12:04:52.210982       1 factory.go:265] error initializing the scheduling framework: plugin "NodePorts" already registered as "FilterPlugin"


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


Steps to Reproduce:
1. Create a scheduler policy file named policy.cfg

2. Create a ConfigMap based on the scheduler JSON file:
    for ex:- oc create configmap -n openshift-config --from-file=policy.cfg scheduler-policy

3. Edit the Scheduler Operator Custom Resource to add the ConfigMap:
    oc patch Scheduler cluster --type='merge' -p '{"spec":{"policy":{"name":"scheduler-policy"}}}' --type=merge

4. After making the change to the Scheduler config resource, wait for the opensift-kube-apiserver pods to    redeploy. This can take several minutes. Until the pods redeploy, new scheduler does not take effect.


Actual results:
This steps in OCP v4.4 produces crashloopback error for openshift-kube-scheduler pod whereas working successfull in v4.3


Expected results:


Additional info:
Check attachment for sample policy.cfg file used for replicating the scenario.

Comment 1 Jan Chaloupka 2020-09-16 10:29:58 UTC

*** This bug has been marked as a duplicate of bug 1840616 ***