service

package
v0.3.46 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 23, 2023 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterAllocationService

type ClusterAllocationService struct {
	// contains filtered or unexported fields
}

func NewClusterAllocationService

func NewClusterAllocationService(
	clusterContext context.ClusterContext,
	eventReporter reporter.EventReporter,
	leaseService LeaseService,
	utilisationService utilisation.UtilisationService,
	submitter job.Submitter,
	etcdHealthMonitor healthmonitor.EtcdLimitHealthMonitor,
	reserved common.ComputeResources,
) *ClusterAllocationService

func (*ClusterAllocationService) AllocateSpareClusterCapacity

func (allocationService *ClusterAllocationService) AllocateSpareClusterCapacity()

type JobLeaseService

type JobLeaseService struct {
	// contains filtered or unexported fields
}

func NewJobLeaseService

func NewJobLeaseService(
	clusterContext context2.ClusterContext,
	queueClient api.AggregatedQueueClient,
	minimumJobSize common.ComputeResources,
	avoidNodeLabelsOnRetry []string,
) *JobLeaseService

func (*JobLeaseService) RenewJobLeases

func (jobLeaseService *JobLeaseService) RenewJobLeases(jobs []*job.RunningJob) ([]*job.RunningJob, error)

func (*JobLeaseService) ReportDone

func (jobLeaseService *JobLeaseService) ReportDone(jobIds []string) error

func (*JobLeaseService) RequestJobLeases

func (jobLeaseService *JobLeaseService) RequestJobLeases(
	availableResource *common.ComputeResources,
	nodes []api.NodeInfo,
	leasedResourceByQueue map[string]common.ComputeResources,
	leasedResourceByQueueAndPriority map[string]map[int32]common.ComputeResources,
) ([]*api.Job, error)

func (*JobLeaseService) ReturnLease

func (jobLeaseService *JobLeaseService) ReturnLease(pod *v1.Pod, reason string, jobRunAttempted bool) error

func (*JobLeaseService) ReturnLeaseById

func (jobLeaseService *JobLeaseService) ReturnLeaseById(jobId string, kubernetesId string, nodeLabelsToAvoid *api.OrderedStringMap, reason string, jobRunAttempted bool) error

type JobManager

type JobManager struct {
	// contains filtered or unexported fields
}

func NewJobManager

func NewJobManager(
	clusterIdentity context2.ClusterIdentity,
	jobContext job.JobContext,
	eventReporter reporter.EventReporter,
	jobLeaseService LeaseService,
) *JobManager

func (*JobManager) ManageJobLeases

func (m *JobManager) ManageJobLeases()

type LeaseService

type LeaseService interface {
	ReturnLease(pod *v1.Pod, reason string, jobRunAttempted bool) error
	RequestJobLeases(
		availableResource *common.ComputeResources,
		nodes []api.NodeInfo,
		leasedResourceByQueue map[string]common.ComputeResources,
		leasedResourceByQueueAndPriority map[string]map[int32]common.ComputeResources,
	) ([]*api.Job, error)
	RenewJobLeases(jobs []*job.RunningJob) ([]*job.RunningJob, error)
	ReportDone(jobIds []string) error
}

type ResourceCleanupService

type ResourceCleanupService struct {
	// contains filtered or unexported fields
}

func NewResourceCleanupService

func NewResourceCleanupService(
	clusterContext clusterContext.ClusterContext,
	kubernetesConfiguration configuration.KubernetesConfiguration,
) *ResourceCleanupService

func (*ResourceCleanupService) CleanupResources

func (r *ResourceCleanupService) CleanupResources()

CleanupResources

  • This function finds and delete old resources. It does this in two ways:
  • - By deleting all expired terminated pods
  • - Deleting non-expired terminated pods when then MaxTerminatedPods limit is exceeded

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL