Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AggregateType ¶ added in v0.3.47
type AggregateType string
const ( Sum AggregateType = "Sum" Mean = "Mean" )
type ClientConfiguration ¶
type ClientConfiguration struct {
MaxMessageSizeBytes int
}
type CustomUsageMetric ¶ added in v0.3.47
type CustomUsageMetric struct { Name string PrometheusMetricName string PrometheusPodNameLabel string AggregateType AggregateType Multiplier float64 }
type CustomUsageMetrics ¶ added in v0.3.47
type CustomUsageMetrics struct { Namespace string EndpointSelectorLabelName string EndpointSelectorLabelValue string Metrics []CustomUsageMetric }
type EtcdConfiguration ¶
type EtcdConfiguration struct { // URLs of the etcd instances storing the cluster state. // If provided, Armada monitors the health of etcd and // stops requesting jobs when etcd is EtcdFractionOfStorageInUseSoftLimit percent full and // stops pod creation when etcd is EtcdFractionOfStorageInUseHardLimit or more percent full. MetricUrls []string FractionOfStorageInUseSoftLimit float64 FractionOfStorageInUseHardLimit float64 // This is the number of etcd endpoints that have to be healthy for Armada to perform the health check // If less than MinimumAvailable are healthy, Armada will consider etcd unhealthy and stop submitting pods MinimumAvailable int }
type ExecutorConfiguration ¶
type ExecutorConfiguration struct { HttpPort uint16 Metric MetricConfiguration Application ApplicationConfiguration ApiConnection client.ApiConnectionDetails Client ClientConfiguration GRPC keepalive.ClientParameters Kubernetes KubernetesConfiguration Task TaskConfiguration }
type IngressConfiguration ¶
type KubernetesConfiguration ¶
type KubernetesConfiguration struct { // Wether to impersonate users when creating Kubernetes objects. ImpersonateUsers bool // Max number of Kubernetes API queries per second // and max number of concurrent Kubernetes API queries. QPS float32 Burst int Etcd EtcdConfiguration NodeIdLabel string TrackedNodeLabels []string AvoidNodeLabelsOnRetry []string ToleratedTaints []string MinimumPodAge time.Duration StuckTerminatingPodExpiry time.Duration FailedPodExpiry time.Duration MaxTerminatedPods int MinimumJobSize armadaresource.ComputeResources PodDefaults *PodDefaults PendingPodChecks *podchecks.Checks FatalPodSubmissionErrors []string // NodeReservedResources config is used to factor in reserved resources on each node // when validating can a job be scheduled on a node during job submit (i.e. factor in resources for daemonset pods) NodeReservedResources armadaresource.ComputeResources // NodeReservedResourcesPriority - The priority the reserved resource is reported at // All pods in kubernetes have a priority - and we report to the Armada API resource for a given priority // Therefore we also need to set a priority for the reserved resource NodeReservedResourcesPriority int32 PodKillTimeout time.Duration }
type MetricConfiguration ¶
type MetricConfiguration struct { Port uint16 ExposeQueueUsageMetrics bool CustomUsageMetrics []CustomUsageMetrics }
type PodDefaults ¶
type PodDefaults struct { SchedulerName string Ingress *IngressConfiguration }
type TaskConfiguration ¶
type TaskConfiguration struct { UtilisationReportingInterval time.Duration MissingJobEventReconciliationInterval time.Duration JobLeaseRenewalInterval time.Duration AllocateSpareClusterCapacityInterval time.Duration PodIssueHandlingInterval time.Duration PodDeletionInterval time.Duration QueueUsageDataRefreshInterval time.Duration UtilisationEventProcessingInterval time.Duration UtilisationEventReportingInterval time.Duration ResourceCleanupInterval time.Duration }
Click to show internal directories.
Click to hide internal directories.