DevOps portal — Virtual machines¶
Virtual machines → Request VM gets your team a VM, built by the automation from the standard template for its operating system.
Requesting a VM¶
| Field | Notes |
|---|---|
| Owning team | The team the VM belongs to |
| Purpose | Lowercase letters and digits (stockapp). The form shows the name it will get, srv-… |
| Environment | dev, qa or prod |
| Size | Small: 2 vCPU, 4 GB, 40 GB disk. Medium: 4 vCPU, 8 GB, 60 GB. Large: 8 vCPU, 16 GB, 120 GB |
| Operating system | The templates on offer, Linux and Windows |
| SSH keys (Linux, optional) | Public keys for the ops login, one per line. See SSH keys |
The preview shows the approvals it needs.
| dev, qa | prod | |
|---|---|---|
| New VM, resize | A team owner | A team owner, then platform |
| Decommission | A team owner | A team owner, then platform |
The team owner step is skipped when you're an owner yourself. Platform approves VMs in the portal, not GitLab.
Once approved the VM is built; the change finishes when it's running. Disks only grow: a resize can make a disk bigger, never smaller.
In the drawer: start, shut down and reboot (developers outside prod, owners in prod), Change VM to resize, and Decommission. A decommissioned VM is stopped and destroyed after a grace period (7 days); until then you can Restore it.
Connecting¶
The VM's Connect tab has its hostname, IP address and the command to use. Connect over the VPN. Production access is time-limited: Request access on the Connect tab, and another owner of the team approves it.
One login, ops, signs in with an SSH key. There's no password.
ops has passwordless sudo.
SSH keys¶
Linux VMs take OpenSSH public keys (the .pub file) for the ops login:
ssh-ed25519,ecdsa-sha2-nistp256/384/521, security keys (sk-ssh-ed25519@openssh.com,sk-ecdsa-sha2-nistp256@openssh.com) andssh-rsa.- One key per line, no options in front of the key. A comment at the end is fine.
- Up to 20 keys per VM through the portal.
Paste them in the SSH keys box when you request the VM, or later with Change SSH keys in the VM's drawer. That lists the keys added through the portal by name, type, comment and fingerprint (never the key itself): tick Remove on the ones to take off, paste new ones under Add keys. Keys set by platform aren't listed or changed.
Every key is root
ops has passwordless sudo, so anyone whose key is on the VM has root on it. That's why
key changes need approval: in prod, another team owner (even if you are one) and then
platform; in dev and qa, a team owner as for a resize.
Once the change is done, the automation applies the keys to the VM within a few minutes. A stopped VM gets them after it's started and the automation has configured it.
The old way in, short-lived SSH certificates from step-ca, is gone: use SSH keys.