Module

Kubernetes.Api.Autoscaling.V2Beta1

Package
purescript-kubernetes
Repository
hoodunit/purescript-kubernetes

#CrossVersionObjectReference Source

newtype CrossVersionObjectReference

CrossVersionObjectReference contains enough information to let you identify the referred resource.

Fields:

Constructors

Instances

#HorizontalPodAutoscaler Source

newtype HorizontalPodAutoscaler

HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.

Fields:

Constructors

Instances

#HorizontalPodAutoscalerCondition Source

newtype HorizontalPodAutoscalerCondition

HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.

Fields:

  • _type: type describes the current condition
  • lastTransitionTime: lastTransitionTime is the last time the condition transitioned from one status to another
  • message: message is a human-readable explanation containing details about the transition
  • reason: reason is the reason for the condition's last transition.
  • status: status is the status of the condition (True, False, Unknown)

Constructors

Instances

#HorizontalPodAutoscalerList Source

newtype HorizontalPodAutoscalerList

HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects.

Fields:

  • items: items is the list of horizontal pod autoscaler objects.
  • metadata: metadata is the standard list metadata.

Constructors

Instances

#HorizontalPodAutoscalerSpec Source

newtype HorizontalPodAutoscalerSpec

HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.

Fields:

  • maxReplicas: maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. It cannot be less that minReplicas.
  • metrics: metrics contains the specifications for which to use to calculate the desired replica count (the maximum replica count across all metrics will be used). The desired replica count is calculated multiplying the ratio between the target value and the current value by the current number of pods. Ergo, metrics used must decrease as the pod count is increased, and vice-versa. See the individual metric source types for more information about how each type of metric must respond.
  • minReplicas: minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. It defaults to 1 pod.
  • scaleTargetRef: scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics should be collected, as well as to actually change the replica count.

Constructors

Instances

#HorizontalPodAutoscalerStatus Source

newtype HorizontalPodAutoscalerStatus

HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler.

Fields:

  • conditions: conditions is the set of conditions required for this autoscaler to scale its target, and indicates whether or not those conditions are met.
  • currentMetrics: currentMetrics is the last read state of the metrics used by this autoscaler.
  • currentReplicas: currentReplicas is current number of replicas of pods managed by this autoscaler, as last seen by the autoscaler.
  • desiredReplicas: desiredReplicas is the desired number of replicas of pods managed by this autoscaler, as last calculated by the autoscaler.
  • lastScaleTime: lastScaleTime is the last time the HorizontalPodAutoscaler scaled the number of pods, used by the autoscaler to control how often the number of pods is changed.
  • observedGeneration: observedGeneration is the most recent generation observed by this autoscaler.

Constructors

Instances

#MetricSpec Source

newtype MetricSpec

MetricSpec specifies how to scale based on a single metric (only type and one other matching field should be set at once).

Fields:

  • _type: type is the type of metric source. It should be one of "Object", "Pods" or "Resource", each mapping to a matching field in the object.
  • object: object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).
  • pods: pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.
  • resource: resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source.

Constructors

Instances

#MetricStatus Source

newtype MetricStatus

MetricStatus describes the last-read state of a single metric.

Fields:

  • _type: type is the type of metric source. It will be one of "Object", "Pods" or "Resource", each corresponds to a matching field in the object.
  • object: object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).
  • pods: pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.
  • resource: resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source.

Constructors

Instances

#ObjectMetricSource Source

newtype ObjectMetricSource

ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).

Fields:

  • metricName: metricName is the name of the metric in question.
  • target: target is the described Kubernetes object.
  • targetValue: targetValue is the target value of the metric (as a quantity).

Constructors

Instances

#ObjectMetricStatus Source

newtype ObjectMetricStatus

ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).

Fields:

  • currentValue: currentValue is the current value of the metric (as a quantity).
  • metricName: metricName is the name of the metric in question.
  • target: target is the described Kubernetes object.

Constructors

Instances

#PodsMetricSource Source

newtype PodsMetricSource

PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.

Fields:

  • metricName: metricName is the name of the metric in question
  • targetAverageValue: targetAverageValue is the target value of the average of the metric across all relevant pods (as a quantity)

Constructors

Instances

#PodsMetricStatus Source

newtype PodsMetricStatus

PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).

Fields:

  • currentAverageValue: currentAverageValue is the current value of the average of the metric across all relevant pods (as a quantity)
  • metricName: metricName is the name of the metric in question

Constructors

Instances

#ResourceMetricSource Source

newtype ResourceMetricSource

ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source. Only one "target" type should be set.

Fields:

  • name: name is the name of the resource in question.
  • targetAverageUtilization: targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.
  • targetAverageValue: targetAverageValue is the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the "pods" metric source type.

Constructors

Instances

#ResourceMetricStatus Source

newtype ResourceMetricStatus

ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source.

