Important Notes

  1. The Oxide CLI, Go SDK, and Terraform Provider have been updated for API enhancements described under New Features. Please be sure to upgrade.

  2. The API response payloads for /v1/instances/{instance}/external-ips and /v1/vpc-firewall-rules have been modified in this release to provide additional capabilities. If you have custom integrations using these APIs, please ensure to review the latest API docs and update your integrations as needed.

  3. The /v1/disks/{disk}/metrics API endpoint has been removed as it duplicates the disk metrics timeseries query. Please refer to the OxQL Tutorial for the query syntax if you are new to Oxide timeseries.

Installation

Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.

Upgrade Compatibility

Upgrade from version 15 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren’t stopped for software update are transitioned to the failed state when the control plane comes up. They can be configured to start automatically with auto-restart policy or they can be started manually by the user.

All existing setup and data (e.g., projects, users, instances) remain intact after the software update.

New Features

Audit log

The audit log tracks user actions within the system. It can answer questions like when a certain authentication event happened and what actions were taken by whom on instances and disks. The log is accessible to users with the fleet viewer role via the /v1/system/audit-log API endpoint.

In this release, we are logging only a small subset of operations and a few key facts about them, including timestamp, user and silo ID, HTTP status code, and error message (if applicable). In later releases we will log a more comprehensive set of operations and we will log more detailed information about what took place, such as the ID of a created resource and the ID of the API token used. Read the Audit Log guide for more details.

Admin API for user logout

Silo administrators now have the ability to log a given user out by revoking all their existing browser sessions and API tokens with the new /v1/users/{user_id}/logout endpoint. The user’s account is not disabled, but any further interaction with the system will require them to log in again. The combination of disabling a user in the identity provider and calling the logout endpoint for that user effectively eliminates their ability to interact with the Oxide system.

Intra-VPC network performance

In this release, we have made further improvements in VPC network performance and exception handling:

  • Escape from promiscuous mode with packet siphons to reduce packet processing overhead (opte#743)

  • Do not generally treat zero-checksums as 'omitted' (opte#792)

  • Send MSS in-band when performing pseudo-GRO (opte#805)

Support bundle

Support bundles provide a wide variety of diagnostic information to both operators and Oxide support staff for troubleshooting purposes. Bundle content may cover system log files, health and operational metrics, and error reports. These system artifacts do not include any guest operating system in-memory or on-disk data in VM instances, nor any data within detached disks, snapshots, and images.

Users with the fleet administrator role can create, download, and inspect support bundle content via the bundle APIs. See the Troubleshooting guide for more details and command examples.

Web console

There are no major new console features. We made changes to support API improvements like a higher instance memory limit, SNAT IPs in the instance external IPs list, and firewall rule ICMP code/type filters.

Full console changelog

Bug fixes and other enhancements

  • Raise instance maximum memory limit to 1.5 TiB on sleds with 2 TiB DRAM (omicron#8527)

  • Expose SNAT IPs in instance external IP list (omicron#8163)

  • Firewall rules support filtering by ICMP code/type (opte#730, omicron#8194)

  • Remove default-silo from resource utilization query (omicron#5731)

  • Do not add routes or advertise tunnel exit for down links (maghemite#514)

  • Improve large snapshot creation error handling (crucible#1758)

Known Behavior and Limitations

End-user features

Feature AreaKnown Issue/LimitationIssue Number

Disk/image management

Disks in importing_from_bulk_writes state cannot be deleted directly. The procedure for unsticking a canceled disk import can be used as a workaround.

Disk/image management

Disk rejected by guest OS due to duplicate nvme device names. The issue is caused by a 20-character limit in applying the disk name to the device serial number. See the Troubleshooting guide for more information.

-

Disk/image management

Image upload sometimes stalls with HTTP/2 on Firefox.

Disk/image management

The ability to modify image metadata is not available at this time.

Instance orchestration

Instances fail to start when one of the switch zones is unavailable.

Instance orchestration

New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.

Instance performance

The tsc clocksource is treated as unreliable by guest, resulting in its fallback to use substantially slower timestamp syscalls. A workaround for this issue can be found in the Troubleshooting Guide.

Instance performance

Linux guests unable to capture hardware events using perf record. A workaround for this issue can be found in the Troubleshooting Guide.

VPC internet gateway

Changing a silo’s default IP pool causes some instances to lose their outbound internet access. This is due to a mismatch between the pool containing the instances' external IP (which are allocated from the new default pool) and the pool attached to the system-created internet gateways (which are linked to the old pool during creation time). Please see the Troubleshooting Guide for some possible options for restoring instance outbound connectivity.

VPC routing

Subnet update clears custom router ID when the field is left out of the request body.

VPC routing

Network interface update clears transit ips when the field is left out of the request body.

-

Telemetry

VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.

-

Operator features

Feature AreaKnown Issue/LimitationIssue Number

Silo management

The ability to modify silo and IDP metadata is not available at this time.

omicron#3400, omicron#3125

System management

Sled and physical storage availability real-time status are not available in the inventory UI and API yet.

omicron#2035

System management

Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.

-

System management

Operator-driven instance migration across sleds is currently unavailable.

-