service

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2024 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

View Source
const (
	UnableToSchedule podIssueType = iota
	StuckStartingUp
	StuckTerminating
	ActiveDeadlineExceeded
	ExternallyDeleted
	ErrorDuringIssueHandling
)

Variables

This section is empty.

Functions

func ExtractEssentialJobMetadata added in v0.3.57

func ExtractEssentialJobMetadata(jobRun *executorapi.JobRunLease) (*job.RunMeta, error)

Types

type ClusterAllocationService

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

func NewClusterAllocationService

func NewClusterAllocationService(
	clusterId executorContext.ClusterIdentity,
	eventReporter reporter.EventReporter,
	jobRunStateManager job.RunStateStore,
	submitter job.Submitter,
	clusterHealthMonitor healthmonitor.HealthMonitor,
) *ClusterAllocationService

func (*ClusterAllocationService) AllocateSpareClusterCapacity

func (allocationService *ClusterAllocationService) AllocateSpareClusterCapacity()

type ClusterAllocator added in v0.3.47

type ClusterAllocator interface {
	AllocateSpareClusterCapacity()
}

type IssueHandler added in v0.3.77

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

func NewIssueHandler added in v0.3.77

func NewIssueHandler(
	jobRunState job.RunStateStore,
	clusterContext executorContext.ClusterContext,
	eventReporter reporter.EventReporter,
	stateChecksConfig configuration.StateChecksConfiguration,
	pendingPodChecker podchecks.PodChecker,
	stuckTerminatingPodExpiry time.Duration,
) (*IssueHandler, error)

func (*IssueHandler) HandlePodIssues added in v0.3.77

func (p *IssueHandler) HandlePodIssues()

type JobLeaseRequester added in v0.3.47

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

func NewJobLeaseRequester added in v0.3.47

func NewJobLeaseRequester(
	executorApiClient executorapi.ExecutorApiClient,
	clusterIdentity clusterContext.ClusterIdentity,
	minimumJobSize armadaresource.ComputeResources,
) *JobLeaseRequester

func (*JobLeaseRequester) LeaseJobRuns added in v0.3.47

func (requester *JobLeaseRequester) LeaseJobRuns(ctx *armadacontext.Context, request *LeaseRequest) (*LeaseResponse, error)

type JobRequester added in v0.3.57

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

func NewJobRequester added in v0.3.57

func NewJobRequester(
	clusterId executorContext.ClusterIdentity,
	eventReporter reporter.EventReporter,
	leaseRequester LeaseRequester,
	jobRunStateStore job.RunStateStore,
	utilisationService utilisation.UtilisationService,
	podDefaults *configuration.PodDefaults,
	maxLeasedJobs int,
) *JobRequester

func (*JobRequester) RequestJobsRuns added in v0.3.57

func (r *JobRequester) RequestJobsRuns()

type LeaseRequest added in v0.3.57

type LeaseRequest struct {
	AvailableResource   armadaresource.ComputeResources
	Nodes               []*executorapi.NodeInfo
	UnassignedJobRunIds []armadaevents.Uuid
	MaxJobsToLease      uint32
}

type LeaseRequester added in v0.3.47

type LeaseRequester interface {
	LeaseJobRuns(ctx *armadacontext.Context, request *LeaseRequest) (*LeaseResponse, error)
}

type LeaseResponse added in v0.3.57

type LeaseResponse struct {
	LeasedRuns      []*executorapi.JobRunLease
	RunIdsToCancel  []*armadaevents.Uuid
	RunIdsToPreempt []*armadaevents.Uuid
}

type ResourceCleanupService

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

func NewResourceCleanupService

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

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

Jump to

Keyboard shortcuts

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