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
feat(devops): Add example for spinning up performance testing VMs on Azure #4647
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
Terraform Cloud Plan Output
|
Performance Test ResultsTCP
UDP
|
@conectado The NIC on this VM consistently gets over 1 Gbps:
|
We should add some docs on how to use this. I can do it once I figure it out. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Haven't tested this but LGTM
Would appreciate a series of commands for how to spin this up / down.
I am assuming the idea is to compile in the VM? Can we setup Rust and clone the repo as part of terraform?
# Azure Credits | ||
arm_subscription_id = "330ffa29-65cb-4bfd-9004-4a3b3c8647de" | ||
|
||
# Generate these by following |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we have this in a README in this directory perhaps?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be in the variables.tf
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated
|
||
admin_ssh_key { | ||
username = "adminuser" | ||
public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDRCYOIJco1uI8CK1hsEvNL0SeQyL2wlnOBmuSPkIhffcyVcKIYWs8mJbtiUPK0GkOga9TV29KL8WkN2MD8G5zALjvW7XKXRYAj2mQ5MIO9n18yJD+1KNudJwsg0lVJgjhzwz7R7GGhN2FIivpwPboY4q4aJRT+fQuTXpwKjUWFixaqirEIsp6F5Ia6SKZPaV4AZ2MuSgawSxacO8GGibjFISBGpndnGOzKTgfmn5MZT1EcvQK3zD6dtjA2e0c/GjsYnZ4GgTTXa0BS8AMa4UhPFd3AZ+/xZRXe+2yJX1KWMvOkQeYS7zctu6xt7NMXZkV/aQIyG1AXEKpJB3imn3QEh22gYnKe0Qg81vkt2OIy/S+hUnJnPCfJviRtRjzdCpm7unJpNU0UqkW3L1wuOz3TUsL864efmvv9V+mn1d3HN1j8EJmz/FoIonSbT4op7hdiYvdbUof45rIXuyy22KAeY32fH6xZ41ViIaEsbqb4E4HpsH0YZErgxYKoOl9VPnU= jamil@firezone.dev" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we hardcode a public key? There is az ssh vm
command that we can use instead of managing our pubkeys manually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we can use az ssh vm
in addition to the adminuser
here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, its weird they require it, using both sounds good then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I was thinking this PR is more to just add an example that devs can use individually to spin up their own VMs for performance testing. I don't know if it's worth having a persistent environment for that -- we can tweak as necessary.
I think that's out of scope for this PR -- I was just adding this to demonstrate how to spin up some VMs on Azure using Terraform to test performance with. Will have to think if it's worth adding the CI complexity to automatically performance-test in Azure in the pipeline... tbh I would like to avoid adding more external dependencies to CI if possible. Maybe it can be a manually-run workflow or something. |
Sets up boilerplate for Azure performance testing infra.
They have some really interesting high performance VMs that would be fitting for our use cases, including ones with RDMA-enabled Infiniband networking cards if we really want to go wild.