Documentation ¶
Index ¶
- Constants
- Variables
- func Convert_scheduling_Affinity_To_v1beta1_Affinity(in *scheduling.Affinity, out *Affinity, s conversion.Scope) error
- func Convert_scheduling_Cluster_To_v1beta1_Cluster(in *scheduling.Cluster, out *Cluster, s conversion.Scope) error
- func Convert_scheduling_Guarantee_To_v1beta1_Guarantee(in *scheduling.Guarantee, out *Guarantee, s conversion.Scope) error
- func Convert_scheduling_NodeGroupAffinity_To_v1beta1_NodeGroupAffinity(in *scheduling.NodeGroupAffinity, out *NodeGroupAffinity, s conversion.Scope) error
- func Convert_scheduling_NodeGroupAntiAffinity_To_v1beta1_NodeGroupAntiAffinity(in *scheduling.NodeGroupAntiAffinity, out *NodeGroupAntiAffinity, ...) error
- func Convert_scheduling_PodGroupCondition_To_v1beta1_PodGroupCondition(in *scheduling.PodGroupCondition, out *PodGroupCondition, s conversion.Scope) error
- func Convert_scheduling_PodGroupList_To_v1beta1_PodGroupList(in *scheduling.PodGroupList, out *PodGroupList, s conversion.Scope) error
- func Convert_scheduling_PodGroupSpec_To_v1beta1_PodGroupSpec(in *scheduling.PodGroupSpec, out *PodGroupSpec, s conversion.Scope) error
- func Convert_scheduling_PodGroupStatus_To_v1beta1_PodGroupStatus(in *scheduling.PodGroupStatus, out *PodGroupStatus, s conversion.Scope) error
- func Convert_scheduling_PodGroup_To_v1beta1_PodGroup(in *scheduling.PodGroup, out *PodGroup, s conversion.Scope) error
- func Convert_scheduling_QueueList_To_v1beta1_QueueList(in *scheduling.QueueList, out *QueueList, s conversion.Scope) error
- func Convert_scheduling_QueueSpec_To_v1beta1_QueueSpec(in *scheduling.QueueSpec, out *QueueSpec, s conversion.Scope) error
- func Convert_scheduling_QueueStatus_To_v1beta1_QueueStatus(in *scheduling.QueueStatus, out *QueueStatus, s conversion.Scope) error
- func Convert_scheduling_Queue_To_v1beta1_Queue(in *scheduling.Queue, out *Queue, s conversion.Scope) error
- func Convert_scheduling_Reservation_To_v1beta1_Reservation(in *scheduling.Reservation, out *Reservation, s conversion.Scope) error
- func Convert_v1beta1_Affinity_To_scheduling_Affinity(in *Affinity, out *scheduling.Affinity, s conversion.Scope) error
- func Convert_v1beta1_Cluster_To_scheduling_Cluster(in *Cluster, out *scheduling.Cluster, s conversion.Scope) error
- func Convert_v1beta1_Guarantee_To_scheduling_Guarantee(in *Guarantee, out *scheduling.Guarantee, s conversion.Scope) error
- func Convert_v1beta1_NodeGroupAffinity_To_scheduling_NodeGroupAffinity(in *NodeGroupAffinity, out *scheduling.NodeGroupAffinity, s conversion.Scope) error
- func Convert_v1beta1_NodeGroupAntiAffinity_To_scheduling_NodeGroupAntiAffinity(in *NodeGroupAntiAffinity, out *scheduling.NodeGroupAntiAffinity, ...) error
- func Convert_v1beta1_PodGroupCondition_To_scheduling_PodGroupCondition(in *PodGroupCondition, out *scheduling.PodGroupCondition, s conversion.Scope) error
- func Convert_v1beta1_PodGroupList_To_scheduling_PodGroupList(in *PodGroupList, out *scheduling.PodGroupList, s conversion.Scope) error
- func Convert_v1beta1_PodGroupSpec_To_scheduling_PodGroupSpec(in *PodGroupSpec, out *scheduling.PodGroupSpec, s conversion.Scope) error
- func Convert_v1beta1_PodGroupStatus_To_scheduling_PodGroupStatus(in *PodGroupStatus, out *scheduling.PodGroupStatus, s conversion.Scope) error
- func Convert_v1beta1_PodGroup_To_scheduling_PodGroup(in *PodGroup, out *scheduling.PodGroup, s conversion.Scope) error
- func Convert_v1beta1_QueueList_To_scheduling_QueueList(in *QueueList, out *scheduling.QueueList, s conversion.Scope) error
- func Convert_v1beta1_QueueSpec_To_scheduling_QueueSpec(in *QueueSpec, out *scheduling.QueueSpec, s conversion.Scope) error
- func Convert_v1beta1_QueueStatus_To_scheduling_QueueStatus(in *QueueStatus, out *scheduling.QueueStatus, s conversion.Scope) error
- func Convert_v1beta1_Queue_To_scheduling_Queue(in *Queue, out *scheduling.Queue, s conversion.Scope) error
- func Convert_v1beta1_Reservation_To_scheduling_Reservation(in *Reservation, out *scheduling.Reservation, s conversion.Scope) error
- func RegisterConversions(s *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- type Affinity
- type Cluster
- type Guarantee
- type NodeGroupAffinity
- type NodeGroupAntiAffinity
- type PodGroup
- type PodGroupCondition
- type PodGroupConditionDetail
- type PodGroupConditionType
- type PodGroupList
- type PodGroupPhase
- type PodGroupSpec
- type PodGroupStatus
- type Queue
- type QueueAction
- type QueueEvent
- type QueueList
- type QueueSpec
- type QueueState
- type QueueStatus
- type Reservation
Constants ¶
const ( // GroupName is the group name used in this package. GroupName = "scheduling.volcano.sh" // GroupVersion is the version of scheduling group GroupVersion = "v1beta1" )
const ( // PodFailedReason is probed if pod of PodGroup failed PodFailedReason string = "PodFailed" // PodDeletedReason is probed if pod of PodGroup deleted PodDeletedReason string = "PodDeleted" // NotEnoughResourcesReason is probed if there're not enough resources to schedule pods NotEnoughResourcesReason string = "NotEnoughResources" // NotEnoughPodsReason is probed if there're not enough tasks compared to `spec.minMember` NotEnoughPodsReason string = "NotEnoughTasks" // NotEnoughPodsOfTaskReason is probed if there're not enough pods of task compared to `spec.minTaskMember` NotEnoughPodsOfTaskReason string = "NotEnoughPodsOfTask" )
const AnnotationPrefix = "volcano.sh/"
AnnotationPrefix is the key prefix to pick annotations from upper resource to podgroup
const CooldownTime = "volcano.sh/cooldown-time"
CooldownTime is the key of cooldown-time, value's format "600s","10m" Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
const (
// DefaultQueue constant stores the name of the queue as "default"
DefaultQueue = "default"
)
JDBMaxUnavailable is the key of max unavailable pod number
const JDBMinAvailable = "volcano.sh/jdb-min-available"
JDBMinAvailable is the key of min available pod number
const JobWaitingTime = "volcano.sh/sla-waiting-time"
JobWaitingTime is the key of sla plugin to set maximum waiting time that a job could stay Pending in service level agreement
const KubeGroupNameAnnotationKey = "scheduling.k8s.io/group-name"
KubeGroupNameAnnotationKey is the annotation key of Pod to identify which PodGroup it belongs to.
const KubeHierarchyAnnotationKey = "volcano.sh/hierarchy"
const KubeHierarchyWeightAnnotationKey = "volcano.sh/hierarchy-weights"
const NumaPolicyKey = "volcano.sh/numa-topology-policy"
NumaPolicyKey is the key of pod numa-topology policy
const PodPreemptable = "volcano.sh/preemptable"
PodPreemptable is the key of preemptable
const PodQosLevel = "volcano.sh/qos-level"
PodQosLevel is the key of pod qos level
const QueueNameAnnotationKey = GroupName + "/queue-name"
QueueNameAnnotationKey is the annotation key of Pod to identify which queue it belongs to.
const RevocableZone = "volcano.sh/revocable-zone"
RevocableZone is the key of revocable-zone
const TopologyDecisionAnnotation = "volcano.sh/topology-decision"
TopologyDecisionAnnotation is the key of topology decision about pod request resource
const VolcanoGroupMinResourcesAnnotationKey = GroupName + "/group-min-resources"
VolcanoGroupMinResourcesAnnotationKey is the annotation key of PodGroup's PodGroup.Spec.MinResources which PodGroup it belongs to.
const VolcanoGroupNameAnnotationKey = GroupName + "/group-name"
VolcanoGroupNameAnnotationKey is the annotation key of Pod to identify which PodGroup it belongs to.
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion}
SchemeGroupVersion is the group version used to register these objects.
Functions ¶
func Convert_scheduling_Affinity_To_v1beta1_Affinity ¶ added in v1.7.0
func Convert_scheduling_Affinity_To_v1beta1_Affinity(in *scheduling.Affinity, out *Affinity, s conversion.Scope) error
Convert_scheduling_Affinity_To_v1beta1_Affinity is an autogenerated conversion function.
func Convert_scheduling_Cluster_To_v1beta1_Cluster ¶
func Convert_scheduling_Cluster_To_v1beta1_Cluster(in *scheduling.Cluster, out *Cluster, s conversion.Scope) error
Convert_scheduling_Cluster_To_v1beta1_Cluster is an autogenerated conversion function.
func Convert_scheduling_Guarantee_To_v1beta1_Guarantee ¶
func Convert_scheduling_Guarantee_To_v1beta1_Guarantee(in *scheduling.Guarantee, out *Guarantee, s conversion.Scope) error
Convert_scheduling_Guarantee_To_v1beta1_Guarantee is an autogenerated conversion function.
func Convert_scheduling_NodeGroupAffinity_To_v1beta1_NodeGroupAffinity ¶ added in v1.7.0
func Convert_scheduling_NodeGroupAffinity_To_v1beta1_NodeGroupAffinity(in *scheduling.NodeGroupAffinity, out *NodeGroupAffinity, s conversion.Scope) error
Convert_scheduling_NodeGroupAffinity_To_v1beta1_NodeGroupAffinity is an autogenerated conversion function.
func Convert_scheduling_NodeGroupAntiAffinity_To_v1beta1_NodeGroupAntiAffinity ¶ added in v1.7.0
func Convert_scheduling_NodeGroupAntiAffinity_To_v1beta1_NodeGroupAntiAffinity(in *scheduling.NodeGroupAntiAffinity, out *NodeGroupAntiAffinity, s conversion.Scope) error
Convert_scheduling_NodeGroupAntiAffinity_To_v1beta1_NodeGroupAntiAffinity is an autogenerated conversion function.
func Convert_scheduling_PodGroupCondition_To_v1beta1_PodGroupCondition ¶
func Convert_scheduling_PodGroupCondition_To_v1beta1_PodGroupCondition(in *scheduling.PodGroupCondition, out *PodGroupCondition, s conversion.Scope) error
Convert_scheduling_PodGroupCondition_To_v1beta1_PodGroupCondition is an autogenerated conversion function.
func Convert_scheduling_PodGroupList_To_v1beta1_PodGroupList ¶
func Convert_scheduling_PodGroupList_To_v1beta1_PodGroupList(in *scheduling.PodGroupList, out *PodGroupList, s conversion.Scope) error
Convert_scheduling_PodGroupList_To_v1beta1_PodGroupList is an autogenerated conversion function.
func Convert_scheduling_PodGroupSpec_To_v1beta1_PodGroupSpec ¶
func Convert_scheduling_PodGroupSpec_To_v1beta1_PodGroupSpec(in *scheduling.PodGroupSpec, out *PodGroupSpec, s conversion.Scope) error
Convert_scheduling_PodGroupSpec_To_v1beta1_PodGroupSpec is an autogenerated conversion function.
func Convert_scheduling_PodGroupStatus_To_v1beta1_PodGroupStatus ¶
func Convert_scheduling_PodGroupStatus_To_v1beta1_PodGroupStatus(in *scheduling.PodGroupStatus, out *PodGroupStatus, s conversion.Scope) error
Convert_scheduling_PodGroupStatus_To_v1beta1_PodGroupStatus is an autogenerated conversion function.
func Convert_scheduling_PodGroup_To_v1beta1_PodGroup ¶
func Convert_scheduling_PodGroup_To_v1beta1_PodGroup(in *scheduling.PodGroup, out *PodGroup, s conversion.Scope) error
Convert_scheduling_PodGroup_To_v1beta1_PodGroup is an autogenerated conversion function.
func Convert_scheduling_QueueList_To_v1beta1_QueueList ¶
func Convert_scheduling_QueueList_To_v1beta1_QueueList(in *scheduling.QueueList, out *QueueList, s conversion.Scope) error
Convert_scheduling_QueueList_To_v1beta1_QueueList is an autogenerated conversion function.
func Convert_scheduling_QueueSpec_To_v1beta1_QueueSpec ¶
func Convert_scheduling_QueueSpec_To_v1beta1_QueueSpec(in *scheduling.QueueSpec, out *QueueSpec, s conversion.Scope) error
func Convert_scheduling_QueueStatus_To_v1beta1_QueueStatus ¶
func Convert_scheduling_QueueStatus_To_v1beta1_QueueStatus(in *scheduling.QueueStatus, out *QueueStatus, s conversion.Scope) error
Convert_scheduling_QueueStatus_To_v1beta1_QueueStatus is an autogenerated conversion function.
func Convert_scheduling_Queue_To_v1beta1_Queue ¶
func Convert_scheduling_Queue_To_v1beta1_Queue(in *scheduling.Queue, out *Queue, s conversion.Scope) error
Convert_scheduling_Queue_To_v1beta1_Queue is an autogenerated conversion function.
func Convert_scheduling_Reservation_To_v1beta1_Reservation ¶
func Convert_scheduling_Reservation_To_v1beta1_Reservation(in *scheduling.Reservation, out *Reservation, s conversion.Scope) error
Convert_scheduling_Reservation_To_v1beta1_Reservation is an autogenerated conversion function.
func Convert_v1beta1_Affinity_To_scheduling_Affinity ¶ added in v1.7.0
func Convert_v1beta1_Affinity_To_scheduling_Affinity(in *Affinity, out *scheduling.Affinity, s conversion.Scope) error
Convert_v1beta1_Affinity_To_scheduling_Affinity is an autogenerated conversion function.
func Convert_v1beta1_Cluster_To_scheduling_Cluster ¶
func Convert_v1beta1_Cluster_To_scheduling_Cluster(in *Cluster, out *scheduling.Cluster, s conversion.Scope) error
Convert_v1beta1_Cluster_To_scheduling_Cluster is an autogenerated conversion function.
func Convert_v1beta1_Guarantee_To_scheduling_Guarantee ¶
func Convert_v1beta1_Guarantee_To_scheduling_Guarantee(in *Guarantee, out *scheduling.Guarantee, s conversion.Scope) error
Convert_v1beta1_Guarantee_To_scheduling_Guarantee is an autogenerated conversion function.
func Convert_v1beta1_NodeGroupAffinity_To_scheduling_NodeGroupAffinity ¶ added in v1.7.0
func Convert_v1beta1_NodeGroupAffinity_To_scheduling_NodeGroupAffinity(in *NodeGroupAffinity, out *scheduling.NodeGroupAffinity, s conversion.Scope) error
Convert_v1beta1_NodeGroupAffinity_To_scheduling_NodeGroupAffinity is an autogenerated conversion function.
func Convert_v1beta1_NodeGroupAntiAffinity_To_scheduling_NodeGroupAntiAffinity ¶ added in v1.7.0
func Convert_v1beta1_NodeGroupAntiAffinity_To_scheduling_NodeGroupAntiAffinity(in *NodeGroupAntiAffinity, out *scheduling.NodeGroupAntiAffinity, s conversion.Scope) error
Convert_v1beta1_NodeGroupAntiAffinity_To_scheduling_NodeGroupAntiAffinity is an autogenerated conversion function.
func Convert_v1beta1_PodGroupCondition_To_scheduling_PodGroupCondition ¶
func Convert_v1beta1_PodGroupCondition_To_scheduling_PodGroupCondition(in *PodGroupCondition, out *scheduling.PodGroupCondition, s conversion.Scope) error
Convert_v1beta1_PodGroupCondition_To_scheduling_PodGroupCondition is an autogenerated conversion function.
func Convert_v1beta1_PodGroupList_To_scheduling_PodGroupList ¶
func Convert_v1beta1_PodGroupList_To_scheduling_PodGroupList(in *PodGroupList, out *scheduling.PodGroupList, s conversion.Scope) error
Convert_v1beta1_PodGroupList_To_scheduling_PodGroupList is an autogenerated conversion function.
func Convert_v1beta1_PodGroupSpec_To_scheduling_PodGroupSpec ¶
func Convert_v1beta1_PodGroupSpec_To_scheduling_PodGroupSpec(in *PodGroupSpec, out *scheduling.PodGroupSpec, s conversion.Scope) error
Convert_v1beta1_PodGroupSpec_To_scheduling_PodGroupSpec is an autogenerated conversion function.
func Convert_v1beta1_PodGroupStatus_To_scheduling_PodGroupStatus ¶
func Convert_v1beta1_PodGroupStatus_To_scheduling_PodGroupStatus(in *PodGroupStatus, out *scheduling.PodGroupStatus, s conversion.Scope) error
Convert_v1beta1_PodGroupStatus_To_scheduling_PodGroupStatus is an autogenerated conversion function.
func Convert_v1beta1_PodGroup_To_scheduling_PodGroup ¶
func Convert_v1beta1_PodGroup_To_scheduling_PodGroup(in *PodGroup, out *scheduling.PodGroup, s conversion.Scope) error
Convert_v1beta1_PodGroup_To_scheduling_PodGroup is an autogenerated conversion function.
func Convert_v1beta1_QueueList_To_scheduling_QueueList ¶
func Convert_v1beta1_QueueList_To_scheduling_QueueList(in *QueueList, out *scheduling.QueueList, s conversion.Scope) error
Convert_v1beta1_QueueList_To_scheduling_QueueList is an autogenerated conversion function.
func Convert_v1beta1_QueueSpec_To_scheduling_QueueSpec ¶
func Convert_v1beta1_QueueSpec_To_scheduling_QueueSpec(in *QueueSpec, out *scheduling.QueueSpec, s conversion.Scope) error
Convert_v1beta1_QueueSpec_To_scheduling_QueueSpec is an autogenerated conversion function.
func Convert_v1beta1_QueueStatus_To_scheduling_QueueStatus ¶
func Convert_v1beta1_QueueStatus_To_scheduling_QueueStatus(in *QueueStatus, out *scheduling.QueueStatus, s conversion.Scope) error
Convert_v1beta1_QueueStatus_To_scheduling_QueueStatus is an autogenerated conversion function.
func Convert_v1beta1_Queue_To_scheduling_Queue ¶
func Convert_v1beta1_Queue_To_scheduling_Queue(in *Queue, out *scheduling.Queue, s conversion.Scope) error
Convert_v1beta1_Queue_To_scheduling_Queue is an autogenerated conversion function.
func Convert_v1beta1_Reservation_To_scheduling_Reservation ¶
func Convert_v1beta1_Reservation_To_scheduling_Reservation(in *Reservation, out *scheduling.Reservation, s conversion.Scope) error
Convert_v1beta1_Reservation_To_scheduling_Reservation is an autogenerated conversion function.
func RegisterConversions ¶
RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type Affinity ¶ added in v1.7.0
type Affinity struct { // Describes nodegroup affinity scheduling rules for the queue(e.g. putting pods of the queue in the nodes of the nodegroup) // +optional NodeGroupAffinity *NodeGroupAffinity `json:"nodeGroupAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeGroupAffinity"` // Describes nodegroup anti-affinity scheduling rules for the queue(e.g. avoid putting pods of the queue in the nodes of the nodegroup). // +optional NodeGroupAntiAffinity *NodeGroupAntiAffinity `json:"nodeGroupAntiAffinity,omitempty" protobuf:"bytes,2,opt,name=nodeGroupAntiAffinity"` }
Affinity is a group of affinity scheduling rules.
func (*Affinity) DeepCopy ¶ added in v1.7.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Affinity.
func (*Affinity) DeepCopyInto ¶ added in v1.7.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct { Name string `json:"name,omitempty" protobuf:"bytes,1,opt,name=name"` Weight int32 `json:"weight,omitempty" protobuf:"bytes,2,opt,name=weight"` Capacity v1.ResourceList `json:"capacity,omitempty" protobuf:"bytes,3,opt,name=capacity"` }
CluterSpec represents the template of Cluster
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Guarantee ¶
type Guarantee struct { // The amount of cluster resource reserved for queue. Just set either `percentage` or `resource` // +optional Resource v1.ResourceList `json:"resource,omitempty" protobuf:"bytes,3,opt,name=resource"` }
Guarantee represents configuration of queue resource reservation
func (*Guarantee) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Guarantee.
func (*Guarantee) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupAffinity ¶ added in v1.7.0
type NodeGroupAffinity struct { // +optional RequiredDuringSchedulingIgnoredDuringExecution []string `` /* 138-byte string literal not displayed */ // +optional PreferredDuringSchedulingIgnoredDuringExecution []string `` /* 140-byte string literal not displayed */ }
func (*NodeGroupAffinity) DeepCopy ¶ added in v1.7.0
func (in *NodeGroupAffinity) DeepCopy() *NodeGroupAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupAffinity.
func (*NodeGroupAffinity) DeepCopyInto ¶ added in v1.7.0
func (in *NodeGroupAffinity) DeepCopyInto(out *NodeGroupAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupAntiAffinity ¶ added in v1.7.0
type NodeGroupAntiAffinity struct { // +optional RequiredDuringSchedulingIgnoredDuringExecution []string `` /* 138-byte string literal not displayed */ // +optional PreferredDuringSchedulingIgnoredDuringExecution []string `` /* 140-byte string literal not displayed */ }
func (*NodeGroupAntiAffinity) DeepCopy ¶ added in v1.7.0
func (in *NodeGroupAntiAffinity) DeepCopy() *NodeGroupAntiAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupAntiAffinity.
func (*NodeGroupAntiAffinity) DeepCopyInto ¶ added in v1.7.0
func (in *NodeGroupAntiAffinity) DeepCopyInto(out *NodeGroupAntiAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodGroup ¶
type PodGroup struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod group. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec PodGroupSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status represents the current information about a pod group. // This data may not be up to date. // +optional Status PodGroupStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` }
PodGroup is a collection of Pod; used for batch workload.
func (*PodGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGroup.
func (*PodGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodGroup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodGroupCondition ¶
type PodGroupCondition struct { // Type is the type of the condition Type PodGroupConditionType `json:"type,omitempty" protobuf:"bytes,1,opt,name=type"` // Status is the status of the condition. Status v1.ConditionStatus `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` // The ID of condition transition. TransitionID string `json:"transitionID,omitempty" protobuf:"bytes,3,opt,name=transitionID"` // Last time the phase transitioned from another to current phase. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,4,opt,name=lastTransitionTime"` // Unique, one-word, CamelCase reason for the phase's last transition. // +optional Reason string `json:"reason,omitempty" protobuf:"bytes,5,opt,name=reason"` // Human-readable message indicating details about last transition. // +optional Message string `json:"message,omitempty" protobuf:"bytes,6,opt,name=message"` }
PodGroupCondition contains details for the current state of this pod group.
func (*PodGroupCondition) DeepCopy ¶
func (in *PodGroupCondition) DeepCopy() *PodGroupCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGroupCondition.
func (*PodGroupCondition) DeepCopyInto ¶
func (in *PodGroupCondition) DeepCopyInto(out *PodGroupCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodGroupConditionDetail ¶
type PodGroupConditionDetail string
const ( // PodGroupReady is that PodGroup has reached scheduling restriction PodGroupReady PodGroupConditionDetail = "pod group is ready" // PodGroupNotReady is that PodGroup has not yet reached the scheduling restriction PodGroupNotReady PodGroupConditionDetail = "pod group is not ready" )
type PodGroupConditionType ¶
type PodGroupConditionType string
const ( // PodGroupUnschedulableType is Unschedulable event type PodGroupUnschedulableType PodGroupConditionType = "Unschedulable" // PodGroupScheduled is scheduled event type PodGroupScheduled PodGroupConditionType = "Scheduled" )
type PodGroupList ¶
type PodGroupList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // items is the list of PodGroup Items []PodGroup `json:"items" protobuf:"bytes,2,rep,name=items"` }
PodGroupList is a collection of pod groups.
func (*PodGroupList) DeepCopy ¶
func (in *PodGroupList) DeepCopy() *PodGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGroupList.
func (*PodGroupList) DeepCopyInto ¶
func (in *PodGroupList) DeepCopyInto(out *PodGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodGroupList) DeepCopyObject ¶
func (in *PodGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodGroupPhase ¶
type PodGroupPhase string
PodGroupPhase is the phase of a pod group at the current time.
const ( // PodGroupPending means the pod group has been accepted by the system, but scheduler can not allocate // enough resources to it. PodGroupPending PodGroupPhase = "Pending" // PodGroupRunning means `spec.minMember` pods of PodGroup has been in running phase. PodGroupRunning PodGroupPhase = "Running" // PodGroupUnknown means part of `spec.minMember` pods are running but the other part can not // be scheduled, e.g. not enough resource; scheduler will wait for related controller to recover it. PodGroupUnknown PodGroupPhase = "Unknown" // PodGroupInqueue means controllers can start to create pods, // is a new state between PodGroupPending and PodGroupRunning PodGroupInqueue PodGroupPhase = "Inqueue" // PodGroupCompleted means all the pods of PodGroup are completed PodGroupCompleted PodGroupPhase = "Completed" )
These are the valid phase of podGroups.
type PodGroupSpec ¶
type PodGroupSpec struct { // MinMember defines the minimal number of members/tasks to run the pod group; // if there's not enough resources to start all tasks, the scheduler // will not start anyone. MinMember int32 `json:"minMember,omitempty" protobuf:"bytes,1,opt,name=minMember"` // MinTaskMember defines the minimal number of pods to run each task in the pod group; // if there's not enough resources to start each task, the scheduler // will not start anyone. MinTaskMember map[string]int32 `json:"minTaskMember,omitempty" protobuf:"bytes,1,opt,name=minTaskMember"` // Queue defines the queue to allocate resource for PodGroup; if queue does not exist, // the PodGroup will not be scheduled. Defaults to `default` Queue with the lowest weight. // +optional Queue string `json:"queue,omitempty" protobuf:"bytes,2,opt,name=queue"` // If specified, indicates the PodGroup's priority. "system-node-critical" and // "system-cluster-critical" are two special keywords which indicate the // highest priorities with the former being the highest priority. Any other // name must be defined by creating a PriorityClass object with that name. // If not specified, the PodGroup priority will be default or zero if there is no // default. // +optional PriorityClassName string `json:"priorityClassName,omitempty" protobuf:"bytes,3,opt,name=priorityClassName"` // MinResources defines the minimal resource of members/tasks to run the pod group; // if there's not enough resources to start all tasks, the scheduler // will not start anyone. MinResources *v1.ResourceList `json:"minResources,omitempty" protobuf:"bytes,4,opt,name=minResources"` }
PodGroupSpec represents the template of a pod group.
func (*PodGroupSpec) DeepCopy ¶
func (in *PodGroupSpec) DeepCopy() *PodGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGroupSpec.
func (*PodGroupSpec) DeepCopyInto ¶
func (in *PodGroupSpec) DeepCopyInto(out *PodGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodGroupStatus ¶
type PodGroupStatus struct { // Current phase of PodGroup. Phase PodGroupPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase"` // The conditions of PodGroup. // +optional Conditions []PodGroupCondition `json:"conditions,omitempty" protobuf:"bytes,2,opt,name=conditions"` // The number of actively running pods. // +optional Running int32 `json:"running,omitempty" protobuf:"bytes,3,opt,name=running"` // The number of pods which reached phase Succeeded. // +optional Succeeded int32 `json:"succeeded,omitempty" protobuf:"bytes,4,opt,name=succeeded"` // The number of pods which reached phase Failed. // +optional Failed int32 `json:"failed,omitempty" protobuf:"bytes,5,opt,name=failed"` }
PodGroupStatus represents the current state of a pod group.
func (*PodGroupStatus) DeepCopy ¶
func (in *PodGroupStatus) DeepCopy() *PodGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGroupStatus.
func (*PodGroupStatus) DeepCopyInto ¶
func (in *PodGroupStatus) DeepCopyInto(out *PodGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Queue ¶
type Queue struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the queue. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec QueueSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // The status of queue. // +optional Status QueueStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` }
Queue is a queue of PodGroup.
func (*Queue) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Queue.
func (*Queue) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Queue) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QueueAction ¶
type QueueAction string
QueueAction is the action that queue controller will take according to the event.
const ( // SyncQueueAction is the action to sync queue status. SyncQueueAction QueueAction = "SyncQueue" // OpenQueueAction is the action to open queue OpenQueueAction QueueAction = "OpenQueue" // CloseQueueAction is the action to close queue CloseQueueAction QueueAction = "CloseQueue" )
type QueueEvent ¶
type QueueEvent string
QueueEvent represent the phase of queue.
const ( // QueueOutOfSyncEvent is triggered if PodGroup/Queue were updated QueueOutOfSyncEvent QueueEvent = "OutOfSync" // QueueCommandIssuedEvent is triggered if a command is raised by user QueueCommandIssuedEvent QueueEvent = "CommandIssued" )
type QueueList ¶
type QueueList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // items is the list of PodGroup Items []Queue `json:"items" protobuf:"bytes,2,rep,name=items"` }
QueueList is a collection of queues.
func (*QueueList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueList.
func (*QueueList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QueueList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QueueSpec ¶
type QueueSpec struct { Weight int32 `json:"weight,omitempty" protobuf:"bytes,1,opt,name=weight"` Capability v1.ResourceList `json:"capability,omitempty" protobuf:"bytes,2,opt,name=capability"` // Reclaimable indicate whether the queue can be reclaimed by other queue Reclaimable *bool `json:"reclaimable,omitempty" protobuf:"bytes,3,opt,name=reclaimable"` // extendCluster indicate the jobs in this Queue will be dispatched to these clusters. ExtendClusters []Cluster `json:"extendClusters,omitempty" protobuf:"bytes,4,opt,name=extendClusters"` // Guarantee indicate configuration about resource reservation Guarantee Guarantee `json:"guarantee,omitempty" protobuf:"bytes,5,opt,name=guarantee"` // If specified, the pod owned by the queue will be scheduled with constraint // +optional Affinity *Affinity `json:"affinity,omitempty" protobuf:"bytes,6,opt,name=affinity"` // Type define the type of queue Type string `json:"type,omitempty" protobuf:"bytes,7,opt,name=type"` // Parent define the parent of queue // +optional Parent string `json:"parent,omitempty" protobuf:"bytes,8,opt,name=parent"` // The amount of resources configured by the user. This part of resource can be shared with other queues and reclaimed back. // +optional Deserved v1.ResourceList `json:"deserved,omitempty" protobuf:"bytes,9,opt,name=deserved"` }
QueueSpec represents the template of Queue.
func (*QueueSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueSpec.
func (*QueueSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueueState ¶
type QueueState string
QueueState is state type of queue.
const ( // QueueStateOpen indicate `Open` state of queue QueueStateOpen QueueState = "Open" // QueueStateClosed indicate `Closed` state of queue QueueStateClosed QueueState = "Closed" // QueueStateClosing indicate `Closing` state of queue QueueStateClosing QueueState = "Closing" // QueueStateUnknown indicate `Unknown` state of queue QueueStateUnknown QueueState = "Unknown" )
type QueueStatus ¶
type QueueStatus struct { // State is state of queue State QueueState `json:"state,omitempty" protobuf:"bytes,1,opt,name=state"` // The number of 'Unknown' PodGroup in this queue. Unknown int32 `json:"unknown,omitempty" protobuf:"bytes,2,opt,name=unknown"` // The number of 'Pending' PodGroup in this queue. Pending int32 `json:"pending,omitempty" protobuf:"bytes,3,opt,name=pending"` // The number of 'Running' PodGroup in this queue. Running int32 `json:"running,omitempty" protobuf:"bytes,4,opt,name=running"` // The number of `Inqueue` PodGroup in this queue. Inqueue int32 `json:"inqueue,omitempty" protobuf:"bytes,5,opt,name=inqueue"` // The number of `Completed` PodGroup in this queue. Completed int32 `json:"completed,omitempty" protobuf:"bytes,6,opt,name=completed"` // Reservation is the profile of resource reservation for queue Reservation Reservation `json:"reservation,omitempty" protobuf:"bytes,7,opt,name=reservation"` // Allocated is allocated resources in queue Allocated v1.ResourceList `json:"allocated" protobuf:"bytes,8,opt,name=allocated"` }
QueueStatus represents the status of Queue.
func (*QueueStatus) DeepCopy ¶
func (in *QueueStatus) DeepCopy() *QueueStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueStatus.
func (*QueueStatus) DeepCopyInto ¶
func (in *QueueStatus) DeepCopyInto(out *QueueStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Reservation ¶
type Reservation struct { // Nodes are Locked nodes for queue // +optional Nodes []string `json:"nodes,omitempty" protobuf:"bytes,1,opt,name=nodes"` // Resource is a list of total idle resource in locked nodes. // +optional Resource v1.ResourceList `json:"resource,omitempty" protobuf:"bytes,2,opt,name=resource"` }
Reservation represents current condition about resource reservation
func (*Reservation) DeepCopy ¶
func (in *Reservation) DeepCopy() *Reservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Reservation.
func (*Reservation) DeepCopyInto ¶
func (in *Reservation) DeepCopyInto(out *Reservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.