u/Vickersa1
Vickersa1
Vickersa1
It would be if our clients did not insist on an on-prem commercial DB vendor, so we have to build/test for that platform.
Vickersa1
A lot of people have suggested this approach and it makes sense for fixed schedules. How do you accommodate out-of-hours requests for machines?
Vickersa1
How do you accommodate requests to use those machines outside the schedule?
Vickersa1
Yes, this seems to be a common approach, but it depends upon a fixed schedule. How to you accommodate devs/QA who want to work late on occasion?
Vickersa1
Unfortunately, not an option when customers insist on a an on-prem commercial DB vendor.
Vickersa1
Good advice. For me it turned out to be thousands per month. Worth some initial investment to save tens of thousands/year.
Vickersa1
Makes sense for small-scale, but larger instance types quickly add up to significant money.
Vickersa1
What mechanism do you use for the devs to control their working hours?
Vickersa1
This seems to be a common approach. How do you handle requests for out-of-hours systems, or systems that don't conform to a fixed schedule?
Vickersa1
Unfortunately, I don't have that option. I have to run full Linux instances, as our products are enterprise installations and need to be tested on that platform, and in most cases, each instance of the app requires its own EC2 instance.
Vickersa1
I try to keep root partitions clean/small, and put everything else on EFS, where it can be shared across machines, and groomed regularly.
Vickersa1
One problem I have is that many machines are not needed on a schedule. A dev might need a machine just for a couple of hours, or QA want to run an ad-hoc test.
Vickersa1
Good point.
Vickersa1
Scaling helps manage costs of running instances, but doesn't eliminate idle time.
Vickersa1
Instance scheduler is OK if your schedule is fixed, but doesn't help devs who need access out of hours, or only need access for short periods instead of the whole day. Machines an still be idle.
Vickersa1
What triggers the action? e.g. Merge triggers "Turn on", run build/deploy, then "Turn off"?
Vickersa1
Some of my machines have to be on 24/7, others are only needed during the working day. I think I am wasting $2-3k/m on idle instances.
Vickersa1
Did you log the ticket with AWS?
Vickersa1
That helps me size the machines for when they are being used, but doesn’t help me turn them off when they are not being used.
Vickersa1
$20/hr is more than $3k/wk, > $170k/yr. If I could save even 25% of that, it still a significant number.
Vickersa1
what tool do you use to shut them down?
Vickersa1
That was my thought. Budget control is one of my objectives.
Vickersa1
I find that people just want the machine on for convenience, and rarEly, if ever, consider the cost.
Vickersa1
Larger instance types cost more. people always seem to want more resources, but rarely consider the cost. My AWS bill keeps growing.
That's a great solution. I'm guessing it works well because GMs are responsible for their own costs and are somehow incentivized to reduce costs. In my case, I don't have the option to re-allocate costs. the incentive to reduce costs comes back to me alone.