kubernetes: k8s.io/kubernetes/pkg/scheduler/apis/config Index | Files | Directories

package config

import "k8s.io/kubernetes/pkg/scheduler/apis/config"

Index

Package Files

doc.go register.go types.go zz_generated.deepcopy.go

Constants

const (
    // SchedulerDefaultLockObjectNamespace defines default scheduler lock object namespace ("kube-system")
    SchedulerDefaultLockObjectNamespace string = metav1.NamespaceSystem

    // SchedulerDefaultLockObjectName defines default scheduler lock object name ("kube-scheduler")
    SchedulerDefaultLockObjectName = "kube-scheduler"

    // SchedulerPolicyConfigMapKey defines the key of the element in the
    // scheduler's policy ConfigMap that contains scheduler's policy config.
    SchedulerPolicyConfigMapKey = "policy.cfg"

    // SchedulerDefaultProviderName defines the default provider names
    SchedulerDefaultProviderName = "DefaultProvider"
)
const GroupName = "kubescheduler.config.k8s.io"

GroupName is the group name used in this package

Variables

var (
    // SchemeBuilder is the scheme builder with scheme init functions to run for this API package
    SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
    // AddToScheme is a global function that registers this API group & version to a scheme
    AddToScheme = SchemeBuilder.AddToScheme
)
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects

type KubeSchedulerConfiguration Uses

type KubeSchedulerConfiguration struct {
    metav1.TypeMeta

    // SchedulerName is name of the scheduler, used to select which pods
    // will be processed by this scheduler, based on pod's "spec.SchedulerName".
    SchedulerName string
    // AlgorithmSource specifies the scheduler algorithm source.
    AlgorithmSource SchedulerAlgorithmSource
    // RequiredDuringScheduling affinity is not symmetric, but there is an implicit PreferredDuringScheduling affinity rule
    // corresponding to every RequiredDuringScheduling affinity rule.
    // HardPodAffinitySymmetricWeight represents the weight of implicit PreferredDuringScheduling affinity rule, in the range 0-100.
    HardPodAffinitySymmetricWeight int32

    // LeaderElection defines the configuration of leader election client.
    LeaderElection KubeSchedulerLeaderElectionConfiguration

    // ClientConnection specifies the kubeconfig file and client connection
    // settings for the proxy server to use when communicating with the apiserver.
    ClientConnection apimachineryconfig.ClientConnectionConfiguration
    // HealthzBindAddress is the IP address and port for the health check server to serve on,
    // defaulting to 0.0.0.0:10251
    HealthzBindAddress string
    // MetricsBindAddress is the IP address and port for the metrics server to
    // serve on, defaulting to 0.0.0.0:10251.
    MetricsBindAddress string

    // DebuggingConfiguration holds configuration for Debugging related features
    // TODO: We might wanna make this a substruct like Debugging apiserverconfig.DebuggingConfiguration
    apiserverconfig.DebuggingConfiguration

    // DisablePreemption disables the pod preemption feature.
    DisablePreemption bool

    // PercentageOfNodeToScore is the percentage of all nodes that once found feasible
    // for running a pod, the scheduler stops its search for more feasible nodes in
    // the cluster. This helps improve scheduler's performance. Scheduler always tries to find
    // at least "minFeasibleNodesToFind" feasible nodes no matter what the value of this flag is.
    // Example: if the cluster size is 500 nodes and the value of this flag is 30,
    // then scheduler stops finding further feasible nodes once it finds 150 feasible ones.
    // When the value is 0, default percentage (50%) of the nodes will be scored.
    PercentageOfNodesToScore int32

    // DEPRECATED.
    // Indicate the "all topologies" set for empty topologyKey when it's used for PreferredDuringScheduling pod anti-affinity.
    FailureDomains string

    // Duration to wait for a binding operation to complete before timing out
    // Value must be non-negative integer. The value zero indicates no waiting.
    // If this value is nil, the default value will be used.
    BindTimeoutSeconds *int64
}

KubeSchedulerConfiguration configures a scheduler

func (*KubeSchedulerConfiguration) DeepCopy Uses

func (in *KubeSchedulerConfiguration) DeepCopy() *KubeSchedulerConfiguration

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeSchedulerConfiguration.

