Instances
Create, inspect, connect to, and delete tenant virtual machines in Skyline.
Instances are virtual machines in your OpenStack project. A typical tenant VM needs an image, flavor, network, and security group rules. Skyline console access can work without a floating IP; generated DNS, public app access, and mustelinet SSH need floating IP exposure through the mustelinet edge model. SSH keypairs are optional for workflows such as VM-to-VM SSH inside a project subnet.
Image and flavor
Choose the operating system and compute size that match the workload and quota.
Project network
Attach the VM to a network with the router path your access model needs.
Security group
Allow only the ports needed for SSH, HTTP, HTTPS, or the application.
Console access
Use a VM password for dashboard-only login without floating IP exposure.
Pomerium SSH
Expose SSH through the mustelinet route when you need external shell access.
Floating IP
Associate one when the VM needs generated DNS, public app access, or mustelinet SSH.
Before you create an instance
Prepare these tenant resources first:
- A login plan: use Password for Skyline console access, or an SSH keypair only when your image, launch workflow, or VM-to-VM SSH use case needs one.
- A security group that allows only the traffic you need.
- A project network connected through a router, or another network path provided by your project.
- A plan for storage: ephemeral disk, boot volume, or attached data volume.
- A floating IP if the VM must be reachable through generated DNS names, HTTP/HTTPS edge routing, or mustelinet SSH.
Create an instance
- In Skyline, switch to the correct project.
- Open Compute, then Instances.
- Choose Create Instance or Launch Instance.
- Enter a clear instance name. Include the app or environment name if your project has many VMs.
- Select an image. Ubuntu images normally use the
ubuntudefault SSH user. - Select a flavor with enough vCPU, RAM, and disk for the workload.
- Select the target network.
- In System Config, choose Login Type
Passwordif you want Skyline console login without exposing SSH. - Set Login Name to the image's default user and enter a strong Login Password.
- Choose Keypair only if your workflow needs key-based SSH.
- Attach one or more security groups.
- Add a boot volume or extra volume if the workload needs persistent storage.
- Review the request and create the instance.
Creation can take a few minutes. Watch the instance status until it becomes active.
Access paths after creation
Use the path that matches how the VM should be reached:
| Access path | What to do | Floating IP required |
|---|---|---|
| Skyline console | Open the instance Console action and log in with the VM username and password. | No |
| mustelinet SSH through Pomerium | Associate a floating IP, allow TCP 22, and connect to ssh.mustelinet.com:2222. | Yes |
Console access is useful for first boot, troubleshooting, and VMs that should not expose SSH. See Console access for usernames and password reset behavior.
Associate a floating IP
A floating IP is required for most tenant-facing access paths, including generated DNS names, public HTTP/HTTPS app routing, and mustelinet SSH routes.
🧭 Floating IPs are route anchors
Public users should normally use generated names under apps.mustelinet.com or mustelinet SSH routes, not the raw floating IP address.
To associate one:
- Open Network, then Floating IPs.
- Allocate a floating IP from the public network if you do not already have one.
- Associate it with the instance port.
- Return to the instance details page and confirm the floating IP appears on the instance.
The current tenant floating IP range is 10.50.0.0/24. Treat these as edge-facing tenant addresses used by mustelinet routing, not as direct public internet IPs. Public users normally reach your app by using generated DNS names under apps.mustelinet.com.
Inspect status and console
Use the instance details page to check:
- Power state and task state.
- Fixed IPs and floating IPs.
- Attached volumes.
- Security groups.
- Console log and web console, when exposed.
The web console is useful for first-boot troubleshooting and confirming whether SSH is running.
Default console usernames
| Image family | Console username |
|---|---|
| Ubuntu images | ubuntu |
| Debian images | debian |
| Fedora Cloud | fedora |
| AlmaLinux | almalinux |
| Rocky Linux | rocky |
| Alpine | alpine |
| Fedora CoreOS | core |
Use normal server or cloud images for interactive console login. Fedora CoreOS, Trove, managed Kubernetes, appliance, and cluster-node images are not the default choice for a normal interactive VM login flow.
Change a console password
If Skyline exposes Set Password or Change Password for an existing VM, that action changes the local password inside the VM. It depends on QEMU Guest Agent support inside the guest and on the VM having been created with the guest-agent channel available.
If the VM is old or the guest agent is unavailable, rebuild or recreate the instance from a supported image, then set the password again. Do not assume Skyline can recover access to every existing VM.
Delete an instance
Before deleting, decide what should happen to attached resources.
🧹 Deleting a VM may leave billable or quota-consuming resources
Check floating IPs, volumes, security groups, keypairs, and generated DNS names after deleting an instance.
Deleting an instance normally removes the VM and its ephemeral disk. It may not delete:
- Floating IPs allocated to the project.
- Security groups.
- SSH keypairs.
- Volumes that were created separately or marked to persist.
- DNS names generated from a floating IP that still exists.
Release unused floating IPs and delete unused volumes when you are done with them. Otherwise they may keep consuming quota.
