[users at bb.net] EC2 spot instance bidding and retry code
Christopher J. Morrone
morrone2 at llnl.gov
Sat May 14 00:37:06 UTC 2016
I see on master that buildbot has commit
58de958616898818f1a14a1736e6ca7bfe550114, "Add the option to retry spot
requests if they were rejected with price-too-low."
I'm not sure that I understand why this option exists. At least not the
"retry_price_adjustment" part. If one is willing to set a higher spot
price limit (bid price), then why not just bid that price the first
time? What use case is there for gradually increasing the bid price?
It almost seems like people might misunderstand how spot pricing works,
which is this: The "bid price" is only the maximum price that you are
willing to pay. The price you are charged in any given hour is the spot
price, not your bid price. The spot price varies over time. If the
spot price exceeds your bid price, your instance will be killed.
So there is no clear advantage to me to bidding less that you are
willing to pay. There is no additional cost associated with bidding
higher than the current extra spot price. You are always just charged
the spot price.
Perhaps there is some use case that I am overlooking?
If not, it would be nice to back out that change and make buildbot's
spot instance code more simple. Or perhaps just the
retry_price_adjustment part of the patch. I can perhaps see retrying
later if the bid price is too low now.
I came across this while working on ticket
http://trac.buildbot.net/ticket/2898. I think that bgilbert is correct
that the current bidding is arcane. All three suggestions make perfect
sense, and I have a first draft under way to address some of those problems.
Chris
More information about the users
mailing list