Fields:

  • currentAverageUtilization: currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if targetAverageValue was set in the corresponding metric specification.
  • currentAverageValue: currentAverageValue is the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the "pods" metric source type. It will always be set, regardless of the corresponding metric specification.
  • name: name is the name of the resource in question.

Constructors

Instances

#getAPIResources Source

getAPIResources :: Config -> Aff (Either Status APIResourceList)

get available resources

Modules
Kubernetes.Api.APIExtensions
Kubernetes.Api.APIExtensions.V1Beta1
Kubernetes.Api.APIExtensions.V1Beta1.CustomResourceDefinition
Kubernetes.Api.AdmissionRegistration
Kubernetes.Api.AdmissionRegistration.V1Alpha1
Kubernetes.Api.AdmissionRegistration.V1Alpha1.InitializerConfiguration
Kubernetes.Api.AdmissionRegistration.V1Beta1
Kubernetes.Api.AdmissionRegistration.V1Beta1.MutatingWebhookConfiguration
Kubernetes.Api.AdmissionRegistration.V1Beta1.ValidatingWebhookConfiguration
Kubernetes.Api.ApiRegistration
Kubernetes.Api.ApiRegistration.V1Beta1
Kubernetes.Api.ApiRegistration.V1Beta1.APIService
Kubernetes.Api.Apis
Kubernetes.Api.Apps
Kubernetes.Api.Apps.V1
Kubernetes.Api.Apps.V1.ControllerRevision
Kubernetes.Api.Apps.V1.DaemonSet
Kubernetes.Api.Apps.V1.Deployment
Kubernetes.Api.Apps.V1.ReplicaSet
Kubernetes.Api.Apps.V1.StatefulSet
Kubernetes.Api.Apps.V1Beta1
Kubernetes.Api.Apps.V1Beta1.ControllerRevision
Kubernetes.Api.Apps.V1Beta1.Deployment
Kubernetes.Api.Apps.V1Beta1.DeploymentRollback
Kubernetes.Api.Apps.V1Beta1.Scale
Kubernetes.Api.Apps.V1Beta1.StatefulSet
Kubernetes.Api.Apps.V1Beta2
Kubernetes.Api.Apps.V1Beta2.ControllerRevision
Kubernetes.Api.Apps.V1Beta2.DaemonSet
Kubernetes.Api.Apps.V1Beta2.Deployment
Kubernetes.Api.Apps.V1Beta2.ReplicaSet
Kubernetes.Api.Apps.V1Beta2.Scale
Kubernetes.Api.Apps.V1Beta2.StatefulSet
Kubernetes.Api.Authentication
Kubernetes.Api.Authentication.V1
Kubernetes.Api.Authentication.V1.TokenReview
Kubernetes.Api.Authentication.V1Beta1
Kubernetes.Api.Authentication.V1Beta1.TokenReview
Kubernetes.Api.Authorization
Kubernetes.Api.Authorization.V1
Kubernetes.Api.Authorization.V1.LocalSubjectAccessReview
Kubernetes.Api.Authorization.V1.SelfSubjectAccessReview
Kubernetes.Api.Authorization.V1.SelfSubjectRulesReview
Kubernetes.Api.Authorization.V1.SubjectAccessReview
Kubernetes.Api.Authorization.V1Beta1
Kubernetes.Api.Authorization.V1Beta1.LocalSubjectAccessReview
Kubernetes.Api.Authorization.V1Beta1.SelfSubjectAccessReview
Kubernetes.Api.Authorization.V1Beta1.SelfSubjectRulesReview
Kubernetes.Api.Authorization.V1Beta1.SubjectAccessReview
Kubernetes.Api.Autoscaling
Kubernetes.Api.Autoscaling.V1
Kubernetes.Api.Autoscaling.V1.HorizontalPodAutoscaler
Kubernetes.Api.Autoscaling.V1.Scale
Kubernetes.Api.Autoscaling.V2Beta1
Kubernetes.Api.Autoscaling.V2Beta1.HorizontalPodAutoscaler
Kubernetes.Api.Batch
Kubernetes.Api.Batch.V1
Kubernetes.Api.Batch.V1.Job
Kubernetes.Api.Batch.V1Beta1
Kubernetes.Api.Batch.V1Beta1.CronJob
Kubernetes.Api.Batch.V2Alpha1
Kubernetes.Api.Batch.V2Alpha1.CronJob
Kubernetes.Api.Certificates
Kubernetes.Api.Certificates.V1Beta1
Kubernetes.Api.Certificates.V1Beta1.CertificateSigningRequest
Kubernetes.Api.Core
Kubernetes.Api.Core.V1
Kubernetes.Api.Core.V1.Binding
Kubernetes.Api.Core.V1.ComponentStatus
Kubernetes.Api.Core.V1.ConfigMap
Kubernetes.Api.Core.V1.Endpoints
Kubernetes.Api.Core.V1.Event
Kubernetes.Api.Core.V1.LimitRange
Kubernetes.Api.Core.V1.Namespace
Kubernetes.Api.Core.V1.Node
Kubernetes.Api.Core.V1.PersistentVolume
Kubernetes.Api.Core.V1.PersistentVolumeClaim
Kubernetes.Api.Core.V1.Pod
Kubernetes.Api.Core.V1.PodTemplate
Kubernetes.Api.Core.V1.ReplicationController
Kubernetes.Api.Core.V1.ResourceQuota
Kubernetes.Api.Core.V1.Secret
Kubernetes.Api.Core.V1.Service
Kubernetes.Api.Core.V1.ServiceAccount
Kubernetes.Api.Events
Kubernetes.Api.Events.Event
Kubernetes.Api.Extensions
Kubernetes.Api.Extensions.V1Beta1
Kubernetes.Api.Extensions.V1Beta1.DaemonSet
Kubernetes.Api.Extensions.V1Beta1.Deployment
Kubernetes.Api.Extensions.V1Beta1.DeploymentRollback
Kubernetes.Api.Extensions.V1Beta1.Ingress
Kubernetes.Api.Extensions.V1Beta1.NetworkPolicy
Kubernetes.Api.Extensions.V1Beta1.PodSecurityPolicy
Kubernetes.Api.Extensions.V1Beta1.ReplicaSet
Kubernetes.Api.Extensions.V1Beta1.Scale
Kubernetes.Api.Lens
Kubernetes.Api.Logs
Kubernetes.Api.Meta.V1
Kubernetes.Api.Networking
Kubernetes.Api.Networking.V1
Kubernetes.Api.Networking.V1.NetworkPolicy
Kubernetes.Api.Policy
Kubernetes.Api.Policy.V1Beta1
Kubernetes.Api.Policy.V1Beta1.Eviction
Kubernetes.Api.Policy.V1Beta1.PodDisruptionBudget
Kubernetes.Api.Rbac
Kubernetes.Api.Rbac.V1
Kubernetes.Api.Rbac.V1.ClusterRole
Kubernetes.Api.Rbac.V1.ClusterRoleBinding
Kubernetes.Api.Rbac.V1.Role
Kubernetes.Api.Rbac.V1.RoleBinding
Kubernetes.Api.Rbac.V1Alpha1
Kubernetes.Api.Rbac.V1Alpha1.ClusterRole
Kubernetes.Api.Rbac.V1Alpha1.ClusterRoleBinding
Kubernetes.Api.Rbac.V1Alpha1.Role
Kubernetes.Api.Rbac.V1Alpha1.RoleBinding
Kubernetes.Api.Rbac.V1Beta1
Kubernetes.Api.Rbac.V1Beta1.ClusterRole
Kubernetes.Api.Rbac.V1Beta1.ClusterRoleBinding
Kubernetes.Api.Rbac.V1Beta1.Role
Kubernetes.Api.Rbac.V1Beta1.RoleBinding
Kubernetes.Api.Resource
Kubernetes.Api.Runtime
Kubernetes.Api.Scheduling
Kubernetes.Api.Scheduling.V1Alpha1
Kubernetes.Api.Scheduling.V1Alpha1.PriorityClass
Kubernetes.Api.Settings
Kubernetes.Api.Settings.V1Alpha1
Kubernetes.Api.Settings.V1Alpha1.PodPreset
Kubernetes.Api.Storage
Kubernetes.Api.Storage.V1
Kubernetes.Api.Storage.V1.StorageClass
Kubernetes.Api.Storage.V1Alpha1
Kubernetes.Api.Storage.V1Alpha1.VolumeAttachment
Kubernetes.Api.Storage.V1Beta1
Kubernetes.Api.Storage.V1Beta1.StorageClass
Kubernetes.Api.Util
Kubernetes.Api.Version
Kubernetes.Client
Kubernetes.Config
Kubernetes.Default
Kubernetes.Generation.AST
Kubernetes.Generation.Emitter
Kubernetes.Generation.GenerateApi
Kubernetes.Generation.GenerateDefinitions
Kubernetes.Generation.GenerateSchemaType
Kubernetes.Generation.Generation
Kubernetes.Generation.JsonSchema
Kubernetes.Generation.Main
Kubernetes.Generation.Names
Kubernetes.Generation.Passes.AddDependencyImports
Kubernetes.Generation.Passes.GenerateLenses
Kubernetes.Generation.Passes.HelperLenses
Kubernetes.Generation.Passes.PrefixNamespace
Kubernetes.Generation.Passes.ResolveLocalRefs
Kubernetes.Generation.PathParsing
Kubernetes.Generation.Swagger
Kubernetes.Json
Kubernetes.QueryString
Kubernetes.Request
Kubernetes.RequestOptions
Kubernetes.SchemaExtensions