Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package Package v1alpha1 is the v1alpha1 version of the applicationautoscaling.services.k8s.aws API. +groupName=applicationautoscaling.services.k8s.aws
Index ¶
- Variables
- type AdjustmentType
- type Alarm
- type CustomizedMetricSpecification
- type MetricAggregationType
- type MetricDimension
- type MetricStatistic
- type MetricType
- type PolicyType
- type PredefinedMetricSpecification
- type ScalableDimension
- type ScalableTarget
- type ScalableTargetAction
- type ScalableTargetList
- type ScalableTargetSpec
- type ScalableTargetStatus
- type ScalableTarget_SDK
- type ScalingActivity
- type ScalingActivityStatusCode
- type ScalingPolicy
- type ScalingPolicyList
- type ScalingPolicySpec
- type ScalingPolicyStatus
- type ScalingPolicy_SDK
- type ScheduledAction
- type ServiceNamespace
- type StepAdjustment
- type StepScalingPolicyConfiguration
- type SuspendedState
- type TargetTrackingScalingPolicyConfiguration
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is the API Group Version used to register the objects GroupVersion = schema.GroupVersion{Group: "applicationautoscaling.services.k8s.aws", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AdjustmentType ¶
type AdjustmentType string
const ( AdjustmentType_ChangeInCapacity AdjustmentType = "ChangeInCapacity" AdjustmentType_PercentChangeInCapacity AdjustmentType = "PercentChangeInCapacity" AdjustmentType_ExactCapacity AdjustmentType = "ExactCapacity" )
type Alarm ¶
type Alarm struct { AlarmARN *string `json:"alarmARN,omitempty"` AlarmName *string `json:"alarmName,omitempty"` }
Represents a CloudWatch alarm associated with a scaling policy.
func (*Alarm) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Alarm.
func (*Alarm) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomizedMetricSpecification ¶
type CustomizedMetricSpecification struct { Dimensions []*MetricDimension `json:"dimensions,omitempty"` MetricName *string `json:"metricName,omitempty"` Namespace *string `json:"namespace,omitempty"` Statistic *string `json:"statistic,omitempty"` Unit *string `json:"unit,omitempty"` }
Represents a CloudWatch metric of your choosing for a target tracking scaling policy to use with Application Auto Scaling.
For information about the available metrics for a service, see AWS Services That Publish CloudWatch Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) in the Amazon CloudWatch User Guide.
To create your customized metric specification:
Add values for each required parameter from CloudWatch. You can use an existing metric, or a new metric that you create. To use your own metric, you must first publish the metric to CloudWatch. For more information, see Publish Custom Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) in the Amazon CloudWatch User Guide.
Choose a metric that changes proportionally with capacity. The value of the metric should increase or decrease in inverse proportion to the number of capacity units. That is, the value of the metric should decrease when capacity increases, and increase when capacity decreases.
For more information about CloudWatch, see Amazon CloudWatch Concepts (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html).
func (*CustomizedMetricSpecification) DeepCopy ¶
func (in *CustomizedMetricSpecification) DeepCopy() *CustomizedMetricSpecification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomizedMetricSpecification.
func (*CustomizedMetricSpecification) DeepCopyInto ¶
func (in *CustomizedMetricSpecification) DeepCopyInto(out *CustomizedMetricSpecification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricAggregationType ¶
type MetricAggregationType string
const ( MetricAggregationType_Average MetricAggregationType = "Average" MetricAggregationType_Minimum MetricAggregationType = "Minimum" MetricAggregationType_Maximum MetricAggregationType = "Maximum" )
type MetricDimension ¶
type MetricDimension struct { Name *string `json:"name,omitempty"` Value *string `json:"value,omitempty"` }
Describes the dimension names and values associated with a metric.
func (*MetricDimension) DeepCopy ¶
func (in *MetricDimension) DeepCopy() *MetricDimension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricDimension.
func (*MetricDimension) DeepCopyInto ¶
func (in *MetricDimension) DeepCopyInto(out *MetricDimension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricStatistic ¶
type MetricStatistic string
const ( MetricStatistic_Average MetricStatistic = "Average" MetricStatistic_Minimum MetricStatistic = "Minimum" MetricStatistic_Maximum MetricStatistic = "Maximum" MetricStatistic_SampleCount MetricStatistic = "SampleCount" MetricStatistic_Sum MetricStatistic = "Sum" )
type MetricType ¶
type MetricType string
const ( MetricType_DynamoDBReadCapacityUtilization MetricType = "DynamoDBReadCapacityUtilization" MetricType_DynamoDBWriteCapacityUtilization MetricType = "DynamoDBWriteCapacityUtilization" MetricType_ALBRequestCountPerTarget MetricType = "ALBRequestCountPerTarget" MetricType_RDSReaderAverageCPUUtilization MetricType = "RDSReaderAverageCPUUtilization" MetricType_RDSReaderAverageDatabaseConnections MetricType = "RDSReaderAverageDatabaseConnections" MetricType_EC2SpotFleetRequestAverageCPUUtilization MetricType = "EC2SpotFleetRequestAverageCPUUtilization" MetricType_EC2SpotFleetRequestAverageNetworkIn MetricType = "EC2SpotFleetRequestAverageNetworkIn" MetricType_EC2SpotFleetRequestAverageNetworkOut MetricType = "EC2SpotFleetRequestAverageNetworkOut" MetricType_SageMakerVariantInvocationsPerInstance MetricType = "SageMakerVariantInvocationsPerInstance" MetricType_ECSServiceAverageCPUUtilization MetricType = "ECSServiceAverageCPUUtilization" MetricType_ECSServiceAverageMemoryUtilization MetricType = "ECSServiceAverageMemoryUtilization" MetricType_AppStreamAverageCapacityUtilization MetricType = "AppStreamAverageCapacityUtilization" MetricType_ComprehendInferenceUtilization MetricType = "ComprehendInferenceUtilization" MetricType_LambdaProvisionedConcurrencyUtilization MetricType = "LambdaProvisionedConcurrencyUtilization" MetricType_CassandraReadCapacityUtilization MetricType = "CassandraReadCapacityUtilization" MetricType_CassandraWriteCapacityUtilization MetricType = "CassandraWriteCapacityUtilization" MetricType_KafkaBrokerStorageUtilization MetricType = "KafkaBrokerStorageUtilization" )
type PolicyType ¶
type PolicyType string
const ( PolicyType_StepScaling PolicyType = "StepScaling" PolicyType_TargetTrackingScaling PolicyType = "TargetTrackingScaling" )
type PredefinedMetricSpecification ¶
type PredefinedMetricSpecification struct { PredefinedMetricType *string `json:"predefinedMetricType,omitempty"` ResourceLabel *string `json:"resourceLabel,omitempty"` }
Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.
Only the AWS services that you're using send metrics to Amazon CloudWatch. To determine whether a desired metric already exists by looking up its namespace and dimension using the CloudWatch metrics dashboard in the console, follow the procedure in Building dashboards with CloudWatch (https://docs.aws.amazon.com/autoscaling/application/userguide/monitoring-cloudwatch.html) in the Application Auto Scaling User Guide.
func (*PredefinedMetricSpecification) DeepCopy ¶
func (in *PredefinedMetricSpecification) DeepCopy() *PredefinedMetricSpecification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PredefinedMetricSpecification.
func (*PredefinedMetricSpecification) DeepCopyInto ¶
func (in *PredefinedMetricSpecification) DeepCopyInto(out *PredefinedMetricSpecification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalableDimension ¶
type ScalableDimension string
const ( ScalableDimension_ecs_service_DesiredCount ScalableDimension = "ecs:service:DesiredCount" ScalableDimension_ec2_spot_fleet_request_TargetCapacity ScalableDimension = "ec2:spot-fleet-request:TargetCapacity" ScalableDimension_elasticmapreduce_instancegroup_InstanceCount ScalableDimension = "elasticmapreduce:instancegroup:InstanceCount" ScalableDimension_appstream_fleet_DesiredCapacity ScalableDimension = "appstream:fleet:DesiredCapacity" ScalableDimension_dynamodb_table_ReadCapacityUnits ScalableDimension = "dynamodb:table:ReadCapacityUnits" ScalableDimension_dynamodb_table_WriteCapacityUnits ScalableDimension = "dynamodb:table:WriteCapacityUnits" ScalableDimension_dynamodb_index_ReadCapacityUnits ScalableDimension = "dynamodb:index:ReadCapacityUnits" ScalableDimension_dynamodb_index_WriteCapacityUnits ScalableDimension = "dynamodb:index:WriteCapacityUnits" ScalableDimension_rds_cluster_ReadReplicaCount ScalableDimension = "rds:cluster:ReadReplicaCount" ScalableDimension_sagemaker_variant_DesiredInstanceCount ScalableDimension = "sagemaker:variant:DesiredInstanceCount" ScalableDimension_custom_resource_ResourceType_Property ScalableDimension = "custom-resource:ResourceType:Property" ScalableDimension_comprehend_document_classifier_endpoint_DesiredInferenceUnits ScalableDimension = "comprehend:document-classifier-endpoint:DesiredInferenceUnits" ScalableDimension_comprehend_entity_recognizer_endpoint_DesiredInferenceUnits ScalableDimension = "comprehend:entity-recognizer-endpoint:DesiredInferenceUnits" ScalableDimension_lambda_function_ProvisionedConcurrency ScalableDimension = "lambda:function:ProvisionedConcurrency" ScalableDimension_cassandra_table_ReadCapacityUnits ScalableDimension = "cassandra:table:ReadCapacityUnits" ScalableDimension_cassandra_table_WriteCapacityUnits ScalableDimension = "cassandra:table:WriteCapacityUnits" ScalableDimension_kafka_broker_storage_VolumeSize ScalableDimension = "kafka:broker-storage:VolumeSize" )
type ScalableTarget ¶
type ScalableTarget struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ScalableTargetSpec `json:"spec,omitempty"` Status ScalableTargetStatus `json:"status,omitempty"` }
ScalableTarget is the Schema for the ScalableTargets API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*ScalableTarget) DeepCopy ¶
func (in *ScalableTarget) DeepCopy() *ScalableTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTarget.
func (*ScalableTarget) DeepCopyInto ¶
func (in *ScalableTarget) DeepCopyInto(out *ScalableTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalableTarget) DeepCopyObject ¶
func (in *ScalableTarget) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalableTargetAction ¶
type ScalableTargetAction struct { MaxCapacity *int64 `json:"maxCapacity,omitempty"` MinCapacity *int64 `json:"minCapacity,omitempty"` }
Represents the minimum and maximum capacity for a scheduled action.
func (*ScalableTargetAction) DeepCopy ¶
func (in *ScalableTargetAction) DeepCopy() *ScalableTargetAction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTargetAction.
func (*ScalableTargetAction) DeepCopyInto ¶
func (in *ScalableTargetAction) DeepCopyInto(out *ScalableTargetAction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalableTargetList ¶
type ScalableTargetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ScalableTarget `json:"items"` }
ScalableTargetList contains a list of ScalableTarget +kubebuilder:object:root=true
func (*ScalableTargetList) DeepCopy ¶
func (in *ScalableTargetList) DeepCopy() *ScalableTargetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTargetList.
func (*ScalableTargetList) DeepCopyInto ¶
func (in *ScalableTargetList) DeepCopyInto(out *ScalableTargetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalableTargetList) DeepCopyObject ¶
func (in *ScalableTargetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalableTargetSpec ¶
type ScalableTargetSpec struct { // The maximum value that you plan to scale out to. When a scaling policy is // in effect, Application Auto Scaling can scale out (expand) as needed to the // maximum capacity limit in response to changing demand. This property is required // when registering a new scalable target. // // Although you can specify a large maximum capacity, note that service quotas // may impose lower limits. Each service has its own default quotas for the // maximum capacity of the resource. If you want to specify a higher limit, // you can request an increase. For more information, consult the documentation // for that service. For information about the default quotas for each service, // see Service Endpoints and Quotas (https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) // in the Amazon Web Services General Reference. MaxCapacity *int64 `json:"maxCapacity,omitempty"` // The minimum value that you plan to scale in to. When a scaling policy is // in effect, Application Auto Scaling can scale in (contract) as needed to // the minimum capacity limit in response to changing demand. This property // is required when registering a new scalable target. // // For certain resources, the minimum value allowed is 0. This includes Lambda // provisioned concurrency, Spot Fleet, ECS services, Aurora DB clusters, EMR // clusters, and custom resources. For all other resources, the minimum value // allowed is 1. MinCapacity *int64 `json:"minCapacity,omitempty"` // The identifier of the resource that is associated with the scalable target. // This string consists of the resource type and unique identifier. // // * ECS service - The resource type is service and the unique identifier // is the cluster name and service name. Example: service/default/sample-webapp. // // * Spot Fleet request - The resource type is spot-fleet-request and the // unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // * EMR cluster - The resource type is instancegroup and the unique identifier // is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0. // // * AppStream 2.0 fleet - The resource type is fleet and the unique identifier // is the fleet name. Example: fleet/sample-fleet. // // * DynamoDB table - The resource type is table and the unique identifier // is the table name. Example: table/my-table. // // * DynamoDB global secondary index - The resource type is index and the // unique identifier is the index name. Example: table/my-table/index/my-table-index. // // * Aurora DB cluster - The resource type is cluster and the unique identifier // is the cluster name. Example: cluster:my-db-cluster. // // * Amazon SageMaker endpoint variant - The resource type is variant and // the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // // * Custom resources are not supported with a resource type. This parameter // must specify the OutputValue from the CloudFormation template stack used // to access the resources. The unique identifier is defined by the service // provider. More information is available in our GitHub repository (https://github.com/aws/aws-auto-scaling-custom-resource). // // * Amazon Comprehend document classification endpoint - The resource type // and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE. // // * Amazon Comprehend entity recognizer endpoint - The resource type and // unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE. // // * Lambda provisioned concurrency - The resource type is function and the // unique identifier is the function name with a function version or alias // name suffix that is not $LATEST. Example: function:my-function:prod or // function:my-function:1. // // * Amazon Keyspaces table - The resource type is table and the unique identifier // is the table name. Example: keyspace/mykeyspace/table/mytable. // // * Amazon MSK cluster - The resource type and unique identifier are specified // using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5. // +kubebuilder:validation:Required ResourceID *string `json:"resourceID"` // This parameter is required for services that do not support service-linked // roles (such as Amazon EMR), and it must specify the ARN of an IAM role that // allows Application Auto Scaling to modify the scalable target on your behalf. // // If the service supports service-linked roles, Application Auto Scaling uses // a service-linked role, which it creates if it does not yet exist. For more // information, see Application Auto Scaling IAM roles (https://docs.aws.amazon.com/autoscaling/application/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-roles). RoleARN *string `json:"roleARN,omitempty"` // The scalable dimension associated with the scalable target. This string consists // of the service namespace, resource type, and scaling property. // // * ecs:service:DesiredCount - The desired task count of an ECS service. // // * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot // Fleet request. // // * elasticmapreduce:instancegroup:InstanceCount - The instance count of // an EMR Instance Group. // // * appstream:fleet:DesiredCapacity - The desired capacity of an AppStream // 2.0 fleet. // // * dynamodb:table:ReadCapacityUnits - The provisioned read capacity for // a DynamoDB table. // // * dynamodb:table:WriteCapacityUnits - The provisioned write capacity for // a DynamoDB table. // // * dynamodb:index:ReadCapacityUnits - The provisioned read capacity for // a DynamoDB global secondary index. // // * dynamodb:index:WriteCapacityUnits - The provisioned write capacity for // a DynamoDB global secondary index. // // * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora // DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible // edition. // // * sagemaker:variant:DesiredInstanceCount - The number of EC2 instances // for an Amazon SageMaker model endpoint variant. // // * custom-resource:ResourceType:Property - The scalable dimension for a // custom resource provided by your own application or service. // // * comprehend:document-classifier-endpoint:DesiredInferenceUnits - The // number of inference units for an Amazon Comprehend document classification // endpoint. // // * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number // of inference units for an Amazon Comprehend entity recognizer endpoint. // // * lambda:function:ProvisionedConcurrency - The provisioned concurrency // for a Lambda function. // // * cassandra:table:ReadCapacityUnits - The provisioned read capacity for // an Amazon Keyspaces table. // // * cassandra:table:WriteCapacityUnits - The provisioned write capacity // for an Amazon Keyspaces table. // // * kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) // for brokers in an Amazon MSK cluster. // +kubebuilder:validation:Required ScalableDimension *string `json:"scalableDimension"` // The namespace of the AWS service that provides the resource. For a resource // provided by your own application or service, use custom-resource instead. // +kubebuilder:validation:Required ServiceNamespace *string `json:"serviceNamespace"` // An embedded object that contains attributes and attribute values that are // used to suspend and resume automatic scaling. Setting the value of an attribute // to true suspends the specified scaling activities. Setting it to false (default) // resumes the specified scaling activities. // // Suspension Outcomes // // * For DynamicScalingInSuspended, while a suspension is in effect, all // scale-in activities that are triggered by a scaling policy are suspended. // // * For DynamicScalingOutSuspended, while a suspension is in effect, all // scale-out activities that are triggered by a scaling policy are suspended. // // * For ScheduledScalingSuspended, while a suspension is in effect, all // scaling activities that involve scheduled actions are suspended. // // For more information, see Suspending and resuming scaling (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-suspend-resume-scaling.html) // in the Application Auto Scaling User Guide. SuspendedState *SuspendedState `json:"suspendedState,omitempty"` }
ScalableTargetSpec defines the desired state of ScalableTarget.
Represents a scalable target.
func (*ScalableTargetSpec) DeepCopy ¶
func (in *ScalableTargetSpec) DeepCopy() *ScalableTargetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTargetSpec.
func (*ScalableTargetSpec) DeepCopyInto ¶
func (in *ScalableTargetSpec) DeepCopyInto(out *ScalableTargetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalableTargetStatus ¶
type ScalableTargetStatus struct { // All CRs managed by ACK have a common `Status.ACKResourceMetadata` member // that is used to contain resource sync state, account ownership, // constructed ARN for the resource // +kubebuilder:validation:Optional ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"` // All CRS managed by ACK have a common `Status.Conditions` member that // contains a collection of `ackv1alpha1.Condition` objects that describe // the various terminal states of the CR and its backend AWS service API // resource // +kubebuilder:validation:Optional Conditions []*ackv1alpha1.Condition `json:"conditions"` // The Unix timestamp for when the scalable target was created. // +kubebuilder:validation:Optional CreationTime *metav1.Time `json:"creationTime,omitempty"` // The Unix timestamp for when the scalable target was created. // +kubebuilder:validation:Optional LastModifiedTime *metav1.Time `json:"lastModifiedTime,omitempty"` }
ScalableTargetStatus defines the observed state of ScalableTarget
func (*ScalableTargetStatus) DeepCopy ¶
func (in *ScalableTargetStatus) DeepCopy() *ScalableTargetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTargetStatus.
func (*ScalableTargetStatus) DeepCopyInto ¶
func (in *ScalableTargetStatus) DeepCopyInto(out *ScalableTargetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalableTarget_SDK ¶
type ScalableTarget_SDK struct { CreationTime *metav1.Time `json:"creationTime,omitempty"` MaxCapacity *int64 `json:"maxCapacity,omitempty"` MinCapacity *int64 `json:"minCapacity,omitempty"` ResourceID *string `json:"resourceID,omitempty"` RoleARN *string `json:"roleARN,omitempty"` ScalableDimension *string `json:"scalableDimension,omitempty"` ServiceNamespace *string `json:"serviceNamespace,omitempty"` // Specifies whether the scaling activities for a scalable target are in a suspended // state. SuspendedState *SuspendedState `json:"suspendedState,omitempty"` }
Represents a scalable target.
func (*ScalableTarget_SDK) DeepCopy ¶
func (in *ScalableTarget_SDK) DeepCopy() *ScalableTarget_SDK
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalableTarget_SDK.
func (*ScalableTarget_SDK) DeepCopyInto ¶
func (in *ScalableTarget_SDK) DeepCopyInto(out *ScalableTarget_SDK)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingActivity ¶
type ScalingActivity struct { ActivityID *string `json:"activityID,omitempty"` Cause *string `json:"cause,omitempty"` Description *string `json:"description,omitempty"` Details *string `json:"details,omitempty"` EndTime *metav1.Time `json:"endTime,omitempty"` ResourceID *string `json:"resourceID,omitempty"` ScalableDimension *string `json:"scalableDimension,omitempty"` ServiceNamespace *string `json:"serviceNamespace,omitempty"` StartTime *metav1.Time `json:"startTime,omitempty"` StatusMessage *string `json:"statusMessage,omitempty"` }
Represents a scaling activity.
func (*ScalingActivity) DeepCopy ¶
func (in *ScalingActivity) DeepCopy() *ScalingActivity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingActivity.
func (*ScalingActivity) DeepCopyInto ¶
func (in *ScalingActivity) DeepCopyInto(out *ScalingActivity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingActivityStatusCode ¶
type ScalingActivityStatusCode string
const ( ScalingActivityStatusCode_Pending ScalingActivityStatusCode = "Pending" ScalingActivityStatusCode_InProgress ScalingActivityStatusCode = "InProgress" ScalingActivityStatusCode_Successful ScalingActivityStatusCode = "Successful" ScalingActivityStatusCode_Overridden ScalingActivityStatusCode = "Overridden" ScalingActivityStatusCode_Unfulfilled ScalingActivityStatusCode = "Unfulfilled" ScalingActivityStatusCode_Failed ScalingActivityStatusCode = "Failed" )
type ScalingPolicy ¶
type ScalingPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ScalingPolicySpec `json:"spec,omitempty"` Status ScalingPolicyStatus `json:"status,omitempty"` }
ScalingPolicy is the Schema for the ScalingPolicies API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*ScalingPolicy) DeepCopy ¶
func (in *ScalingPolicy) DeepCopy() *ScalingPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicy.
func (*ScalingPolicy) DeepCopyInto ¶
func (in *ScalingPolicy) DeepCopyInto(out *ScalingPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalingPolicy) DeepCopyObject ¶
func (in *ScalingPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalingPolicyList ¶
type ScalingPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ScalingPolicy `json:"items"` }
ScalingPolicyList contains a list of ScalingPolicy +kubebuilder:object:root=true
func (*ScalingPolicyList) DeepCopy ¶
func (in *ScalingPolicyList) DeepCopy() *ScalingPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyList.
func (*ScalingPolicyList) DeepCopyInto ¶
func (in *ScalingPolicyList) DeepCopyInto(out *ScalingPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalingPolicyList) DeepCopyObject ¶
func (in *ScalingPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScalingPolicySpec ¶
type ScalingPolicySpec struct { // The name of the scaling policy. // +kubebuilder:validation:Required PolicyName *string `json:"policyName"` // The policy type. This parameter is required if you are creating a scaling // policy. // // The following policy types are supported: // // TargetTrackingScaling—Not supported for Amazon EMR // // StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon // Keyspaces (for Apache Cassandra), or Amazon MSK. // // For more information, see Target tracking scaling policies (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) // and Step scaling policies (https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) // in the Application Auto Scaling User Guide. PolicyType *string `json:"policyType,omitempty"` // The identifier of the resource associated with the scaling policy. This string // consists of the resource type and unique identifier. // // * ECS service - The resource type is service and the unique identifier // is the cluster name and service name. Example: service/default/sample-webapp. // // * Spot Fleet request - The resource type is spot-fleet-request and the // unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. // // * EMR cluster - The resource type is instancegroup and the unique identifier // is the cluster ID and instance group ID. Example: instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0. // // * AppStream 2.0 fleet - The resource type is fleet and the unique identifier // is the fleet name. Example: fleet/sample-fleet. // // * DynamoDB table - The resource type is table and the unique identifier // is the table name. Example: table/my-table. // // * DynamoDB global secondary index - The resource type is index and the // unique identifier is the index name. Example: table/my-table/index/my-table-index. // // * Aurora DB cluster - The resource type is cluster and the unique identifier // is the cluster name. Example: cluster:my-db-cluster. // // * Amazon SageMaker endpoint variant - The resource type is variant and // the unique identifier is the resource ID. Example: endpoint/my-end-point/variant/KMeansClustering. // // * Custom resources are not supported with a resource type. This parameter // must specify the OutputValue from the CloudFormation template stack used // to access the resources. The unique identifier is defined by the service // provider. More information is available in our GitHub repository (https://github.com/aws/aws-auto-scaling-custom-resource). // // * Amazon Comprehend document classification endpoint - The resource type // and unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE. // // * Amazon Comprehend entity recognizer endpoint - The resource type and // unique identifier are specified using the endpoint ARN. Example: arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE. // // * Lambda provisioned concurrency - The resource type is function and the // unique identifier is the function name with a function version or alias // name suffix that is not $LATEST. Example: function:my-function:prod or // function:my-function:1. // // * Amazon Keyspaces table - The resource type is table and the unique identifier // is the table name. Example: keyspace/mykeyspace/table/mytable. // // * Amazon MSK cluster - The resource type and unique identifier are specified // using the cluster ARN. Example: arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5. // +kubebuilder:validation:Required ResourceID *string `json:"resourceID"` // The scalable dimension. This string consists of the service namespace, resource // type, and scaling property. // // * ecs:service:DesiredCount - The desired task count of an ECS service. // // * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot // Fleet request. // // * elasticmapreduce:instancegroup:InstanceCount - The instance count of // an EMR Instance Group. // // * appstream:fleet:DesiredCapacity - The desired capacity of an AppStream // 2.0 fleet. // // * dynamodb:table:ReadCapacityUnits - The provisioned read capacity for // a DynamoDB table. // // * dynamodb:table:WriteCapacityUnits - The provisioned write capacity for // a DynamoDB table. // // * dynamodb:index:ReadCapacityUnits - The provisioned read capacity for // a DynamoDB global secondary index. // // * dynamodb:index:WriteCapacityUnits - The provisioned write capacity for // a DynamoDB global secondary index. // // * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora // DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible // edition. // // * sagemaker:variant:DesiredInstanceCount - The number of EC2 instances // for an Amazon SageMaker model endpoint variant. // // * custom-resource:ResourceType:Property - The scalable dimension for a // custom resource provided by your own application or service. // // * comprehend:document-classifier-endpoint:DesiredInferenceUnits - The // number of inference units for an Amazon Comprehend document classification // endpoint. // // * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The number // of inference units for an Amazon Comprehend entity recognizer endpoint. // // * lambda:function:ProvisionedConcurrency - The provisioned concurrency // for a Lambda function. // // * cassandra:table:ReadCapacityUnits - The provisioned read capacity for // an Amazon Keyspaces table. // // * cassandra:table:WriteCapacityUnits - The provisioned write capacity // for an Amazon Keyspaces table. // // * kafka:broker-storage:VolumeSize - The provisioned volume size (in GiB) // for brokers in an Amazon MSK cluster. // +kubebuilder:validation:Required ScalableDimension *string `json:"scalableDimension"` // The namespace of the AWS service that provides the resource. For a resource // provided by your own application or service, use custom-resource instead. // +kubebuilder:validation:Required ServiceNamespace *string `json:"serviceNamespace"` // A step scaling policy. // // This parameter is required if you are creating a policy and the policy type // is StepScaling. StepScalingPolicyConfiguration *StepScalingPolicyConfiguration `json:"stepScalingPolicyConfiguration,omitempty"` // A target tracking scaling policy. Includes support for predefined or customized // metrics. // // This parameter is required if you are creating a policy and the policy type // is TargetTrackingScaling. TargetTrackingScalingPolicyConfiguration *TargetTrackingScalingPolicyConfiguration `json:"targetTrackingScalingPolicyConfiguration,omitempty"` }
ScalingPolicySpec defines the desired state of ScalingPolicy.
Represents a scaling policy to use with Application Auto Scaling.
For more information about configuring scaling policies for a specific service, see Getting started with Application Auto Scaling (https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the Application Auto Scaling User Guide.
func (*ScalingPolicySpec) DeepCopy ¶
func (in *ScalingPolicySpec) DeepCopy() *ScalingPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicySpec.
func (*ScalingPolicySpec) DeepCopyInto ¶
func (in *ScalingPolicySpec) DeepCopyInto(out *ScalingPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicyStatus ¶
type ScalingPolicyStatus struct { // All CRs managed by ACK have a common `Status.ACKResourceMetadata` member // that is used to contain resource sync state, account ownership, // constructed ARN for the resource // +kubebuilder:validation:Optional ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"` // All CRS managed by ACK have a common `Status.Conditions` member that // contains a collection of `ackv1alpha1.Condition` objects that describe // the various terminal states of the CR and its backend AWS service API // resource // +kubebuilder:validation:Optional Conditions []*ackv1alpha1.Condition `json:"conditions"` // The CloudWatch alarms created for the target tracking scaling policy. // +kubebuilder:validation:Optional Alarms []*Alarm `json:"alarms,omitempty"` // The Unix timestamp for when the scaling policy was created. // +kubebuilder:validation:Optional CreationTime *metav1.Time `json:"creationTime,omitempty"` // The Unix timestamp for when the scaling policy was created. // +kubebuilder:validation:Optional LastModifiedTime *metav1.Time `json:"lastModifiedTime,omitempty"` }
ScalingPolicyStatus defines the observed state of ScalingPolicy
func (*ScalingPolicyStatus) DeepCopy ¶
func (in *ScalingPolicyStatus) DeepCopy() *ScalingPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyStatus.
func (*ScalingPolicyStatus) DeepCopyInto ¶
func (in *ScalingPolicyStatus) DeepCopyInto(out *ScalingPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicy_SDK ¶
type ScalingPolicy_SDK struct { Alarms []*Alarm `json:"alarms,omitempty"` CreationTime *metav1.Time `json:"creationTime,omitempty"` PolicyARN *string `json:"policyARN,omitempty"` PolicyName *string `json:"policyName,omitempty"` PolicyType *string `json:"policyType,omitempty"` ResourceID *string `json:"resourceID,omitempty"` ScalableDimension *string `json:"scalableDimension,omitempty"` ServiceNamespace *string `json:"serviceNamespace,omitempty"` // Represents a step scaling policy configuration to use with Application Auto // Scaling. StepScalingPolicyConfiguration *StepScalingPolicyConfiguration `json:"stepScalingPolicyConfiguration,omitempty"` // Represents a target tracking scaling policy configuration to use with Application // Auto Scaling. TargetTrackingScalingPolicyConfiguration *TargetTrackingScalingPolicyConfiguration `json:"targetTrackingScalingPolicyConfiguration,omitempty"` }
Represents a scaling policy to use with Application Auto Scaling.
For more information about configuring scaling policies for a specific service, see Getting started with Application Auto Scaling (https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the Application Auto Scaling User Guide.
func (*ScalingPolicy_SDK) DeepCopy ¶
func (in *ScalingPolicy_SDK) DeepCopy() *ScalingPolicy_SDK
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicy_SDK.
func (*ScalingPolicy_SDK) DeepCopyInto ¶
func (in *ScalingPolicy_SDK) DeepCopyInto(out *ScalingPolicy_SDK)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScheduledAction ¶
type ScheduledAction struct { CreationTime *metav1.Time `json:"creationTime,omitempty"` EndTime *metav1.Time `json:"endTime,omitempty"` ResourceID *string `json:"resourceID,omitempty"` ScalableDimension *string `json:"scalableDimension,omitempty"` Schedule *string `json:"schedule,omitempty"` ScheduledActionARN *string `json:"scheduledActionARN,omitempty"` ServiceNamespace *string `json:"serviceNamespace,omitempty"` StartTime *metav1.Time `json:"startTime,omitempty"` Timezone *string `json:"timezone,omitempty"` }
Represents a scheduled action.
func (*ScheduledAction) DeepCopy ¶
func (in *ScheduledAction) DeepCopy() *ScheduledAction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduledAction.
func (*ScheduledAction) DeepCopyInto ¶
func (in *ScheduledAction) DeepCopyInto(out *ScheduledAction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceNamespace ¶
type ServiceNamespace string
const ( ServiceNamespace_ecs ServiceNamespace = "ecs" ServiceNamespace_elasticmapreduce ServiceNamespace = "elasticmapreduce" ServiceNamespace_ec2 ServiceNamespace = "ec2" ServiceNamespace_appstream ServiceNamespace = "appstream" ServiceNamespace_dynamodb ServiceNamespace = "dynamodb" ServiceNamespace_rds ServiceNamespace = "rds" ServiceNamespace_sagemaker ServiceNamespace = "sagemaker" ServiceNamespace_custom_resource ServiceNamespace = "custom-resource" ServiceNamespace_comprehend ServiceNamespace = "comprehend" ServiceNamespace_lambda ServiceNamespace = "lambda" ServiceNamespace_cassandra ServiceNamespace = "cassandra" ServiceNamespace_kafka ServiceNamespace = "kafka" )
type StepAdjustment ¶
type StepAdjustment struct { MetricIntervalLowerBound *float64 `json:"metricIntervalLowerBound,omitempty"` MetricIntervalUpperBound *float64 `json:"metricIntervalUpperBound,omitempty"` ScalingAdjustment *int64 `json:"scalingAdjustment,omitempty"` }
Represents a step adjustment for a StepScalingPolicyConfiguration (https://docs.aws.amazon.com/autoscaling/application/APIReference/API_StepScalingPolicyConfiguration.html). Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.
For the following examples, suppose that you have an alarm with a breach threshold of 50:
To trigger the adjustment when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.
To trigger the adjustment when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.
There are a few rules for the step adjustments for your step policy:
The ranges of your step adjustments can't overlap or have a gap.
At most one step adjustment can have a null lower bound. If one step adjustment has a negative lower bound, then there must be a step adjustment with a null lower bound.
At most one step adjustment can have a null upper bound. If one step adjustment has a positive upper bound, then there must be a step adjustment with a null upper bound.
The upper and lower bound can't be null in the same step adjustment.
func (*StepAdjustment) DeepCopy ¶
func (in *StepAdjustment) DeepCopy() *StepAdjustment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StepAdjustment.
func (*StepAdjustment) DeepCopyInto ¶
func (in *StepAdjustment) DeepCopyInto(out *StepAdjustment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StepScalingPolicyConfiguration ¶
type StepScalingPolicyConfiguration struct { AdjustmentType *string `json:"adjustmentType,omitempty"` Cooldown *int64 `json:"cooldown,omitempty"` MetricAggregationType *string `json:"metricAggregationType,omitempty"` MinAdjustmentMagnitude *int64 `json:"minAdjustmentMagnitude,omitempty"` StepAdjustments []*StepAdjustment `json:"stepAdjustments,omitempty"` }
Represents a step scaling policy configuration to use with Application Auto Scaling.
func (*StepScalingPolicyConfiguration) DeepCopy ¶
func (in *StepScalingPolicyConfiguration) DeepCopy() *StepScalingPolicyConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StepScalingPolicyConfiguration.
func (*StepScalingPolicyConfiguration) DeepCopyInto ¶
func (in *StepScalingPolicyConfiguration) DeepCopyInto(out *StepScalingPolicyConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SuspendedState ¶
type SuspendedState struct { DynamicScalingInSuspended *bool `json:"dynamicScalingInSuspended,omitempty"` DynamicScalingOutSuspended *bool `json:"dynamicScalingOutSuspended,omitempty"` ScheduledScalingSuspended *bool `json:"scheduledScalingSuspended,omitempty"` }
Specifies whether the scaling activities for a scalable target are in a suspended state.
func (*SuspendedState) DeepCopy ¶
func (in *SuspendedState) DeepCopy() *SuspendedState
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuspendedState.
func (*SuspendedState) DeepCopyInto ¶
func (in *SuspendedState) DeepCopyInto(out *SuspendedState)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetTrackingScalingPolicyConfiguration ¶
type TargetTrackingScalingPolicyConfiguration struct { // Represents a CloudWatch metric of your choosing for a target tracking scaling // policy to use with Application Auto Scaling. // // For information about the available metrics for a service, see AWS Services // That Publish CloudWatch Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) // in the Amazon CloudWatch User Guide. // // To create your customized metric specification: // // * Add values for each required parameter from CloudWatch. You can use // an existing metric, or a new metric that you create. To use your own metric, // you must first publish the metric to CloudWatch. For more information, // see Publish Custom Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) // in the Amazon CloudWatch User Guide. // // * Choose a metric that changes proportionally with capacity. The value // of the metric should increase or decrease in inverse proportion to the // number of capacity units. That is, the value of the metric should decrease // when capacity increases, and increase when capacity decreases. // // For more information about CloudWatch, see Amazon CloudWatch Concepts (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html). CustomizedMetricSpecification *CustomizedMetricSpecification `json:"customizedMetricSpecification,omitempty"` DisableScaleIn *bool `json:"disableScaleIn,omitempty"` // Represents a predefined metric for a target tracking scaling policy to use // with Application Auto Scaling. // // Only the AWS services that you're using send metrics to Amazon CloudWatch. // To determine whether a desired metric already exists by looking up its namespace // and dimension using the CloudWatch metrics dashboard in the console, follow // the procedure in Building dashboards with CloudWatch (https://docs.aws.amazon.com/autoscaling/application/userguide/monitoring-cloudwatch.html) // in the Application Auto Scaling User Guide. PredefinedMetricSpecification *PredefinedMetricSpecification `json:"predefinedMetricSpecification,omitempty"` ScaleInCooldown *int64 `json:"scaleInCooldown,omitempty"` ScaleOutCooldown *int64 `json:"scaleOutCooldown,omitempty"` TargetValue *float64 `json:"targetValue,omitempty"` }
Represents a target tracking scaling policy configuration to use with Application Auto Scaling.
func (*TargetTrackingScalingPolicyConfiguration) DeepCopy ¶
func (in *TargetTrackingScalingPolicyConfiguration) DeepCopy() *TargetTrackingScalingPolicyConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTrackingScalingPolicyConfiguration.
func (*TargetTrackingScalingPolicyConfiguration) DeepCopyInto ¶
func (in *TargetTrackingScalingPolicyConfiguration) DeepCopyInto(out *TargetTrackingScalingPolicyConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.