Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 528 for Extender (0.24 sec)

  1. pkg/scheduler/extender.go

    }
    
    // Name returns extenderURL to identify the extender.
    func (h *HTTPExtender) Name() string {
    	return h.extenderURL
    }
    
    // IsIgnorable returns true indicates scheduling should not fail when this extender
    // is unavailable
    func (h *HTTPExtender) IsIgnorable() bool {
    	return h.ignorable
    }
    
    // SupportsPreemption returns true if an extender supports preemption.
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Mon Feb 26 19:07:19 UTC 2024
    - 13.4K bytes
    - Viewed (0)
  2. pkg/scheduler/framework/extender.go

    	extenderv1 "k8s.io/kube-scheduler/extender/v1"
    )
    
    // Extender is an interface for external processes to influence scheduling
    // decisions made by Kubernetes. This is typically needed for resources not directly
    // managed by Kubernetes.
    type Extender interface {
    	// Name returns a unique name that identifies the extender.
    	Name() string
    
    	// Filter based on extender-implemented predicate functions. The filtered list is
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Mon Feb 26 19:07:19 UTC 2024
    - 3.3K bytes
    - Viewed (0)
  3. pkg/scheduler/apis/config/validation/validation.go

    	return errs
    }
    
    // validateExtenders validates the configured extenders for the Scheduler
    func validateExtenders(fldPath *field.Path, extenders []config.Extender) []error {
    	var errs []error
    	binders := 0
    	extenderManagedResources := sets.New[string]()
    	for i, extender := range extenders {
    		path := fldPath.Index(i)
    		if len(extender.PrioritizeVerb) > 0 && extender.Weight <= 0 {
    			errs = append(errs, field.Invalid(path.Child("weight"),
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Thu Apr 25 06:27:01 UTC 2024
    - 11.5K bytes
    - Viewed (0)
  4. pkg/scheduler/testing/framework/fake_extender.go

    		nodeNameToVictimsCopy[k] = v
    	}
    
    	// If Extender.ProcessPreemption ever gets extended with a context parameter, then the logger should be retrieved from that.
    	// Now, in order not to modify the Extender interface, we get the logger from klog.TODO()
    	logger := klog.TODO()
    	for nodeName, victims := range nodeNameToVictimsCopy {
    		// Try to do preemption on extender side.
    		nodeInfo, _ := nodeInfos.Get(nodeName)
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Mon Feb 26 19:07:19 UTC 2024
    - 13.9K bytes
    - Viewed (0)
  5. pkg/scheduler/apis/config/types.go

    	NodeCacheCapable bool
    	// ManagedResources is a list of extended resources that are managed by
    	// this extender.
    	// - A pod will be sent to the extender on the Filter, Prioritize and Bind
    	//   (if the extender is the binder) phases iff the pod requests at least
    	//   one of the extended resources in this list. If empty or unspecified,
    	//   all pods will be sent to this extender.
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Fri Jan 19 18:47:23 UTC 2024
    - 14.8K bytes
    - Viewed (0)
  6. pkg/scheduler/apis/config/validation/validation_test.go

    	extenderDuplicateManagedResource.Extenders[0].ManagedResources = []config.ExtenderManagedResource{
    		{Name: "example.com/foo", IgnoredByScheduler: false},
    		{Name: "example.com/foo", IgnoredByScheduler: false},
    	}
    
    	extenderDuplicateBind := validConfig.DeepCopy()
    	extenderDuplicateBind.Extenders[0].BindVerb = "foo"
    	extenderDuplicateBind.Extenders = append(extenderDuplicateBind.Extenders, config.Extender{
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Thu Apr 25 06:27:01 UTC 2024
    - 12.2K bytes
    - Viewed (0)
  7. pkg/scheduler/extender_test.go

    			name: "test 11 - no scoring, no prefilters or  extender filters configured, a single feasible node is evaluated",
    		},
    	}
    
    	for _, test := range tests {
    		t.Run(test.name, func(t *testing.T) {
    			client := clientsetfake.NewSimpleClientset()
    			informerFactory := informers.NewSharedInformerFactory(client, 0)
    
    			var extenders []framework.Extender
    			for ii := range test.extenders {
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Mon Feb 26 19:07:19 UTC 2024
    - 16.7K bytes
    - Viewed (0)
  8. pkg/scheduler/scheduler.go

    }
    
    func buildExtenders(logger klog.Logger, extenders []schedulerapi.Extender, profiles []schedulerapi.KubeSchedulerProfile) ([]framework.Extender, error) {
    	var fExtenders []framework.Extender
    	if len(extenders) == 0 {
    		return nil, nil
    	}
    
    	var ignoredExtendedResources []string
    	var ignorableExtenders []framework.Extender
    	for i := range extenders {
    		logger.V(2).Info("Creating extender", "extender", extenders[i])
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Tue Jun 04 06:20:55 UTC 2024
    - 20.8K bytes
    - Viewed (0)
  9. pkg/scheduler/schedule_one.go

    	for _, extender := range sched.Extenders {
    		if !extender.IsBinder() || !extender.IsInterested(pod) {
    			continue
    		}
    		err := extender.Bind(&v1.Binding{
    			ObjectMeta: metav1.ObjectMeta{Namespace: pod.Namespace, Name: pod.Name, UID: pod.UID},
    			Target:     v1.ObjectReference{Kind: "Node", Name: node},
    		})
    		if err != nil && extender.IsIgnorable() {
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Thu Jun 06 13:28:08 UTC 2024
    - 43.4K bytes
    - Viewed (0)
  10. pkg/scheduler/framework/preemption/preemption.go

    		return candidates, nil
    	}
    	for _, extender := range extenders {
    		if !extender.SupportsPreemption() || !extender.IsInterested(pod) {
    			continue
    		}
    		nodeNameToVictims, err := extender.ProcessPreemption(pod, victimsMap, nodeLister)
    		if err != nil {
    			if extender.IsIgnorable() {
    				logger.Info("Skipped extender as it returned error and has ignorable flag set",
    					"extender", extender.Name(), "err", err)
    				continue
    			}
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Fri May 31 15:52:16 UTC 2024
    - 25.1K bytes
    - Viewed (0)
Back to top