func (*KubeSchedulerConfiguration) DeepCopyInto Uses

func (in *KubeSchedulerConfiguration) DeepCopyInto(out *KubeSchedulerConfiguration)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*KubeSchedulerConfiguration) DeepCopyObject Uses

func (in *KubeSchedulerConfiguration) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type KubeSchedulerLeaderElectionConfiguration Uses

type KubeSchedulerLeaderElectionConfiguration struct {
    apiserverconfig.LeaderElectionConfiguration
    // LockObjectNamespace defines the namespace of the lock object
    LockObjectNamespace string
    // LockObjectName defines the lock object name
    LockObjectName string
}

KubeSchedulerLeaderElectionConfiguration expands LeaderElectionConfiguration to include scheduler specific configuration.

func (*KubeSchedulerLeaderElectionConfiguration) DeepCopy Uses

func (in *KubeSchedulerLeaderElectionConfiguration) DeepCopy() *KubeSchedulerLeaderElectionConfiguration

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeSchedulerLeaderElectionConfiguration.

func (*KubeSchedulerLeaderElectionConfiguration) DeepCopyInto Uses

func (in *KubeSchedulerLeaderElectionConfiguration) DeepCopyInto(out *KubeSchedulerLeaderElectionConfiguration)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchedulerAlgorithmSource Uses

type SchedulerAlgorithmSource struct {
    // Policy is a policy based algorithm source.
    Policy *SchedulerPolicySource
    // Provider is the name of a scheduling algorithm provider to use.
    Provider *string
}

SchedulerAlgorithmSource is the source of a scheduler algorithm. One source field must be specified, and source fields are mutually exclusive.

func (*SchedulerAlgorithmSource) DeepCopy Uses

func (in *SchedulerAlgorithmSource) DeepCopy() *SchedulerAlgorithmSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulerAlgorithmSource.

func (*SchedulerAlgorithmSource) DeepCopyInto Uses

func (in *SchedulerAlgorithmSource) DeepCopyInto(out *SchedulerAlgorithmSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchedulerPolicyConfigMapSource Uses

type SchedulerPolicyConfigMapSource struct {
    // Namespace is the namespace of the policy config map.
    Namespace string
    // Name is the name of hte policy config map.
    Name string
}

SchedulerPolicyConfigMapSource is a policy serialized into a config map value under the SchedulerPolicyConfigMapKey key.

func (*SchedulerPolicyConfigMapSource) DeepCopy Uses

func (in *SchedulerPolicyConfigMapSource) DeepCopy() *SchedulerPolicyConfigMapSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulerPolicyConfigMapSource.

func (*SchedulerPolicyConfigMapSource) DeepCopyInto Uses

func (in *SchedulerPolicyConfigMapSource) DeepCopyInto(out *SchedulerPolicyConfigMapSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchedulerPolicyFileSource Uses

type SchedulerPolicyFileSource struct {
    // Path is the location of a serialized policy.
    Path string
}

SchedulerPolicyFileSource is a policy serialized to disk and accessed via path.

func (*SchedulerPolicyFileSource) DeepCopy Uses

func (in *SchedulerPolicyFileSource) DeepCopy() *SchedulerPolicyFileSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulerPolicyFileSource.

func (*SchedulerPolicyFileSource) DeepCopyInto Uses

func (in *SchedulerPolicyFileSource) DeepCopyInto(out *SchedulerPolicyFileSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SchedulerPolicySource Uses

type SchedulerPolicySource struct {
    // File is a file policy source.
    File *SchedulerPolicyFileSource
    // ConfigMap is a config map policy source.
    ConfigMap *SchedulerPolicyConfigMapSource
}

SchedulerPolicySource configures a means to obtain a scheduler Policy. One source field must be specified, and source fields are mutually exclusive.

func (*SchedulerPolicySource) DeepCopy Uses

func (in *SchedulerPolicySource) DeepCopy() *SchedulerPolicySource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchedulerPolicySource.

func (*SchedulerPolicySource) DeepCopyInto Uses

func (in *SchedulerPolicySource) DeepCopyInto(out *SchedulerPolicySource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Directories

PathSynopsis
scheme
v1alpha1

Package config imports 5 packages (graph) and is imported by 14 packages. Updated 2018-10-05. Refresh now. Tools for package owners.