Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1ES Hosted Pools: Use spot VMs #3071

Merged
merged 6 commits into from
Sep 3, 2022

Conversation

StephanTLavavej
Copy link
Member

@StephanTLavavej StephanTLavavej commented Sep 2, 2022

This updates our 1ES Hosted Pools (#3054) to use spot VMs, like our old Virtual Machine Scale Sets did. The tradeoff is the same: they are occasionally subject to eviction due to fluctuating capacity, but they're cheaper.

To do this, we need to pass an 'enableSpot' = $true; property in create-1es-hosted-pool.ps1, and then we need to specify demands in azure-pipelines.yml.

Also, some script improvements/refactorings (as usual, apologies for mixing this into a PR with a behavioral change, but it's cleanly factored into separate commits, and updating the pool is a big enough production that I don't want to create a separate PR for this).

  • Print elapsed time.
    • This is so I can notice if the guidance in the wiki is out of date. (Currently the wiki says to expect 40 minutes and this took 41 minutes.)
  • Add progress status 'Creating network interface'.
  • Group commands, add progress status 'Creating credentials'.
  • Drop network security rules.
    • This wasn't really achieving anything, and I suspect that it has no effect with 1ES Hosted Pools (I haven't investigated this, but it may be the case that the virtual network is essentially "lost" when the VM image is generalized and captured; note that we now delete the virtual network components at the end of the script).

@StephanTLavavej StephanTLavavej added the infrastructure Related to repository automation label Sep 2, 2022
@StephanTLavavej StephanTLavavej marked this pull request as ready for review September 2, 2022 08:06
@StephanTLavavej StephanTLavavej requested a review from a team as a code owner September 2, 2022 08:06
@StephanTLavavej StephanTLavavej self-assigned this Sep 3, 2022
@StephanTLavavej
Copy link
Member Author

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

@StephanTLavavej StephanTLavavej merged commit 31d1506 into microsoft:main Sep 3, 2022
@StephanTLavavej StephanTLavavej deleted the see-spot-run branch September 3, 2022 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infrastructure Related to repository automation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants