Package daemon contains logic for watching and synchronizing daemons.



    View Source
    const (
    	// BurstReplicas is a rate limiter for booting pods on a lot of pods.
    	// The value of 250 is chosen b/c values that are too high can cause registry DoS issues.
    	BurstReplicas = 250
    	// StatusUpdateRetries limits the number of retries if sending a status update to API server fails.
    	StatusUpdateRetries = 1
    	// BackoffGCInterval is the time that has to pass before next iteration of backoff GC is run
    	BackoffGCInterval = 1 * time.Minute
    View Source
    const (
    	// SelectingAllReason is added to an event when a DaemonSet selects all Pods.
    	SelectingAllReason = "SelectingAll"
    	// FailedPlacementReason is added to an event when a DaemonSet can't schedule a Pod to a specified node.
    	FailedPlacementReason = "FailedPlacement"
    	// FailedDaemonPodReason is added to an event when the status of a Pod of a DaemonSet is 'Failed'.
    	FailedDaemonPodReason = "FailedDaemonPod"

      Reasons for DaemonSet events


      This section is empty.


      func Match

      func Match(ds *apps.DaemonSet, history *apps.ControllerRevision) (bool, error)

        Match check if the given DaemonSet's template matches the template stored in the given history.

        func NewPod

        func NewPod(ds *apps.DaemonSet, nodeName string) *v1.Pod

          NewPod creates a new pod

          func Predicates

          func Predicates(pod *v1.Pod, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []predicates.PredicateFailureReason, error)

            Predicates checks if a DaemonSet's pod can be scheduled on a node using GeneralPredicates and PodToleratesNodeTaints predicate


            type DaemonSetsController

            type DaemonSetsController struct {
            	// contains filtered or unexported fields

              DaemonSetsController is responsible for synchronizing DaemonSet objects stored in the system with actual running pods.

              func NewDaemonSetsController

              func NewDaemonSetsController(
              	daemonSetInformer appsinformers.DaemonSetInformer,
              	historyInformer appsinformers.ControllerRevisionInformer,
              	podInformer coreinformers.PodInformer,
              	nodeInformer coreinformers.NodeInformer,
              	kubeClient clientset.Interface,
              	failedPodsBackoff *flowcontrol.Backoff,
              ) (*DaemonSetsController, error)

                NewDaemonSetsController creates a new DaemonSetsController

                func (*DaemonSetsController) Run

                func (dsc *DaemonSetsController) Run(workers int, stopCh <-chan struct{})

                  Run begins watching and syncing daemon sets.


                  Path Synopsis