Documentation ¶
Index ¶
Constants ¶
View Source
const ( // OnDemandPercentageTag is the name of a tag that can be defined on a // per-group level for overriding maintained on-demand capacity given as a // percentage of the group's running instances. OnDemandPercentageTag = "autospotting_min_on_demand_percentage" // OnDemandNumberLong is the name of a tag that can be defined on a // per-group level for overriding maintained on-demand capacity given as an // absolute number. OnDemandNumberLong = "autospotting_min_on_demand_number" // BiddingPolicyTag stores the bidding policy for the spot instance BiddingPolicyTag = "autospotting_bidding_policy" // SpotPriceBufferPercentageTag stores percentage value above the // current spot price to place the bid SpotPriceBufferPercentageTag = "autospotting_spot_price_buffer_percentage" // AllowedInstanceTypesTag is the name of a tag that can indicate which // instance types are allowed in the current group AllowedInstanceTypesTag = "autospotting_allowed_instance_types" // DisallowedInstanceTypesTag is the name of a tag that can indicate which // instance types are not allowed in the current group DisallowedInstanceTypesTag = "autospotting_disallowed_instance_types" // DefaultSpotProductDescription stores the default operating system // to use when looking up spot price history in the market. DefaultSpotProductDescription = "Linux/UNIX (Amazon VPC)" // DefaultMinOnDemandValue stores the default on-demand capacity to be kept // running in a group managed by autospotting. DefaultMinOnDemandValue = 0 // DefaultSpotPriceBufferPercentage stores the default percentage value // above the current spot price to place a bid DefaultSpotPriceBufferPercentage = 10.0 // DefaultBiddingPolicy stores the default bidding policy for // the spot bid on a per-group level DefaultBiddingPolicy = "normal" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct { // Static data fetched from ec2instances.info InstanceData *ec2instancesinfo.InstanceData // Logging LogFile io.Writer LogFlag int // The region where the Lambda function is deployed MainRegion string MinOnDemandNumber int64 MinOnDemandPercentage float64 Regions string AllowedInstanceTypes string DisallowedInstanceTypes string OnDemandPriceMultiplier float64 SpotPriceBufferPercentage float64 SpotProductDescription string BiddingPolicy string // This is only here for tests, where we want to be able to somehow mock // time.Sleep without actually sleeping. While testing it defaults to 0 (which won't sleep at all), in // real-world usage it's expected to be set to 1 SleepMultiplier time.Duration // Filter on ASG tags // for example: spot-enabled=true,environment=dev,team=interactive FilterByTags string }
Config contains a number of flags and static data storing the EC2 instance information.
Click to show internal directories.
Click to hide internal directories.