<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://docs.oxide.computer/release-notes/undefined</id>
    <title>Oxide System Release Notes</title>
    <updated>2026-04-04T00:41:09.714Z</updated>
    <generator>Remix using Feed for Node.js</generator>
    <author>
        <name>Oxide Computer Company</name>
        <email>info@oxide.computer</email>
        <uri>https://docs.oxide.computer</uri>
    </author>
    <link rel="alternate" href="https://docs.oxide.computer/release-notes/undefined"/>
    <link rel="self" href="https://docs.oxide.computer/release-notes/undefined/feed"/>
    <subtitle>Release notes feed for System</subtitle>
    <logo>https://docs.oxide.computer/favicon.png</logo>
    <icon>https://docs.oxide.computer/favicon.png</icon>
    <rights>Copyright © 2026 Oxide Computer Company</rights>
    <entry>
        <title type="html"><![CDATA[v18]]></title>
        <id>https://docs.oxide.computer/release-notes/system/18</id>
        <link href="https://docs.oxide.computer/release-notes/system/18"/>
        <updated>2026-02-20T01:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Most breaking API changes in this release are related to the introduction
of IPv6 and local disks, which require networking and disk endpoints
to distinguish between IP versions and disk types. See below for
details. The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide
CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and
<a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform
Provider</a> have been updated accordingly.</p></div><details><summary class="title">Disks</summary><div class="content"><div class="paragraph"><p>The <a href="/api/disk_create" class="api-link">disk create</a> API now requires a <code>disk_backend</code>
attribute specifying whether the disk is of type <code>distributed</code> or <code>local</code>.</p></div></div></details><details><summary class="title">Network interfaces</summary><div class="content"><div class="paragraph"><p>The previous flat <code>ip</code> and <code>transit_ips</code> fields on network interfaces have been
replaced with a single <code>ip_config</code> field (in create requests) or <code>ip_stack</code>
field (in responses) that specifies the IP version: <code>v4</code>, <code>v6</code>, or
<code>dual_stack</code>. If <code>ip_config</code> is omitted, it defaults to <code>dual_stack</code> with
automatically assigned addresses. See the API specifications for network
interface <a href="/api/instance_network_interface_create" class="api-link">create</a>,
<a href="/api/instance_network_interface_update" class="api-link">update</a>, and
<a href="/api/instance_network_interface_view" class="api-link">view</a> operations.</p></div><div class="paragraph"><p>In the <a href="/api/instance_create" class="api-link">instance create</a> request, the <code>default</code>
network interface option has been replaced by <code>default_ipv4</code>, <code>default_ipv6</code>,
and <code>default_dual_stack</code>. Each of these creates a single primary interface
with IP addresses of the corresponding versions. If <code>network_interfaces</code> is
omitted, it defaults to <code>default_dual_stack</code>.</p></div></div></details><details><summary class="title">Ephemeral and floating IPs</summary><div class="content"><div class="paragraph"><p>External IP attachment now supports IPv6 addresses. The previous <code>pool</code> field
has been replaced with <code>pool_selector</code>, which can be <code>explicit</code> (specifying a
pool by name or ID) or <code>auto</code> (using the silo&#8217;s default pool, with an optional
<code>ip_version</code> to disambiguate when both v4 and v6 defaults exist). See
<a href="/api/instance_ephemeral_ip_attach" class="api-link">Instance ephemeral IP attach</a>.</p></div><div class="paragraph"><p><a href="/api/floating_ip_create" class="api-link">Floating IP create</a> has replaced the <code>ip</code> and
<code>pool</code> fields with an <code>address_allocator</code> field that supports two modes:
<code>explicit</code> (to reserve a specific IP address) or <code>auto</code> (to allocate from a
pool using <code>pool_selector</code>).</p></div><div class="paragraph"><p><a href="/api/floating_ip_attach" class="api-link">Floating IP attach</a> request body has changed from
<code>{ instance }</code> to <code>{ kind, parent }</code>, where <code>kind</code> is the type of resource
(e.g., <code>instance</code>) and <code>parent</code> is its name or ID.</p></div><div class="paragraph"><p><a href="/api/instance_ephemeral_ip_detach" class="api-link">Instance ephemeral IP detach</a> has a new
<code>ip_version</code> query parameter to specify whether to detach the v4 or v6 address.
This parameter is required when the instance has both.</p></div></div></details><details><summary class="title">IP pool versions</summary><div class="content"><div class="paragraph"><p>IP pools now have an <code>ip_version</code> field that must be set at creation time.
The default is <code>v4</code>; to create a pool for IPv6 addresses, specify <code>ip_version:
v6</code>. Default pool assignment for a silo is now per IP version. A silo can have
separate default pools for v4 and v6.</p></div></div></details><details><summary class="title">IP pool commands moved</summary><div class="content"><div class="paragraph"><p>IP pool CLI commands have moved. Operator commands moved from <code>oxide ip-pool</code>
to <code>oxide system networking ip-pool</code>. Silo-scoped commands for listing available
pools moved from <code>oxide project ip-pool</code> to <code>oxide ip-pool</code>. API operation IDs
and derived SDK method names have changed correspondingly (e.g., <code>ip_pool_list</code>
→ <code>system_ip_pool_list</code>, <code>project_ip_pool_list</code> → <code>ip_pool_list</code>). The API
endpoint URLs are unchanged.</p></div></div></details></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0
release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of
Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 17 is supported. We recommend shutting down all
running instances on the rack before software update commences. Any instances
that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state
when the control plane comes up. They can be configured to start automatically
with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or
they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact
after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_instance_local_storage" aria-hidden="true"></span><a class="link group" href="#_instance_local_storage">Instance local storage<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p><strong>Local disks</strong> are a new storage option for specialized workloads requiring
high performance with lower resilience and availability requirements.
Distributed virtual disks remain the default and recommended storage option
for most workloads. Unlike distributed disks, which have replicas across three
distinct sleds, local disks reside on the same sled as the instance they&#8217;re
attached to, providing lower latency and higher throughput at the cost of
reduced redundancy.</p></div><div class="paragraph"><p>Local disks do not provide encryption, replication, or snapshots. These features
must be implemented at the application layer if needed. Use local disks only for
workloads such as caching layers, temporary computation results, or distributed
databases with application-level replication. For all other workloads, use
distributed virtual disks.</p></div><div class="paragraph"><p>See the <a href="/guides/managing-disks-and-snapshots">Disks and Snapshots</a> guide
for more information on local storage configuration and use cases.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_dual_ip_stack_guest_networking" aria-hidden="true"></span><a class="link group" href="#_dual_ip_stack_guest_networking">Dual IP-stack guest networking<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The use of IPv6 for instance network connectivity is now available. Instances
are v4/v6 dual-stack addressable on VPC subnets by default, and can be
assigned external IP addresses from v4 or v6 IP pools at the user&#8217;s discretion.</p></div><div class="paragraph"><p>These new capabilities change how IP address assignment is specified, especially
for silos configured to use external IPv6 addresses. With dual-stack defaults,
when provisioning new instances or modifying instance network interfaces, users
will need to explicitly indicate the IP version to use. See the breaking API
changes above for a list of affected endpoints.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_external_subnets" aria-hidden="true"></span><a class="link group" href="#_external_subnets">External subnets<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>External subnets can be attached to instances to delegate external IP address
management to the instance. Unlike addresses managed by the Oxide control plane,
external subnet addresses are not NAT&#8217;d and are advertised as the source or
destination IP end-to-end. A common use of this delegated IPAM feature is
infrastructure software such as container management platforms and load balancers.
For example, a Kubernetes controller running on an Oxide instance can be assigned
a <code>/16</code> external subnet so it can assign addresses on the external network to the
pods it creates without the need for an encapsulating overlay network.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_other_enhancements">Other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Maximum number of vcpus for instances increased from 64 to 128</p></li><li><p>Maximum number of disks that can be attached to an instance increased from 8 to 12</p></li><li><p>Improved instance-to-instance VPC network performance</p></li><li><p>Technician port address assignment using DHCPv6
(<a href="https://github.com/oxidecomputer/dendrite/pull/165">dendrite#165</a>, see the
<a href="/guides/system/network-preparations#_dhcpv6_addressing">Networking Preparations</a>
guide about limitations with using DHCPv6)</p></li><li><p>Expand audit log coverage to all mutating (non-GET) API requests and include
caller credential ID (<a href="https://github.com/oxidecomputer/omicron/pull/9467">omicron#9467</a>)</p></li><li><p>IPv6 static routing</p></li><li><p>IPv6 route exchange via Multi-Protocol BGP</p></li><li><p>Support for unnumbered BGP peering</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Instance and disk UIs have been updated to support local disks. Networking UIs
have been updated for IPv6 pools and dual-stack network interfaces. Operators
can now set and clear default IP pools directly from the linked silos list on
the IP pool detail page. We&#8217;ve also added links to relevant docs on every form
to make sure users have the right information when they need it.</p></div><div class="paragraph"><p>Support for managing subnet pools and external subnets in the console will
follow in the next release.</p></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>IPv6 networking (<a href="https://github.com/oxidecomputer/console/pull/3005">console#3005</a>, <a href="https://github.com/oxidecomputer/console/pull/3054">console#3054</a>, <a href="https://github.com/oxidecomputer/console/pull/3053">console#3053</a>)</p></li><li><p>Local disks (<a href="https://github.com/oxidecomputer/console/pull/2984">console#2984</a>, <a href="https://github.com/oxidecomputer/console/pull/3002">console#3002</a>, <a href="https://github.com/oxidecomputer/console/pull/3055">console#3055</a>)</p></li><li><p>Set and clear default IP pool from linked silos list (<a href="https://github.com/oxidecomputer/console/pull/3060">console#3060</a>)</p></li><li><p>Add relevant docs links to all forms (<a href="https://github.com/oxidecomputer/console/pull/3048">console#3048</a>, <a href="https://github.com/oxidecomputer/console/pull/3052">console#3052</a>)</p></li><li><p>Add disk detail view in side modal (<a href="https://github.com/oxidecomputer/console/pull/2992">console#2992</a>)</p></li><li><p>Client-side max CPUs per instance up to 254, max disks to 12 (<a href="https://github.com/oxidecomputer/console/pull/2974">console#2974</a>, <a href="https://github.com/oxidecomputer/console/pull/2995">console#2995</a>)</p></li><li><p>Ephemeral IP attach disabled instead of hidden when unavailable (<a href="https://github.com/oxidecomputer/console/pull/3044">console#3044</a>)</p></li><li><p>Many small UI fixes (<a href="https://github.com/oxidecomputer/console/pull/2962">console#2962</a>, <a href="https://github.com/oxidecomputer/console/pull/2991">console#2991</a>, <a href="https://github.com/oxidecomputer/console/pull/2994">console#2994</a>, <a href="https://github.com/oxidecomputer/console/pull/2996">console#2996</a>, <a href="https://github.com/oxidecomputer/console/pull/3018">console#3018</a>, <a href="https://github.com/oxidecomputer/console/pull/3043">console#3043</a>, <a href="https://github.com/oxidecomputer/console/pull/3045">console#3045</a>)</p></li><li><p>Send <code>api-version</code> request header (<a href="https://github.com/oxidecomputer/console/pull/2981">console#2981</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes" aria-hidden="true"></span><a class="link group" href="#_bug_fixes">Bug fixes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Support bundles were stuck in destroying state if bundle was canceled
early in the process
(<a href="https://github.com/oxidecomputer/omicron/issues/9331">omicron#9331</a>)</p></li><li><p>Support bundles in failed state were not deletable or automatically cleaned up
(<a href="https://github.com/oxidecomputer/omicron/issues/9558">omicron#9558</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_patches" aria-hidden="true"></span><a class="link group" href="#_patches">Patches<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>When creating an instance in a VPC subnet, address allocation for one IP
version could silently fail if no addresses of that version previously existed
in the subnet
(<a href="https://github.com/oxidecomputer/omicron/pull/9880">omicron#9880</a>). Fixed in
release 18.1.</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>AMD microcode 20251202</p></li><li><p>Storage firmware updates for Western Digital SN655 and SN861 series NVMe drives (not applicable to all hardware configurations)</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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 <a href="/guides/troubleshooting#_disk_rejected_due_to_20_char_name_match">Troubleshooting</a> guide for more information.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Read-only disks not ready to be used as instance boot disks</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/1059">propolis#1059</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sporadic network connectivity issues on Windows instances</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/1048">propolis#1048</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to start an instance that has a disk replica on a sled being updated.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/crucible/issues/1690">crucible#1690</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Anti-affinity groups should disallow inclusion of instances from a different project</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/pull/9897">omicron#9897</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/8001">omicron#8001</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Linux guests unable to capture hardware events using <code>perf record</code>. A workaround for this issue can be found in the <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/894">propolis#894</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance firewall rules</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">No firewall rule support for ICMPv6</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/9908">omicron#9908</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance firewall rules</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules meant to allow traffic to the IP subnet of an external subnet are not correctly propagated to the instance. For example, suppose the subnet <code>1.2.3.0/24</code> is attached to instance <code>my-inst</code>. A firewall rule allowing inbound traffic with a <code>Target type</code> of <code>IP Subnet</code> and value <code>1.2.3.0/24</code> will not work — the default deny rules will still drop the traffic. To work around this, target the instance by name instead: use a <code>Target type</code> of <code>Instance</code> with value <code>my-inst</code>. This will correctly allow inbound traffic destined for the external subnet to reach the instance.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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 <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Rack networking</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sporadic external connectivity issues caused by static route flapping</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/pull/9907">omicron#9907</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Silo management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify silo and IDP metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3400">omicron#3400</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3125">omicron#3125</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability real-time status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Some running instances transitioned to the &quot;stopped&quot; state after update.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/9177">omicron#9177</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><code>hardware_component:power</code> timeseries do not return any metrics</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/hubris/issues/1581">hubris#1581</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v17]]></title>
        <id>https://docs.oxide.computer/release-notes/system/17</id>
        <link href="https://docs.oxide.computer/release-notes/system/17"/>
        <updated>2025-11-11T03:01:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-17-system-update.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>,
<a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and
<a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform
Provider</a> have been updated for API enhancements described under
<a href="#_new_features">New Features</a>. Please be sure to upgrade.</p></li><li class=""><p>IP pools now have a <code>version</code> field (<code>&quot;v4&quot;</code> or <code>&quot;v6&quot;</code>), which is set at
create time (<a href="https://github.com/oxidecomputer/omicron/pull/8885">omicron#8885</a>,
<a href="https://github.com/oxidecomputer/omicron/pull/8951">omicron#8951</a>).
Pools can only contain IPs of one version. Accordingly, the
<a href="/api/system_ip_pool_utilization_view" class="api-link">IP pool utilization</a> API
response no longer includes separate counts for IPv4 and IPv6
(<a href="https://github.com/oxidecomputer/omicron/pull/8928">omicron#8928</a>). If you have
custom integrations relying on this endpoint, be sure to review the latest API
docs and update your integrations as needed.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0
release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of
Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 16 or 16.1 is supported. We recommend shutting down all
running instances on the rack before software update commences. Any instances
that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state
when the control plane comes up. They can be configured to start automatically
with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or
they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact
after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_self_service_system_update" aria-hidden="true"></span><a class="link group" href="#_self_service_system_update">Self-service system update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Operators can now manage system updates independently through the API and web
console, without direct Oxide involvement.</p></div><div class="imageblock   " style="max-width:597px"><div class="content"><img src="/img/rel-17-system-update.png" alt="System update in the web console" width="597px"/></div></div><div class="paragraph"><p>This first version of update does not support live migration. While a
given instance will likely be up for most of the duration of the update, the
timing and duration of instance reboots and downtime are unpredictable. For
this reason, we recommend shutting down running instances during the process.
More details about the impact and current limitations of system update can be
found in the <a href="/guides/operator/system-update">System Update</a> guide.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_scim_v2_0_support" aria-hidden="true"></span><a class="link group" href="#_scim_v2_0_support">SCIM v2.0 support<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The System for Cross-Domain Identity Management (SCIM) protocol defines a
standardized schema and API for managing users and groups in a centralized
Identity Provider (IdP) and synchronizing them to a service provider. Prior
to this release, users and groups could only be imported on a just-in-time
(JIT) basis from the IdP during login events. SCIM is now available as an
option for instant data synchonization from the identity provider along
with SAML authentication. This new integration option allows operators to
configure silo access permissions ahead of the first user login. See the
<a href="/guides/operator/identity-providers">Identity Providers</a> guide for the
configuration requirements and an end-to-end example with Okta as the IdP.</p></div><div class="admonitionblock note"><div class="admonition-icon"><svg width="12" height="12" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg" class="rotate-180"><path fill-rule="evenodd" clip-rule="evenodd" d="M6 12A6 6 0 1 0 6 0a6 6 0 0 0 0 12Zm.083-9c.368 0 .667.299.667.667v2.666A.667.667 0 0 1 6.083 7h-.166a.667.667 0 0 1-.667-.667V3.667c0-.368.299-.667.667-.667h.166Zm0 5c.368 0 .667.299.667.667v.166a.667.667 0 0 1-.667.667h-.166a.667.667 0 0 1-.667-.667v-.166c0-.368.299-.667.667-.667h.166Z" fill="currentColor"></path></svg></div><div class="admonition-content content"><div>Note</div><div>SCIM v2.0 implementations vary across different identity providers. Schema
and API variations may cause certain user/group CRUD workflows to behave in
unexpected ways. See the above IdP integration guide to understand which parts
of the protocol are covered by Oxide’s SCIM implementation.</div></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_limited_collaborator_role" aria-hidden="true"></span><a class="link group" href="#_limited_collaborator_role">Limited collaborator role<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>We&#8217;ve added a <code>limited_collaborator</code> role alongside our existing <code>viewer</code>,
<code>collaborator</code>, and <code>admin</code> roles. A limited collaborator can create and
manage instances and related resources like disks, but they cannot modify
the networking resources nested under VPCs, like subnets, firewall rules, and
internet gateways. See the <a href="/guides/configuring-access">Access Control</a> guide
for more details.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Operators can use the new System Update page to track update progress, list
available releases, and initiate an update by setting a target release. The
ability to upload a release through the console will be added in a future
release; for now, use the CLI.</p></li><li><p>To support SCIM, we added a tab to the silo detail page where you can manage
tokens for authenticating the IdP&#8217;s requests to our SCIM endpoints.</p></li><li><p>We added support for the new limited collaborator role on the silo and project
access pages and improved the help copy on the role assignment form.</p></li></ul></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>Limited collaborator on silo and project access pages (<a href="https://github.com/oxidecomputer/console/pull/2960">console#2960</a>)</p></li><li><p>Manage SCIM tokens + add SCIM option to silo create (<a href="https://github.com/oxidecomputer/console/pull/2926">console#2926</a>, <a href="https://github.com/oxidecomputer/console/pull/2955">console#2955</a>)</p></li><li><p>Add IP pool type to IP pool create (<a href="https://github.com/oxidecomputer/console/pull/2951">console#2951</a>)</p></li><li><p>Remove underlines in firewall rule messages (<a href="https://github.com/oxidecomputer/console/pull/2950">console#2950</a>)</p></li><li><p>System update page (<a href="https://github.com/oxidecomputer/console/pull/2915">console#2915</a>, <a href="https://github.com/oxidecomputer/console/pull/2922">console#2922</a>, <a href="https://github.com/oxidecomputer/console/pull/2946">console#2946</a>, <a href="https://github.com/oxidecomputer/console/pull/2947">console#2947</a>)</p></li><li><p>Convert silo page tabs to route-based navigation (<a href="https://github.com/oxidecomputer/console/pull/2912">console#2912</a>, <a href="https://github.com/oxidecomputer/console/pull/2954">console#2954</a>)</p></li><li><p>Badges with integrated spinners (<a href="https://github.com/oxidecomputer/console/pull/2742">console#2742</a>)</p></li><li><p>Update IP pool utilization for new API response (<a href="https://github.com/oxidecomputer/console/pull/2897">console#2897</a>)</p></li><li><p>Add IP pool name to Attach Floating IP dropdown (<a href="https://github.com/oxidecomputer/console/pull/2870">console#2870</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Support bundle failed to collect large log files (<a href="https://github.com/oxidecomputer/omicron/pull/8771">omicron#8771</a>)</p></li><li><p>Don&#8217;t fail active bundles with expunged Nexuses (<a href="https://github.com/oxidecomputer/omicron/pull/9286">omicron#9286</a>)</p></li><li><p>Do not fail switch slot resolution when one switch zone is unresponsive (<a href="https://github.com/oxidecomputer/omicron/pull/8914">omicron#8914</a>)</p></li><li><p>Ability for OxQL query to optionally return I/O summary and the ClickHouse query statement executed (<a href="https://github.com/oxidecomputer/omicron/pull/9017">omicron#9017</a>)</p></li><li><p>Bump MAXCPU to 254 on Helios (<a href="https://github.com/oxidecomputer/propolis/pull/960">propolis#960</a>)</p></li><li><p>Increase viona receive queue length to enable virtio queue size tuning (<a href="https://github.com/oxidecomputer/propolis/pull/935">propolis#935</a>)</p></li><li><p>Unable to delete disk hitting import failure after crucible-pantry in use went away (<a href="https://github.com/oxidecomputer/omicron/issues/9196">omicron#9196</a>)</p></li><li><p>Fix crucible-pantry panic during zone halt/termination (<a href="https://github.com/oxidecomputer/crucible/pull/1721">crucible#1721</a>)</p></li><li><p>Improve live-repair handling when one or more downstairs are offline or faulted (<a href="https://github.com/oxidecomputer/crucible/issues/1776">crucible#1776</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1777">crucible#1777</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1783">crucible#1783</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1798">crucible#1798</a>)</p></li><li><p>Fix <code>port_settings_apply</code> to update tx-eq link settings (<a href="https://github.com/oxidecomputer/dendrite/issues/135">dendrite#135</a>)</p></li><li><p>Update network-interface to resolve memory leak (<a href="https://github.com/oxidecomputer/pumpkind/pull/17">pumpkind#17</a>)</p></li><li><p>NVMe telemetry log support (<a href="https://github.com/oxidecomputer/illumos-gate/commit/7b0d41e2e6f9dd04a09d33692a556b359dab9847">illumos-gate#17640</a>)</p></li><li><p>Fix cxgbe stack overflow in t4_eth_tx() (<a href="https://github.com/oxidecomputer/illumos-gate/commit/2d03260a0e972a24d35d45cafe665ebb937014fd">illumos-gate#17674</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_patches" aria-hidden="true"></span><a class="link group" href="#_patches">Patches<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>A security fix (<a href="https://github.com/oxidecomputer/omicron/pull/9411">omicron#9411</a>) has been added in release 17.1 for a bug present since release 15 that allowed users to generate new API tokens from an existing one, effectively extending the lifetime of the API token indefinitely.  See <a href="/security/advisories/20251117-1">Security Advisory 20251117-1</a> for details.</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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 <a href="/guides/troubleshooting#_disk_rejected_due_to_20_char_name_match">Troubleshooting</a> guide for more information.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to start an instance that has a disk replica on a sled being updated.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/crucible/issues/1690">crucible#1690</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/8001">omicron#8001</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Linux guests unable to capture hardware events using <code>perf record</code>. A workaround for this issue can be found in the <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/894">propolis#894</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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 <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Silo management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify silo and IDP metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3400">omicron#3400</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3125">omicron#3125</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability real-time status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Some running instances transitioned to the &quot;stopped&quot; state after update.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/9177">omicron#9177</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v16]]></title>
        <id>https://docs.oxide.computer/release-notes/system/16</id>
        <link href="https://docs.oxide.computer/release-notes/system/16"/>
        <updated>2025-08-11T23:01:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements described under <a href="#_new_features">New Features</a>. Please be sure to upgrade.</p></li><li class=""><p>The API response payloads for <a href="/api/instance_external_ip_list"><code>/v1/instances/{instance}/external-ips</code></a> and <a href="/api/vpc_firewall_rules_update"><code>/v1/vpc-firewall-rules</code></a> 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.</p></li><li class=""><p>The <code>/v1/disks/{disk}/metrics</code> API endpoint has been removed as it duplicates the <a href="/guides/metrics/timeseries-schemas#_virtual_disk">disk metrics timeseries query</a>. Please refer to the <a href="/guides/metrics/oxql-tutorial">OxQL Tutorial</a> for the query syntax if you are new to Oxide timeseries.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 15 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They can be configured to start automatically with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_audit_log" aria-hidden="true"></span><a class="link group" href="#_audit_log">Audit log<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>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 <a href="/api/audit_log_list"><code>/v1/system/audit-log</code></a> API endpoint.</p></div><div class="paragraph"><p>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 <a href="/guides/operator/audit-log">Audit Log</a> guide for more details.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_admin_api_for_user_logout" aria-hidden="true"></span><a class="link group" href="#_admin_api_for_user_logout">Admin API for user logout<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Silo administrators now have the ability to log a given user out by revoking all their existing <a href="/api/user_session_list" class="api-link">browser sessions</a> and <a href="/api/user_token_list" class="api-link">API tokens</a> with the new <a href="/api/user_logout" class="api-link"><code>/v1/users/{user_id}/logout</code></a> endpoint. The user&#8217;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.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_intra_vpc_network_performance" aria-hidden="true"></span><a class="link group" href="#_intra_vpc_network_performance">Intra-VPC network performance<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In this release, we have made further improvements in VPC network performance and exception handling:</p></div><div class="ulist"><ul class=""><li><p>Escape from promiscuous mode with packet siphons to reduce packet processing overhead (<a href="https://github.com/oxidecomputer/opte/pull/743">opte#743</a>)</p></li><li><p>Do not generally treat zero-checksums as 'omitted' (<a href="https://github.com/oxidecomputer/opte/pull/792">opte#792</a>)</p></li><li><p>Send MSS in-band when performing pseudo-GRO (<a href="https://github.com/oxidecomputer/opte/pull/805">opte#805</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_support_bundle" aria-hidden="true"></span><a class="link group" href="#_support_bundle">Support bundle<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>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 <strong>do not</strong> include any guest operating system in-memory or on-disk data in VM instances, nor any data within detached disks, snapshots, and images.</p></div><div class="paragraph"><p>Users with the fleet administrator role can create, download, and inspect support bundle content via the <a href="/cli/bundle">bundle APIs</a>. See the <a href="/guides/troubleshooting#_support_bundles">Troubleshooting</a> guide for more details and command examples.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>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.</p></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>Fix date picker re-renders by breaking debounce loop (<a href="https://github.com/oxidecomputer/console/pull/2874">console#2874</a>)</p></li><li><p>Add SNAT IPs to instance external IPs list (<a href="https://github.com/oxidecomputer/console/pull/2868">console#2868</a>)</p></li><li><p>Support protocol filters on firewall rules (<a href="https://github.com/oxidecomputer/console/pull/2850">console#2850</a>)</p></li><li><p>Bump max instance memory to 1536 GiB (<a href="https://github.com/oxidecomputer/console/pull/2858">console#2858</a>)</p></li><li><p>Add sled policy data to sled page (<a href="https://github.com/oxidecomputer/console/pull/2838">console#2838</a>)</p></li><li><p>Add tooltip to ephemeral IP cells in Instance Networking tab (<a href="https://github.com/oxidecomputer/console/pull/2840">console#2840</a>)</p></li><li><p>Move IP address column in internet gateways table (<a href="https://github.com/oxidecomputer/console/pull/2839">console#2839</a>)</p></li><li><p>Add empty MiniTable state (<a href="https://github.com/oxidecomputer/console/pull/2811">console#2811</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Raise instance maximum memory limit to 1.5 TiB on sleds with 2 TiB DRAM (<a href="https://github.com/oxidecomputer/omicron/pull/8527">omicron#8527</a>)</p></li><li><p>Expose SNAT IPs in instance external IP list (<a href="https://github.com/oxidecomputer/omicron/issues/8163">omicron#8163</a>)</p></li><li><p>Firewall rules support filtering by ICMP code/type (<a href="https://github.com/oxidecomputer/opte/issues/730">opte#730</a>, <a href="https://github.com/oxidecomputer/omicron/pull/8194">omicron#8194</a>)</p></li><li><p>Remove <code>default-silo</code> from resource utilization query (<a href="https://github.com/oxidecomputer/omicron/issues/5731">omicron#5731</a>)</p></li><li><p>Do not add routes or advertise tunnel exit for down links (<a href="https://github.com/oxidecomputer/maghemite/pull/514">maghemite#514</a>)</p></li><li><p>Improve large snapshot creation error handling (<a href="https://github.com/oxidecomputer/crucible/issues/1758">crucible#1758</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_patches" aria-hidden="true"></span><a class="link group" href="#_patches">Patches<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>We have fixed the following bug in an initial version of this release:</p></div><div class="ulist"><ul class=""><li><p>Outbound connectivity was affected on racks with multiple external routes (static or BGP) due to a bug in the route synchronization logic introduced by <a href="https://github.com/oxidecomputer/maghemite/pull/514">maghemite-PR#514</a>. When routes were synced to DDM, unrelated routes were mistakenly withdrawn, causing missing external routes and connectivity issues (<a href="https://github.com/oxidecomputer/maghemite/issues/538">maghemite#538</a>).</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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 <a href="/guides/troubleshooting#_disk_rejected_due_to_20_char_name_match">Troubleshooting</a> guide for more information.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances fail to start when one of the switch zones is unavailable.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6896">omicron#6896</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/8001">omicron#8001</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Linux guests unable to capture hardware events using <code>perf record</code>. A workaround for this issue can be found in the <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/894">propolis#894</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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 <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Silo management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify silo and IDP metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3400">omicron#3400</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3125">omicron#3125</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability real-time status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v15]]></title>
        <id>https://docs.oxide.computer/release-notes/system/15</id>
        <link href="https://docs.oxide.computer/release-notes/system/15"/>
        <updated>2025-06-06T22:26:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/access-tokens.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements described under <a href="#_new_features">New Features</a>. Please be sure to upgrade.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 14 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They can be configured to start automatically with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_api_access_token_management" aria-hidden="true"></span><a class="link group" href="#_api_access_token_management">API access token management<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>API access tokens have no expiration time prior to this release. Release 15 provides the following token management capabilities for administrators and users to control the lifespan of access tokens:</p></div><div class="ulist"><ul class=""><li><p>Silo admin can configure API token expiration time with the <a href="/api/auth_settings_update" class="api-link"><code>/v1/auth-settings</code> API</a></p></li><li><p>Users can list and expire their own tokens via the <a href="/api/current_user_access_token_list" class="api-link"><code>/v1/me/access-tokens</code> API</a> or the Console</p></li></ul></div><div class="imageblock   "><div class="content"><img src="/img/access-tokens.png" alt="Access tokens"/></div></div><div class="paragraph"><p>For more information, please refer to the <a href="/guides/user-settings#_access_tokens">User Settings</a> and <a href="/guides/operator/silo-management#_6_configure_access_token_expiration_optional">Silo Management</a> guides.</p></div><div class="paragraph"><p>More enhancements will come in future releases to allow users to manage their Console session tokens and for administrators to expire tokens on behalf of other users.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_large_memory_instances" aria-hidden="true"></span><a class="link group" href="#_large_memory_instances">Large memory instances<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The maximum instance memory size has been increased to 1 TiB on sleds with 2 TiB DRAM. On 1 TiB sleds, you can deploy instances with up to 809 GiB of memory. The maximum instance vcpu size remains as 64 for all existing Oxide hardware configurations.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_intra_vpc_network_performance" aria-hidden="true"></span><a class="link group" href="#_intra_vpc_network_performance">Intra-VPC network performance<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In this release, we leverage the Chelsio NIC&#8217;s Large Send Offload (LSO) and Checksum Offload (CSO) capabilities to split large TCP segments and to fill in checksums for TCP/UDP inner frames, in a way which correctly handles Geneve/VXLAN/NVGRE tunneling. Tunneled TCP Segmentation Offload (TSO) allows for faster data transfers and reduced latency, in particular, enabling the use of the full MTU for rack-local traffic. More details can be found in the main <a href="https://github.com/oxidecomputer/illumos-gate/commit/53ed1e30b6807e5e9d694326390914e7c53c0c94">commit</a> and the related fixes (<a href="https://github.com/oxidecomputer/opte/issues/746">opte#746</a> and <a href="https://github.com/oxidecomputer/opte/pull/749">opte#749</a>).</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_improved_dns_service" aria-hidden="true"></span><a class="link group" href="#_improved_dns_service">Improved DNS service<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The DNS service managed by Oxide has been enhanced to cover the SOA (Start of Authority), NS (Name Server) and A (Address) records for the delegated subdomain to facilitate DNS troubleshooting and auditing. More details about the implementation can be found in <a href="https://github.com/oxidecomputer/omicron/pull/8047">omicron#8047</a>.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_system_alerts_infrastructure" aria-hidden="true"></span><a class="link group" href="#_system_alerts_infrastructure">System alerts infrastructure<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>We have put in place the alerts infrastructure in preparation for exposing Fault Management notifications to operators in future releases. Alerts are the mechanism through which the Oxide control plane notifies the outside world of events that occur within the system. Webhooks provide a mechanism for receiving such notifications. There are no events available for subscription at this time but you can use the <a href="/guides/alerts/overview">Alerts</a> guides and the corresponding API endpoints to explore how to leverage alerts when they become available.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In addition to the new functionality provided in the Access Token UI, there are a number of minor enhancements and fixes to further improve the web console experience.</p></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>List and delete my access tokens (<a href="https://github.com/oxidecomputer/console/pull/2833">console#2833</a>)</p></li><li><p>Bump max instance RAM to 1024 GiB (<a href="https://github.com/oxidecomputer/console/pull/2825">console#2825</a>)</p></li><li><p>Fix target for checkbox on instance create form (<a href="https://github.com/oxidecomputer/console/pull/2808">console#2808</a>)</p></li><li><p>Tighter spacing on full page forms like instance create (<a href="https://github.com/oxidecomputer/console/pull/2815">console#2815</a>)</p></li><li><p>Disable primary NIC delete when multiple NICs present (<a href="https://github.com/oxidecomputer/console/pull/2806">console#2806</a>)</p></li><li><p>Convert attach disk form to regular modal (<a href="https://github.com/oxidecomputer/console/pull/2746">console#2746</a>)</p></li><li><p>Subtle mousedown animation on buttons (<a href="https://github.com/oxidecomputer/console/pull/2772">console#2772</a>)</p></li><li><p>Thinner table rows for higher density (<a href="https://github.com/oxidecomputer/console/pull/2803">console#2803</a>)</p></li><li><p>Fix label and title on docs popover button (<a href="https://github.com/oxidecomputer/console/pull/2804">console#2804</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Apply NAT to headers/packets carried within ICMP messages, enabling features such as <code>traceroute</code> in the guest (<a href="https://github.com/oxidecomputer/opte/issues/369">opte#369</a>)</p></li><li><p>VPC Subnet address allocations re-use the first available address in the subnet (<a href="https://github.com/oxidecomputer/omicron/issues/8208">omicron#8208</a>)</p></li><li><p>Improve usability of switch port settings to reduce the need for queries by Id (<a href="https://github.com/oxidecomputer/omicron/pull/7966">omicron#7966</a>, related: <a href="https://github.com/oxidecomputer/oxide.go/pull/278">oxide.go#278</a> and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/pull/426">tf#25</a>)</p></li><li><p>Prevent network reconciler from adding and removing a BGP peer at the same time (<a href="https://github.com/oxidecomputer/omicron/issues/8207">omicron#8207</a>)</p></li><li><p>Set a default empty array for the nullable attribute <code>VpcFirewallRuleUpdate</code> to eliminate client-side handling (<a href="https://github.com/oxidecomputer/omicron/pull/8175">omicron#8175</a>)</p></li><li><p>Make silo query param optional in <code>saml_identity_provider_view</code> (<a href="https://github.com/oxidecomputer/omicron/pull/8136">omicron#8136</a>)</p></li><li><p>Add protections for password handling in Nexus (<a href="https://github.com/oxidecomputer/omicron/pull/8093">omicron#8093</a>)</p></li><li><p>Improve reliability of region snapshot replacement for deleted snapshots and regions with multiple subvolumes (<a href="https://github.com/oxidecomputer/omicron/pull/7862">omicron#7862</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1551">crucible#1551</a>)</p></li><li><p>Experimental API for support bundle plumbing and export (for Oxide technician use only at this time)</p></li><li><p>Various enhancements around Oxide software download and update (for Oxide technician use only at this time)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk rejected by guest OS due to duplicate names. The issue is caused by a 20-character disk name limit applied to device serial numbers. See the <a href="/guides/troubleshooting#_disk_rejected_due_to_20_char_name_match">Troubleshooting</a> guide for more information.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances fail to start when one of the switch zones is unavailable.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6896">omicron#6896</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/8001">omicron#8001</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Linux guests unable to capture hardware events using <code>perf record</code>. A workaround for this issue can be found in the <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/894">propolis#894</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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). See the <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Silo management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify silo and IDP metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3400">omicron#3400</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3125">omicron#3125</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability real-time status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The built-in test silo named &quot;default-silo&quot; has resource quotas and should be removed.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5731">omicron#5731</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v14]]></title>
        <id>https://docs.oxide.computer/release-notes/system/14</id>
        <link href="https://docs.oxide.computer/release-notes/system/14"/>
        <updated>2025-04-11T18:48:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-14-affinity-group.png"/><link rel="preload" as="image" href="/img/rel-14-cpu-metrics.png"/><link rel="preload" as="image" href="/img/rel-14-metrics-oxql-query.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements described under <a href="#_new_features">New Features</a>. Please be sure to upgrade.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 13 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They can be configured to start automatically with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_anti_affinity_groups" aria-hidden="true"></span><a class="link group" href="#_anti_affinity_groups">Anti-affinity groups<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>You can now use anti-affinity groups to spread instances across sleds to
make applications more resilient to sled failure. Anti-affinity groups have
a policy field (<code>allow</code> or <code>fail</code>) that determines whether instances are
still allowed to start when affinity constraints cannot be satisfied, such
as when all available sleds already contain an instance from the group. See
<a href="/guides/deploying-workloads#_affinity_and_anti_affinity">Affinity and
Anti-Affinity</a> in the Instances guide to learn more.</p></div><div class="paragraph"><p>API changes for anti-affinity groups include:</p></div><div class="ulist"><ul class=""><li><p>List groups: <a href="/api/anti_affinity_group_list" class="api-link">anti_affinity_group_list</a></p></li><li><p>Create a group: <a href="/api/anti_affinity_group_create" class="api-link">anti_affinity_group_create</a></p></li><li><p>List group members: <a href="/api/anti_affinity_group_member_list" class="api-link">anti_affinity_group_member_list</a></p></li><li><p>Add a group member: <a href="/api/anti_affinity_group_member_instance_add" class="api-link">anti_affinity_group_member_instance_add</a></p></li><li><p>The existing <a href="/api/instance_create" class="api-link">instance_create</a> endpoint now accepts a list of
anti-affinity groups</p></li></ul></div><div class="paragraph"><p>In this release we only support anti-affinity groups. We are evaluating use
cases for affinity groups, which would place instances on the same sled.</p></div><div class="imageblock   " style="max-width:905px"><div class="content"><img src="/img/rel-14-affinity-group.png" alt="Anti-affinity group" width="905px"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_instance_metrics_in_the_web_console" aria-hidden="true"></span><a class="link group" href="#_instance_metrics_in_the_web_console">Instance metrics in the web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>CPU, disk, and network interface metrics are now available on the Metrics tab
on the instance page. Users can adjust the date and time range and view the
<a href="/guides/metrics/oxql-tutorial">OxQL</a> query powering each chart. Prior to
this release, these metrics were recorded in the system but were only accessible
to users with view permissions on the fleet, and only through the CLI. Now
anyone with permission to view an instance can view its metrics as well.</p></div><div class="imageblock   " style="max-width:967px"><div class="content"><img src="/img/rel-14-cpu-metrics.png" alt="Instance CPU utilization chart" width="967px"/></div></div><div class="imageblock   " style="max-width:634px"><div class="content"><img src="/img/rel-14-metrics-oxql-query.png" alt="Instance CPU utilization OxQL query" width="634px"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In addition to the work on affinity groups and instance metrics highlighted
above, we increased the page size for list views to 50, fixed bugs, and polished
the UI.</p></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>Instance CPU, disk, and network metrics (<a href="https://github.com/oxidecomputer/console/pull/2654">#2654</a>, <a href="https://github.com/oxidecomputer/console/pull/2761">#2761</a>, <a href="https://github.com/oxidecomputer/console/pull/2762">#2762</a>, <a href="https://github.com/oxidecomputer/console/pull/2773">#2773</a>, <a href="https://github.com/oxidecomputer/console/pull/2779">#2779</a>, <a href="https://github.com/oxidecomputer/console/pull/2801">#2801</a>)</p></li><li><p>Manage anti-affinity groups (<a href="https://github.com/oxidecomputer/console/pull/2760">#2760</a>, <a href="https://github.com/oxidecomputer/console/pull/2768">#2768</a>, <a href="https://github.com/oxidecomputer/console/pull/2767">#2767</a>, <a href="https://github.com/oxidecomputer/console/pull/2775">#2775</a>, <a href="https://github.com/oxidecomputer/console/pull/2789">#2789</a>, <a href="https://github.com/oxidecomputer/console/pull/2790">#2790</a>, <a href="https://github.com/oxidecomputer/console/pull/2795">#2795</a>, <a href="https://github.com/oxidecomputer/console/pull/2796">#2796</a>)</p></li><li><p>Increase list page size to 50 (<a href="https://github.com/oxidecomputer/console/pull/2798">#2798</a>)</p></li><li><p>Allow links in row actions and more actions dropdowns (<a href="https://github.com/oxidecomputer/console/pull/2751">#2751</a>)</p></li><li><p>Fix error display bug in date range picker (<a href="https://github.com/oxidecomputer/console/pull/2780">#2780</a>)</p></li><li><p>Better titles for silo and project access pages (<a href="https://github.com/oxidecomputer/console/pull/2793">#2793</a>)</p></li><li><p>Page loading skeleton (<a href="https://github.com/oxidecomputer/console/pull/2754">#2754</a>)</p></li><li><p>Fix button bg color on disabled combobox (<a href="https://github.com/oxidecomputer/console/pull/2791">#2791</a>)</p></li><li><p>Improve tooltip contents and spacing (<a href="https://github.com/oxidecomputer/console/pull/2770">#2770</a>, <a href="https://github.com/oxidecomputer/console/pull/2797">#2797</a>)</p></li><li><p>Fix sidebar links active highlight on certain pages (<a href="https://github.com/oxidecomputer/console/pull/2748">#2748</a>)</p></li><li><p>Organize instance details in card blocks (<a href="https://github.com/oxidecomputer/console/pull/2741">#2741</a>, <a href="https://github.com/oxidecomputer/console/pull/2744">#2744</a>)</p></li><li><p>Loading bar respects reduced motion (<a href="https://github.com/oxidecomputer/console/pull/2720">#2720</a>)</p></li><li><p>Update properties table styling on detail pages (<a href="https://github.com/oxidecomputer/console/pull/2723">#2723</a>)</p></li><li><p>Validate invalid characters in name fields rather than blocking them (<a href="https://github.com/oxidecomputer/console/pull/2710">#2710</a>)</p></li><li><p>Make form field labels bright white (<a href="https://github.com/oxidecomputer/console/pull/2799">#2799</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Disallow invalid <code>transit_ips</code> in network interface update API (<a href="https://github.com/oxidecomputer/omicron/issues/7530">omicron#7530</a>)</p></li><li><p>Improve error handling when instance is unable to start or stop due to unresponsive disk or guest (<a href="https://github.com/oxidecomputer/propolis/issues/841">propolis#841</a>, <a href="https://github.com/oxidecomputer/omicron/issues/4004">omicron#4004</a>)</p></li><li><p>Mitigate VM shutdown/auto-restart race conditions (<a href="https://github.com/oxidecomputer/omicron/issues/7927">omicron#7927</a>)</p></li><li><p>Image creation failure could leave behind orphan volumes (<a href="https://github.com/oxidecomputer/omicron/pull/7765">omicron#7765</a>)</p></li><li><p>Improve error handling for instance deletion (<a href="https://github.com/oxidecomputer/omicron/pull/7556">omicron#7556</a>)</p></li><li><p>Reduce disk volume memory usage (<a href="https://github.com/oxidecomputer/crucible/pull/1625">crucible#1625</a>)</p></li><li><p>Revise storage capacity and usage calculations to account for system overhead (<a href="https://github.com/oxidecomputer/omicron/issues/4234">omicron#4234</a>)</p></li><li><p>Display transceiver status in wicket UI (<a href="https://github.com/oxidecomputer/omicron/pull/7562">omicron#7562</a>)</p></li><li><p>Improve rack setup configuration validation and error handling (<a href="https://github.com/oxidecomputer/omicron/issues/7653">omicron#7653</a>, <a href="https://github.com/oxidecomputer/omicron/issues/7457">omicron#7457</a>)</p></li><li><p>Improve time synchronisation in the face of connectivity problems (<a href="https://github.com/oxidecomputer/omicron/issues/7675">omicron#7675</a>)</p></li><li><p>Various sled expungement bug fixes and supporting tool improvements</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Disk/image management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances fail to start when one of the switch zones is unavailable.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6896">omicron#6896</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">HTTP 400 error returned when creating an instance with null <code>anti_affinity_groups</code>.  To avoid this error, set the value to an empty array or exclude the field from the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7986">omicron#7986</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/8001">omicron#8001</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Linux guests unable to capture hardware events using <code>perf record</code>. A workaround for this issue can be found in the <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/894">propolis#894</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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). See the <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of the request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Silo management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify silo and IDP metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3400">omicron#3400</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3125">omicron#3125</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability real-time status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The built-in test silo named &quot;default-silo&quot; has resource quotas and should be removed.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5731">omicron#5731</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">System management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v13]]></title>
        <id>https://docs.oxide.computer/release-notes/system/13</id>
        <link href="https://docs.oxide.computer/release-notes/system/13"/>
        <updated>2025-02-19T18:53:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-13-auto-restart.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements described under <a href="#_new_features">New Features</a>. Please be sure to upgrade.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 12 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They can be configured to start automatically with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_amd_performance_counters" aria-hidden="true"></span><a class="link group" href="#_amd_performance_counters">AMD Performance Counters<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In this release, we have made CPU performance counters available for monitoring the behavior of a process or family of processes running on the system. You can consume the statistics through the <code>perf</code> package available in most Linux guests:</p></div><div class="listingblock"><div class="content"><pre class="highlight"><code class="language-bash" data-lang="bash"><span style="color:#9DAFFA">ubuntu@primary:~$</span><span style="color:#68D9A7"> sudo</span><span style="color:#68D9A7"> perf</span><span style="color:#68D9A7"> stat</span><span style="color:#68D9A7"> -I</span><span style="color:#EDD5A6"> 3000</span><br><span style="color:#A1A4A5">#           time             counts unit events</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">           12027.92</span><span style="color:#68D9A7"> msec</span><span style="color:#68D9A7"> cpu-clock</span><span style="color:#A1A4A5">                 #    4.009 CPUs utilized</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">              15447</span><span style="color:#68D9A7">      context-switches</span><span style="color:#A1A4A5">          #    0.001 M/sec</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">                 56</span><span style="color:#68D9A7">      cpu-migrations</span><span style="color:#A1A4A5">            #    0.005 K/sec</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">                  0</span><span style="color:#68D9A7">      page-faults</span><span style="color:#A1A4A5">               #    0.000 K/sec</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">         6708280958</span><span style="color:#68D9A7">      cycles</span><span style="color:#A1A4A5">                    #    0.558 GHz                      (50.02%)</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">                  0</span><span style="color:#68D9A7">      stalled-cycles-frontend</span><span style="color:#E7E7E8">                                       (50.02%)</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">                  0</span><span style="color:#68D9A7">      stalled-cycles-backend</span><span style="color:#A1A4A5">    #    0.00% backend cycles idle      (50.13%)</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">         3618134011</span><span style="color:#68D9A7">      instructions</span><span style="color:#A1A4A5">              #    0.54  insn per cycle           (50.02%)</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">          691518275</span><span style="color:#68D9A7">      branches</span><span style="color:#A1A4A5">                  #   57.493 M/sec                    (50.02%)</span><br><span style="color:#9DAFFA">     3.007459118</span><span style="color:#EDD5A6">           35098092</span><span style="color:#68D9A7">      branch-misses</span><span style="color:#A1A4A5">             #    5.08% of all branches          (49.91%)</span><br><span style="color:#F7869B">     ...</span></code></pre></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_performance_and_power_management" aria-hidden="true"></span><a class="link group" href="#_performance_and_power_management">Performance and Power Management<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In this release, we have enabled additional hardware power saving features in circumstances where processor cores are not being used. These power saving features also enable higher CPU frequencies for low thread count workloads, with single-threaded CPU-bound processes seeing as much as an 18% performance improvement on sleds with few competing workloads.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_link_layer_discovery_protocol_lldp_support" aria-hidden="true"></span><a class="link group" href="#_link_layer_discovery_protocol_lldp_support">Link Layer Discovery Protocol (LLDP) Support<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>From v13, the fleet administrator will be able to configure LLDP in the rack switch link settings to enable device discovery and ease network management.
Here are the new API endpoints for managing and viewing LLDP configurations:</p></div><div class="ulist"><ul class=""><li><p>view/update config: <code>/v1/system/hardware/switch-port/{port}/lldp/config</code></p></li><li><p>list neighbors: <code>/v1/system/hardware/rack-switch-port/{rack_id}/{switch_location}/{port}/lldp/neighbors</code></p></li></ul></div><div class="paragraph"><p>You may also use the CLI for making LLDP requests. Please see the <a href="/cli/system/networking/lldp">CLI docs</a> for more information.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> for failed instances can now be managed through the web.</p></div><div class="imageblock   inlineimage" style="max-width:475px"><div class="content"><img src="/img/rel-13-auto-restart.png" alt="Instance auto-restart popover" width="475px"/></div></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>Instance auto restart status and settings (<a href="https://github.com/oxidecomputer/console/pull/2644">console#2644</a>)</p></li><li><p>Fetch all-ish silos on utilization page (<a href="https://github.com/oxidecomputer/console/pull/2678">console#2678</a>)</p></li><li><p>Better error for admin group name misconfig (<a href="https://github.com/oxidecomputer/console/pull/2671">console#2671</a>)</p></li><li><p>Improve image upload cleanup logic (<a href="https://github.com/oxidecomputer/console/pull/2674">console#2674</a>)</p></li><li><p>Fix minitable hover styling (<a href="https://github.com/oxidecomputer/console/pull/2666">console#2666</a>)</p></li><li><p>Improve external IPs display on instance page (<a href="https://github.com/oxidecomputer/console/pull/2576">console#2576</a>)</p></li><li><p>Add ID row to Internet Gateway side modal (<a href="https://github.com/oxidecomputer/console/pull/2658">console#2658</a>)</p></li><li><p>Fix indeterminate checkbox border and hover style (<a href="https://github.com/oxidecomputer/console/pull/2664">console#2664</a>)</p></li><li><p>Default block size for blank disks is 4096 (<a href="https://github.com/oxidecomputer/console/pull/2660">console#2660</a>)</p></li><li><p>Fix padding bug on chart (<a href="https://github.com/oxidecomputer/console/pull/2650">console#2650</a>)</p></li><li><p>Add minitable to floating IP side modal (<a href="https://github.com/oxidecomputer/console/pull/2630">console#2630</a>)</p></li><li><p>Add truncation to displayed IP in <code>CopyableIp</code> (<a href="https://github.com/oxidecomputer/console/pull/2598">console#2598</a>)</p></li><li><p>Prevent side modal form error when coming from  action menu (<a href="https://github.com/oxidecomputer/console/pull/2617">console#2617</a>)</p></li><li><p>Use <code>EmptyCell</code> as fallback in <code>InstanceLinkCell</code> (<a href="https://github.com/oxidecomputer/console/pull/2631">console#2631</a>)</p></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Upstairs write stats were not sent to oximeter (<a href="https://github.com/oxidecomputer/crucible/issues/1615">crucible#1615</a>)</p></li><li><p>HTTP 500 errors were returned when creating multiple vpc subnets in parallel (<a href="https://github.com/oxidecomputer/omicron/issues/7404">omicron#7404</a>)</p></li><li><p>Oxide telemetry now includes management network data link and switch port control data metrics for more operational visibility (<a href="https://github.com/oxidecomputer/omicron/pull/6918">omicron#6918</a>)</p></li><li><p>Allow read only activation with less than three downstairs to faciliate disk repair during maintenance (<a href="https://github.com/oxidecomputer/crucible/pull/1608">crucible#1608</a>)</p></li><li><p>External DNS now supports more than 200 silos and TLS certificates (<a href="https://github.com/oxidecomputer/omicron/pull/7291">omicron#7291</a>)</p></li><li><p>Various sled expungement bug fixes and supporting tool improvements</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Rack firmware now supports Milan LRDIMMs that provide up to 2 TiB DRAM per sled (128 GiB x 16 channels); note that the 2 TiB sled configuration is only available in the form of new hardware purchase and cannot be applied through in-place upgrade on existing sleds</p></li><li><p>No third-party firmware change</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron#4938</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances fail to start when one of the switch zones is unavailable.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6896">omicron#6896</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/328">propolis#328</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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). See the <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The built-in test silo named &quot;default-silo&quot; has resource quotas and should be removed.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5731">omicron#5731</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v12]]></title>
        <id>https://docs.oxide.computer/release-notes/system/12</id>
        <link href="https://docs.oxide.computer/release-notes/system/12"/>
        <updated>2024-12-20T09:33:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-12-instance-resize.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements described under <a href="#new-features">New Features</a>. Please be sure to upgrade.</p></li><li class=""><p>The OxQL metrics endpoints have been moved from <code>/v1/timeseries</code> to <code>/v1/system/timeseries</code>.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 11 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They can be configured to start automatically with <a href="/guides/managing-instances#_update_instances">auto-restart policy</a> or they can be started manually by the user.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_resizing_stopped_instances" aria-hidden="true"></span><a class="link group" href="#_resizing_stopped_instances">Resizing stopped instances<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Instance vCPU count and memory size can now be changed in place when instances are stopped. Prior to version 12, users had to detach disks, delete the instance, recreate it with the desired size, and reattach the disks. Use the web console, <a href="/cli/instance/update"><code>oxide instance update</code></a> CLI command, or <a href="/api/instance_update" class="api-link"><code>PUT /v1/instances</code></a> API endpoint to change instance size. See the <a href="/guides/managing-instances#_update_instances">Update Instances</a> section in the user guide for more information.</p></div><div class="imageblock   inlineimage" style="max-width:468px"><div class="content"><img src="/img/rel-12-instance-resize.png" alt="Instance resize" width="468px"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_psu_firmware_updater" aria-hidden="true"></span><a class="link group" href="#_psu_firmware_updater">PSU firmware updater<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The power shelf controller has been <a href="https://github.com/oxidecomputer/hubris/pull/1934">enhanced</a> to support the automatic and autonomous updates of the PSU firmware on the MWOCP68-3600 series.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_performance_tuning" aria-hidden="true"></span><a class="link group" href="#_performance_tuning">Performance tuning<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Intra-VPC network I/O</p><div class="ulist"><ul class=""><li><p>viona should allow configurable packet padding (<a href="https://www.illumos.org/issues/16738">illumos#16738</a>, <a href="https://github.com/oxidecomputer/propolis/pull/814">propolis#814</a>)</p></li><li><p>OPTE datapath overhaul - zero-copy metadata with <code>ingot</code>, "compiled" UFTs (<a href="https://github.com/oxidecomputer/opte/pull/585">opte#585</a>)</p></li></ul></div></li><li><p>Disk I/O</p><div class="ulist"><ul class=""><li><p>Only send flushes when Downstairs is idle; send Barrier otherwise (<a href="https://github.com/oxidecomputer/crucible/pull/1505">crucible#1505</a>)</p></li><li><p>Remove delay-based backpressure in favor of explicit queue limits (<a href="https://github.com/oxidecomputer/crucible/pull/1515">crucible#1515</a>)</p></li><li><p>Remove remaining IOPS/bandwidth limiting code (<a href="https://github.com/oxidecomputer/crucible/pull/1525">crucible#1525</a>)</p></li><li><p>Remove ackable_work; ack immediately instead (<a href="https://github.com/oxidecomputer/crucible/pull/1552">crucible#1552</a>)</p></li></ul></div></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console" aria-hidden="true"></span><a class="link group" href="#_web_console">Web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Rework navigation breadcrumbs (<a href="https://github.com/oxidecomputer/console/pull/2529">console#2529</a>) and system/silo switcher (<a href="https://github.com/oxidecomputer/console/pull/2544">console#2544</a>)</p></li><li><p>Add read-only view of internet gateways (<a href="https://github.com/oxidecomputer/console/pull/2488">console#2488</a>)</p></li><li><p>Easier identity provider creation (<a href="https://github.com/oxidecomputer/console/pull/2510">console#2510</a>, <a href="https://github.com/oxidecomputer/console/pull/2511">console#2511</a>, <a href="https://github.com/oxidecomputer/console/pull/2520">console#2520</a>, <a href="https://github.com/oxidecomputer/console/pull/2537">console#2537</a>)</p></li><li><p>Require a TLS certificate when creating a silo (<a href="https://github.com/oxidecomputer/console/issues/2578">console#2578</a>)</p></li><li><p>Drastically reduce memory usage during image upload (<a href="https://github.com/oxidecomputer/console/pull/2506">console#2506</a>)</p></li><li><p>Prevent accidentally closing forms with click or <code>Esc</code> (<a href="https://github.com/oxidecomputer/console/pull/2328">console#2328</a>)</p></li></ul></div><details><summary class="title">Full console changelog</summary><div class="content"><div class="ulist"><ul class=""><li><p>Improve silo and identity provider creation</p><div class="ulist"><ul class=""><li><p>Require a TLS certificate during silo creation (<a href="https://github.com/oxidecomputer/console/issues/2578">console#2578</a>)</p></li><li><p>Reorder IdP form and add help text (<a href="https://github.com/oxidecomputer/console/pull/2511">console#2511</a>, <a href="https://github.com/oxidecomputer/console/pull/2537">console#2537</a>)</p></li><li><p>Automatically generate ACS URL (<a href="https://github.com/oxidecomputer/console/pull/2510">console#2510</a>)</p></li><li><p>Show Group Attribute Name on identity provider view (<a href="https://github.com/oxidecomputer/console/pull/2520">console#2520</a>)</p></li></ul></div></li><li><p>Performance</p><div class="ulist"><ul class=""><li><p>Drastically reduce memory usage during image upload (<a href="https://github.com/oxidecomputer/console/pull/2506">console#2506</a>)</p></li></ul></div></li><li><p>Other enhancements</p><div class="ulist"><ul class=""><li><p>Rework navigation breadcrumbs (<a href="https://github.com/oxidecomputer/console/pull/2529">console#2529</a>) and system/silo switcher (<a href="https://github.com/oxidecomputer/console/pull/2544">console#2544</a>)</p></li><li><p>Add read-only view of internet gateways (<a href="https://github.com/oxidecomputer/console/pull/2488">console#2488</a>)</p></li><li><p>Prevent accidentally closing forms with click or <code>Esc</code> (<a href="https://github.com/oxidecomputer/console/pull/2328">console#2328</a>)</p></li><li><p>Make toast copy more consistent (<a href="https://github.com/oxidecomputer/console/pull/2504">console#2504</a>)</p></li><li><p>Add start/stop buttons to top of instance page (<a href="https://github.com/oxidecomputer/console/pull/2508">console#2508</a>)</p></li><li><p>Add copy IP buttons on floating IPs page (<a href="https://github.com/oxidecomputer/console/pull/2501">console#2501</a>)</p></li><li><p>Generate boot disk name from image name, not ID (<a href="https://github.com/oxidecomputer/console/pull/2542">console#2542</a>)</p></li><li><p>Combobox improvements</p><div class="ulist"><ul class=""><li><p>Fix <code>Enter</code> key  (<a href="https://github.com/oxidecomputer/console/pull/2540">console#2540</a>)</p></li><li><p>Normalize input (<a href="https://github.com/oxidecomputer/console/pull/2553">console#2553</a>)</p></li><li><p>Add virtual item for arbitrary values (<a href="https://github.com/oxidecomputer/console/pull/2518">console#2518</a>)</p></li><li><p><code>Esc</code> should close options list instead of exiting form (<a href="https://github.com/oxidecomputer/console/pull/2610">console#2610</a>)</p></li></ul></div></li><li><p>Improve typography and colors (<a href="https://github.com/oxidecomputer/console/pull/2496">console#2496</a>, <a href="https://github.com/oxidecomputer/console/pull/2588">console#2588</a>)</p></li><li><p>Form fields: stop password managers from filling <code>name</code> (<a href="https://github.com/oxidecomputer/console/pull/2530">console#2530</a>), disable spellcheck (<a href="https://github.com/oxidecomputer/console/pull/2551">console#2551</a>)</p></li></ul></div></li><li><p>Bug fixes</p><div class="ulist"><ul class=""><li><p>Disallow multiple disks with the same name on instance create form (<a href="https://github.com/oxidecomputer/console/pull/2541">console#2541</a>)</p></li><li><p>Fix instance polling on pages after first (<a href="https://github.com/oxidecomputer/console/pull/2571">console#2571</a>)</p></li><li><p>Fix submitting state on snapshot create form (<a href="https://github.com/oxidecomputer/console/issues/2539">console#2539</a>)</p></li></ul></div></li></ul></div></div></details></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_other_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_other_enhancements">Bug fixes and other enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Switch link FEC is no longer required for new links and will be configured automatically based on the transceiver type (<a href="https://github.com/oxidecomputer/omicron/pull/6992">omicron#6992</a>)</p></li><li><p>MGS and Wicket should connect to the second power shelf, labeled as "PSC 1", if one is available (<a href="https://github.com/oxidecomputer/omicron/issues/6993">omicron#6993</a>)</p></li><li><p>Correctly install nat/router internet gateway tags during create to rectify sporadic instance connectivity issues. (<a href="https://github.com/oxidecomputer/omicron/pull/7172">omicron#7172</a>)</p></li><li><p>Reconfigurator now supports the replacement of the ClickHouse zone and the instantiation of multi-node ClickHouse cluster</p></li><li><p>SAML Provider API docs should mention the private key RSA PKCS#1 format requirement (<a href="https://github.com/oxidecomputer/omicron/pull/7088">omicron#7088</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Murata PSU firmware update</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron#4938</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances fail to start when one of the switch zones is unavailable.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6896">omicron#6896</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/328">propolis#328</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC internet gateway</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">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&#x27; 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). See the <a href="/guides/troubleshooting#_no_outbound_internet_connectivity">Troubleshooting</a> guide for some possible options for restoring instance outbound connectivity.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/7297">omicron#7297</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The built-in test silo named &quot;default-silo&quot; has resource quotas and should be removed.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5731">omicron#5731</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">New instances cannot be created when the total number of NAT entries (private-to-external IP mappings) in the system exceeds 1024.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/6939">omicron#6939</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v11]]></title>
        <id>https://docs.oxide.computer/release-notes/system/11</id>
        <link href="https://docs.oxide.computer/release-notes/system/11"/>
        <updated>2024-10-10T22:12:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-11-boot-disk.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI and Rust SDK</a> have been updated to support all the <a href="#new-features">new features</a> such as boot disk designation, instance update, and VPC internet gateway. Please be sure to upgrade to the latest versions.</p></li><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a> and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Oxide Terraform Provider</a> have also been updated to support boot disk designation. They will be enhanced to manage internet gateway objects in a future release.</p></li><li class=""><p>In this release, the control plane is enhanced to attempt restarting instances that have gone into the failed state. This new feature allows previously running instances to come back up after software updates. See <a href="#new-features">New Features</a> for more information.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 10 is supported. We recommend shutting down all running instances on the rack before software update commences. Any instances that aren&#8217;t stopped for software update are transitioned to the <code>failed</code> state when the control plane comes up. They will be automatically restarted afterwards in a controlled manner. Failed instances may also be started or stopped manually while they are waiting to be restarted.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_improved_failed_instance_handling" aria-hidden="true"></span><a class="link group" href="#_improved_failed_instance_handling">Improved Failed Instance Handling<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The Oxide control plane has been enhanced to allow failed instances to be auto-restarted or started/stopped manually. Prior to this release, instances marked <code>failed</code> because of planned or unexpected sled reboots or hypervisor process failures can only be revived by deleting/recreating them. The handling of instance state transition has also been improved to prevent timeout-related failures (e.g., <a href="https://github.com/oxidecomputer/omicron/issues/5235">omicron#5235</a>).</p></div><div class="paragraph"><p>Auto-restart policy is configurable on a per-instance basis using the new <code>PUT /v1/instances/{instance}</code> endpoint (or the corresponding <code>instance update</code> CLI command). If no policy is set, instances will automatically restart by default.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_boot_disk" aria-hidden="true"></span><a class="link group" href="#_boot_disk">Boot Disk<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Users can now designate one of an instance&#8217;s disks as its boot disk. The boot disk can be specified at instance create time or changed later using the new <code>PUT /v1/instances/{instance}</code> endpoint (or the corresponding <code>instance update</code> CLI command). In a future release, this endpoint will also be used to change instance CPU and memory size. Instance updates are allowed only when the instance is stopped.</p></div><div class="paragraph"><p>Prior to this release, when an instance was provisioned, the first disk in the request body was implicitly treated as the boot disk. The firmware also attempted to boot from other disks in an unpredictable fashion if it could not find the bootloader on the first disk, sometimes resulting in unusable instances as described in this terraform provider <a href="https://github.com/oxidecomputer/terraform-provider-oxide/issues/338">issue</a>.</p></div><div class="imageblock   inlineimage" style="max-width:720px"><div class="content"><img src="/img/rel-11-boot-disk.png" alt="Boot disk and other disks" width="720px"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_telemetry" aria-hidden="true"></span><a class="link group" href="#_telemetry">Telemetry<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Prior to v10, the rack telemetry data was limited to rack-level network metrics, resource utilization, and a subset of disk and instance data. In v10 and v11, we have further expanded the metrics coverage to include:</p></div><div class="ulist"><ul class=""><li><p><a href="https://github.com/oxidecomputer/omicron/pull/6354">Power, component temperatures, fan speeds</a></p></li><li><p><a href="https://github.com/oxidecomputer/propolis/pull/747">Instance network interface</a> (e.g., I/O, packet drops, errors)</p></li><li><p><a href="https://github.com/oxidecomputer/propolis/pull/746">Virtual disk statistics improvements</a></p></li></ul></div><div class="paragraph"><p>The metrics data can be consumed using Oxide&#8217;s Oximeter Query Language, "OxQL", which is described in <a href="https://rfd.shared.oxide.computer/rfd/0463">RFD 463</a>. Please note that the query language is experimental and its syntax may change in future releases. Details about available timeseries will be added to this site soon.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_internet_gateways" aria-hidden="true"></span><a class="link group" href="#_internet_gateways">Internet Gateways<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Internet gateways support the routing of VPC traffic to networks outside of the Oxide rack. They can be used to ensure that instances only use certain external IP addresses when sending traffic to a given network. Prior to this release, only the system-defined internet gateway was available for routing external traffic using the default IP pool of each silo. Starting from v11, project users can optionally set up internet gateways in their VPCs against other IP pools. These gateways can be applied as routing targets to customize instance outbound traffic based on the packet destinations. You can find an example of such granular routing setup and more details about internet gateways in the <a href="/guides/configuring-guest-networking#internet-gateway">Networking</a> guide.</p></div><div class="paragraph"><p>Please note that the management of internet gateways is available through API only at this time. The web console, Go SDK, and Terraform provider will provide the same support in the next release.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_rack_reconfigurator" aria-hidden="true"></span><a class="link group" href="#_rack_reconfigurator">Rack Reconfigurator<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The reconfigurator module provides the foundation for Oxide control plane service configuration changes during hardware and software maintenance. It is accessible by Oxide technicians only at this time. It will be made available to rack operators in the form of component update/replacement capabilities in a future release.</p></div><div class="ulist"><ul class=""><li><p>Enable replacement of external DNS instances</p></li><li><p>Support horizontal scaling and replacement of <code>oximeter</code> (metrics collector) instances</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console_changes" aria-hidden="true"></span><a class="link group" href="#_web_console_changes">Web console changes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Image uploads are ~3x faster, as fast as CLI (<a href="https://github.com/oxidecomputer/omicron/pull/6690">omicron#6690</a>)</p></li><li><p>Searchable pickers (comboboxes) allow arbitrary values and are used in more places: firewall rule hosts and targets (<a href="https://github.com/oxidecomputer/console/pull/2296">console#2296</a>), instance disks (<a href="https://github.com/oxidecomputer/console/pull/2467">console#2467</a>), router routes (<a href="https://github.com/oxidecomputer/console/pull/2448">console#2448</a>)</p></li><li><p>Boot disk UI (<a href="https://github.com/oxidecomputer/console/pull/2360">console#2464</a>)</p></li><li><p>Validate IPs and IP networks in forms (<a href="https://github.com/oxidecomputer/console/pull/2461">console#2461</a>)</p></li><li><p>View and edit transit IPs on instance network interfaces (<a href="https://github.com/oxidecomputer/console/pull/2437">console#2437</a>)</p></li><li><p>Allow failed instances to be started and stopped (<a href="https://github.com/oxidecomputer/console/pull/2439">console#2439</a>, <a href="https://github.com/oxidecomputer/console/pull/2482">console#2482</a>)</p></li><li><p>Fix row actions menus closing suddenly when polling (<a href="https://github.com/oxidecomputer/console/pull/2453">console#2453</a>, <a href="https://github.com/oxidecomputer/console/pull/2460">console#2460</a>)</p></li><li><p>Link to silo pages from system utilization, add copy silo ID buttons (<a href="https://github.com/oxidecomputer/console/pull/2408">console#2408</a>, <a href="https://github.com/oxidecomputer/console/pull/2414">console#2414</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Fix 500s due to DB memory limit when creating a large number of instances concurrently (<a href="https://github.com/oxidecomputer/omicron/issues/5904">omicron#5904</a>)</p></li><li><p>Instances were stuck in running state after the backend propolis servers panicked. (<a href="https://github.com/oxidecomputer/omicron/issues/5798">omicron#5705</a>)</p></li><li><p>Administratively deleting a bgp peer did not result in the routes learned from the peer from being deleted (<a href="https://github.com/oxidecomputer/maghemite/issues/349">maghemite#349</a>)</p></li><li><p>List hardware switch API returned an empty result set (<a href="https://github.com/oxidecomputer/omicron/issues/6597">omicron#6597</a>)</p></li><li><p>BGP announce-set and config delete APIs returned HTTP 500 errors (<a href="https://github.com/oxidecomputer/omicron/issues/6471">omicron#6471</a>, <a href="https://github.com/oxidecomputer/omicron/issues/6619">omicron#6619</a>)</p></li><li><p>BGP announce-set list had a redundant <code>name_or_id</code> query parameter (<a href="https://github.com/oxidecomputer/omicron/issues/6467">omicron#6467</a>)</p></li><li><p>Better <code>tx_eq</code> defaults for different transceiver types (dendrite#1020)</p></li><li><p>Improve handling of RIB priorities for Static and BGP protocols (<a href="https://github.com/oxidecomputer/maghemite/pull/359">maghemite#359</a>)</p></li><li><p>SAML authentication signed requests should respond with an appropriate name id format (<a href="https://github.com/oxidecomputer/omicron/issues/5604">omicron#5604</a>)</p></li><li><p>Missing or modified RelayState should be handled during SAML authentication (<a href="https://github.com/oxidecomputer/omicron/issues/5607">omicron#5607</a>)</p></li><li><p>Storage performance improvements</p><div class="ulist"><ul class=""><li><p>Use new <code>syncfs</code> syscall (<a href="https://github.com/oxidecomputer/crucible/pull/1427">crucible#1427</a>)</p></li><li><p>Fine-tuning backpressure clamping, and API cleanups (<a href="https://github.com/oxidecomputer/crucible/pull/1442">crucible#1442</a>)</p></li><li><p>Increment write backpressure before deferred encryption (<a href="https://github.com/oxidecomputer/crucible/pull/1444">crucible#1444</a>)</p></li><li><p>Do fast-ack immediately after a write is submitted (<a href="https://github.com/oxidecomputer/crucible/pull/1445">crucible#1445</a>)</p></li><li><p>Do IO immediately, instead of storing it in new_work (<a href="https://github.com/oxidecomputer/crucible/pull/1445">crucible#1460</a>)</p></li><li><p>Tune ZFS parameters for improved IO performance (<a href="https://github.com/oxidecomputer/helios/pull/170">helios#170</a>)</p></li></ul></div></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance performance</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The <code>tsc</code> 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 <a href="/guides/troubleshooting">Troubleshooting</a> guide.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/propolis/issues/328">propolis#328</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Subnet update clears custom router ID when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Network interface update clears transit ips when the field is left out of request body.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and VPC network/firewall metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v10]]></title>
        <id>https://docs.oxide.computer/release-notes/system/10</id>
        <link href="https://docs.oxide.computer/release-notes/system/10"/>
        <updated>2024-08-31T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-10-instance-state.png"/><link rel="preload" as="image" href="/img/rel-10-vpc-routes.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements such as the BGP API changes described under <a href="#new-features">New Features</a>. Please be sure to upgrade.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 9 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) will remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_rack_networking" aria-hidden="true"></span><a class="link group" href="#_rack_networking">Rack networking<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>A number of new switch configurations and API endpoints for querying BGP settings are available in v10:</p></div><div class="sect3"><h4 data-sectnum="..."><span class="anchor" id="_bgp" aria-hidden="true"></span><a class="link group" href="#_bgp">BGP<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h4><div class="sectionbody"><div class="ulist"><ul class=""><li><p>New/enhanced BGP API endpoints</p><div class="ulist"><ul class=""><li><p><a href="/api/networking_bgp_announce_set_list" class="api-link">Announce sets</a> (<a href="https://github.com/oxidecomputer/omicron/issues/6081">omicron#6081</a>)</p></li><li><p><a href="/api/networking_bgp_announcement_list" class="api-link">Originated routes in announcements</a> (<a href="https://github.com/oxidecomputer/omicron/issues/6081">omicron#6081</a>)</p></li><li><p><a href="/api/networking_bgp_exported" class="api-link">Exported prefixes per peer</a> (<a href="https://github.com/oxidecomputer/omicron/issues/6256">omicron#6256</a>)</p></li></ul></div></li><li><p>TCP-MD5 authentication for BGP sessions (<a href="https://github.com/oxidecomputer/maghemite/issues/326">maghemite#326</a>)</p></li></ul></div></div></div><div class="sect3"><h4 data-sectnum="..."><span class="anchor" id="_switch_port_settings" aria-hidden="true"></span><a class="link group" href="#_switch_port_settings">Switch port settings<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h4><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/api/networking_switch_port_settings_create" class="api-link">Switch port configuration</a> for specifying route priorities (<a href="https://github.com/oxidecomputer/omicron/issues/5836">omicron#5836</a>)</p></li><li><p><a href="/api/networking_switch_port_settings_create" class="api-link">Switch port configuration</a> to support LLDP (<a href="https://github.com/oxidecomputer/omicron/pull/6185">omicron-PR#6185</a>)</p></li></ul></div></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_live_instance_state_in_web_console" aria-hidden="true"></span><a class="link group" href="#_live_instance_state_in_web_console">Live instance state in web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>When an instance is starting or stopping, the console now automatically refreshes as the instance changes state (<a href="https://github.com/oxidecomputer/console/pull/2360">console#2360</a>, <a href="https://github.com/oxidecomputer/console/pull/2391">console#2391</a>). Users no longer have to manually refresh to know when an instance is ready to interact with. When trying to connect to the serial console of a starting instance, the console will wait and automatically connect when the instance is ready (<a href="https://github.com/oxidecomputer/console/pull/2374">console#2374</a>).</p></div><div class="imageblock   inlineimage" style="max-width:376px"><div class="content"><img src="/img/rel-10-instance-state.png" alt="Instance state refreshing" width="376px"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_vpc_routers_and_routes_in_web_console" aria-hidden="true"></span><a class="link group" href="#_vpc_routers_and_routes_in_web_console">VPC routers and routes in web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>v9 added endpoints for managing VPC routers and routes to the API. In v10, users can manage them in the web console (<a href="https://github.com/oxidecomputer/console/pull/2359">console#2359</a>, <a href="https://github.com/oxidecomputer/console/pull/2371">console#2371</a>). Subnets can be linked to custom routers (<a href="https://github.com/oxidecomputer/console/pull/2393">console#2393</a>).</p></div><div class="imageblock   "><div class="content"><img src="/img/rel-10-vpc-routes.png" alt="VPC routes"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_rack_reconfigurator" aria-hidden="true"></span><a class="link group" href="#_rack_reconfigurator">Rack Reconfigurator<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The reconfigurator module provides the foundation for Oxide control plane service configuration changes during hardware and software maintenance. It is accessible by Oxide technicians only at this time. It will be made available to rack operators in the form of component update/replacement capabilities in a future release.</p></div><div class="ulist"><ul class=""><li><p>Enable boundary NTP zone replacement</p></li><li><p>Enable disk downstairs auto-replacement when a sled or disk is marked expunged</p></li><li><p>Migrate in-progress jobs from expunged nexus zone to other available peers</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Manage quotas on silo page (<a href="https://github.com/oxidecomputer/console/pull/2369">console#2369</a>)</p></li><li><p>Lock technician port access by default (<a href="https://github.com/oxidecomputer/hubris/pull/1835">hubris#1835</a>)</p></li><li><p>Enable PERST pull-up resistor in Sidecar mainboard controller (<a href="https://github.com/oxidecomputer/hubris/pull/1861">hubris#1861</a>)</p></li><li><p>Fix <code>bgp config create</code> API error responses (<a href="https://github.com/oxidecomputer/omicron/issues/6244">omicron#6244</a>, <a href="https://github.com/oxidecomputer/omicron/issues/6245">omicron#6245</a>, <a href="https://github.com/oxidecomputer/omicron/issues/6246">omicron#6246</a>)</p></li><li><p>BGP peer state lookup should also include peer address (<a href="https://github.com/oxidecomputer/omicron/issues/6316">omicron#6316</a>)</p></li><li><p>Cap firewall rules per VPC at 1024 and cap filters per rule (<a href="https://github.com/oxidecomputer/omicron/issues/5662">omicron#5662</a>)</p></li><li><p>Link to new SSH docs from web console (<a href="https://github.com/oxidecomputer/console/pull/2339">console#2339</a>, <a href="https://github.com/oxidecomputer/console/pull/2370">console#2370</a>)</p></li><li><p>VPC firewall rules can be cloned (<a href="https://github.com/oxidecomputer/console/pull/2250">console#2250</a>)</p></li><li><p>Improved information density on the instance table (<a href="https://github.com/oxidecomputer/console/pull/2389">console#2389</a>)</p></li><li><p>Remove migrate instance endpoint from API in preparation for future work (<a href="https://github.com/oxidecomputer/omicron/issues/6173">omicron#6173</a>)</p></li><li><p>Bump IPv4 LPM table size for more route entries (dendrite#1012)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>AMD Microcode: Version update from 20240116 to 20240710</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/troubleshooting#_cant_delete_disk_after_canceled_image_import">procedure</a> for unsticking a canceled disk import can be used as a workaround.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Image upload sometimes stalls with HTTP/2 on Firefox.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>The ability to modify image metadata is not available at this time.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Possible 500 errors when creating a large number of instances concurrently. Users can retry the requests to work around the failures.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/5904">omicron#5904</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Instances are stuck in running state when the backend propolis servers are gone or disassociated from the control plane.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/5798">omicron#5798</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Instance disk boot order problem causes instance to drop to UEFI shell.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/5112">omicron#5112</a>,</p>
</div>
<div class="paragraph">
<p><a href="https://github.com/oxidecomputer/terraform-provider-oxide/issues/338">tf-provider#338</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Subnet update clears custom router ID when the field is left out of request body.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/6406">omicron#6406</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC routing</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Network interface update clears transit ips when the field is left out of request body.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>VM instance memory utilization and network throughput metrics are unavailable at this time.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Device tokens do not expire.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Sled and physical storage availability status are not available in the inventory UI and API yet.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Rack Networking</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Administratively deleting a bgp peer (e.g., <code>oxide system networking bgp peer del</code>) does not result in the routes learned from this peer from being deleted. This occurs because the handler for this API endpoint incorrectly missed the logic to cleanup routes imported from this peer.</p>
</div>
<div class="paragraph">
<p>To avoid this issue, ensure the peer transitions out of the <code>Established</code> state (e.g., by administratively shutting down the session or causing a connectivity loss between the two peers) or set the peer&#8217;s import policy to deny all routes before deleting the peer.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/maghemite/issues/349">maghemite#349</a></p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>-</p>
</div></div></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p>
</div></div></td><td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p>
</div></div></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v9]]></title>
        <id>https://docs.oxide.computer/release-notes/system/9</id>
        <link href="https://docs.oxide.computer/release-notes/system/9"/>
        <updated>2024-07-12T23:07:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The session timeout in the web console is now 8 hours idle and 24 hours absolute for a better user experience (<a href="https://github.com/oxidecomputer/omicron/pull/5920">omicron-PR#5920</a>). These values will be made configurable in a future release (<a href="https://github.com/oxidecomputer/omicron/issues/5477">omicron#5477</a>).</p></li><li class=""><p>The <a href="/api/networking_allow_list_update" class="api-link">external IP allowlist</a> is now applied to the API only; the allowlist no longer affects DNS server access (<a href="https://github.com/oxidecomputer/omicron/issues/5892">omicron#5892</a>).</p></li><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for API enhancements such as VPC subnet routing described under <a href="#new-features">New Features</a>. Please be sure to upgrade.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 8 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) will remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_vpc_subnet_routing" aria-hidden="true"></span><a class="link group" href="#_vpc_subnet_routing">VPC Subnet Routing<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Project users can now configure custom routes in VPCs to allow instances in different subnets within the same VPC to talk with one another.</p></li><li><p>Custom routers may be attached/detached to a VPC subnet using the <code>custom_router</code> field in subnet <code>POST</code> and <code>PUT</code> requests.
See the latest <a href="/guides/configuring-guest-networking#vpc-subnet">Networking</a> guide for more information.</p></li><li><p>A common use case enabled by subnet routing is hosting a VPN tunnel on a VM instance, as illustrated by this <a href="/guides/configuring-guest-networking#_example_4_software_routing_tunnels">example</a> in the networking guide.</p></li><li><p>Web console support for subnet routing will be added in a future release.</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_uplink_vlan_tagging" aria-hidden="true"></span><a class="link group" href="#_uplink_vlan_tagging">Uplink VLAN Tagging<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Operators may now include VLAN ID optionally in the <a href="/api/networking_switch_port_settings_create" class="api-link">switch port settings</a>.</p></li><li><p>The Oxide rack switches will make use of the VLAN ID to produce and consume 802.1Q Ethernet tags, enabling the Oxide rack to operate with shared physical network interfaces.</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_console_usability_improvements" aria-hidden="true"></span><a class="link group" href="#_console_usability_improvements">Console usability improvements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Increase session timeout to 8 hours idle and 24 hours absolute (<a href="https://github.com/oxidecomputer/omicron/pull/5920">omicron-PR#5920</a>)</p></li><li><p>Configure ephemeral and floating IPs on instance create form (<a href="https://github.com/oxidecomputer/console/issues/1097">console#1097</a>, <a href="https://github.com/oxidecomputer/console/issues/1098">console#1098</a>, <a href="https://github.com/oxidecomputer/console/issues/1979">console#1979</a>)</p></li><li><p>Attach and detach ephemeral IPs on instance detail page (<a href="https://github.com/oxidecomputer/console/issues/2288">console#2288</a>)</p></li><li><p>Show IP pool names on floating IPs list (<a href="https://github.com/oxidecomputer/console/pull/2245">console-PR#2245</a>)</p></li><li><p>Add searchable combobox field to a few forms, with more coming soon (<a href="https://github.com/oxidecomputer/console/pull/2267">console-PR#2267</a>)</p></li><li><p>Comprehensive help text on firewall rule form (<a href="https://github.com/oxidecomputer/console/pull/2286">console-PR#2286</a>)</p></li><li><p>Add logout button to error page (<a href="https://github.com/oxidecomputer/console/pull/2244">console-PR#2244</a>)</p></li><li><p>Fix serial console showing "Connected" when instance was not running (<a href="https://github.com/oxidecomputer/console/issues/2169">console#2169</a>)</p></li><li><p>Fix super-wide serial console page (<a href="https://github.com/oxidecomputer/console/pull/2272">console-PR#2272</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>PEM encoded certificate is now included in external API responses (<a href="https://github.com/oxidecomputer/omicron/pull/5078">omicron-PR#5078</a>)</p></li><li><p>Compute resource usage was decremented incorrectly when stopping a running instance (<a href="https://github.com/oxidecomputer/omicron/issues/5525">omicron#5525</a>)</p></li><li><p>Attempt to add firewall rule with duplicate name now returns a 400 (<a href="https://github.com/oxidecomputer/omicron/issues/5725">omicron#5725</a>)</p></li><li><p>IP pool linked silos pagination did not work (<a href="https://github.com/oxidecomputer/omicron/issues/5837">omicron#5837</a>)</p></li><li><p>Marking a sled non-provisionable caused existing instances to lose their private IP connectivity (<a href="https://github.com/oxidecomputer/omicron/issues/5872">omicron#5872</a>)</p></li><li><p>Fixed 404 on project IP pool view for users without fleet viewer role (<a href="https://github.com/oxidecomputer/omicron/issues/5883">omicron#5883</a>)</p></li><li><p>Enable support for updating RoT bootloader in future releases (<a href="https://github.com/oxidecomputer/omicron/pull/5882">omicron-PR#5882</a>)</p></li><li><p>Inflight orchestration jobs weren&#8217;t recovered automatically when the control plane was restarted (<a href="https://github.com/oxidecomputer/omicron/issues/5948">omicron#5948</a>)</p></li><li><p>Added BGP announce set modification API endpoint (<a href="https://github.com/oxidecomputer/omicron/issues/6022">omicron#6022</a>)</p></li><li><p>Database error was thrown when reading BGP peer configs in background sync job (<a href="https://github.com/oxidecomputer/omicron/issues/6023">omicron#6023</a>)</p></li><li><p>BGP filters were not persisted in the bootstore early networking configurations (<a href="https://github.com/oxidecomputer/omicron/issues/6067">omicron#6067</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>NVMe: Micron 7300 version 95420280 (<a href="https://media.digikey.com/pdf/PCNs/~No%20Display/Micron/PCN_34557.pdf">release notes</a>)</p></li><li><p>NVMe: Western Digital SN840 version R2210010</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import can be applied to work around the issue.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Possible 500 errors when creating a large number of instances concurrently. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5904">omicron#5904</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances are stuck in running state when the backend propolis servers are gone or disassociated from the control plane.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5798">omicron#5798</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and network throughput metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v8]]></title>
        <id>https://docs.oxide.computer/release-notes/system/8</id>
        <link href="https://docs.oxide.computer/release-notes/system/8"/>
        <updated>2024-05-07T20:02:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/rel-8-docs-popover-snapshot.png"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>These recent versions of API clients - CLI v0.4.0, Go SDK v0.1.0-beta4, and Terraform v0.3.0 - remain compatible with v8 besides rack networking configurations.</p></li><li class=""><p>If you want to leverage the new rack networking configurations (see <a href="#new-features">New Features</a>), please review the Networking section of the API documentation for the new configurable options and get the newer CLI binaries (<a href="https://github.com/oxidecomputer/oxide.rs/releases">v0.5.0</a>).</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 7 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) will remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_rack_networking_configurations" aria-hidden="true"></span><a class="link group" href="#_rack_networking_configurations">Rack networking configurations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Improved BGP support (<a href="https://github.com/oxidecomputer/maghemite/pull/199">maghemite#199</a>)</p><div class="ulist"><ul class=""><li><p>Use of the <code>enforce-first-as</code> option. (<a href="https://github.com/oxidecomputer/maghemite/issues/208">maghemite#208</a>)</p></li><li><p>Specifying ASN of BGP peer to prevent unauthorized/unintended remote peering. (<a href="https://github.com/oxidecomputer/maghemite/issues/151">maghemite#151</a>)</p></li><li><p>Additional BGP configurations such as keepalive time, multi-exit discriminator, import/export policies, local preferences, and operator-defined communities.</p></li></ul></div></li><li><p>Operator can now use the new <a href="/api/networking_allow_list_update" class="api-link">networking_allow_list_update</a> API to restrict the Oxide API/UI endpoint access by source IP address. (<a href="https://github.com/oxidecomputer/omicron/pull/5686">omicron-PR#5686</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_rack_reconfigurator" aria-hidden="true"></span><a class="link group" href="#_rack_reconfigurator">Rack reconfigurator<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>The new feature provides the foundation for rack component replacement and configuration changes. In v8, the reconfigurator module supports the programmatic configuration of new sleds for instance and disk mirror placement.</p></li><li><p>Additional capabilities are being developed to support other rack reconfiguration use cases. More details are forthcoming in release v9.</p></li><li><p>The reconfigurator module is currently only accessible by Oxide technicians. It will be made available to rack operators in a future release.</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_console_usability_improvements" aria-hidden="true"></span><a class="link group" href="#_console_usability_improvements">Console usability improvements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>In this release we focused on making the web experience friendlier for new users.</p></div><div class="ulist"><ul class=""><li><p>Links to relevant docs on every page (<a href="https://github.com/oxidecomputer/console/pull/2194">console#2194</a>)</p></li></ul></div><div class="imageblock   inlineimage" style="max-width:410px"><div class="content"><img src="/img/rel-8-docs-popover-snapshot.png" alt="Docs popover - Snapshots" width="410px"/></div></div><div class="ulist"><ul class=""><li><p>Denser tables present more information at a glance (<a href="https://github.com/oxidecomputer/console/pull/2153">console#2153</a>, <a href="https://github.com/oxidecomputer/console/pull/2158">console#2158</a>)</p></li><li><p>Refresh button on instance detail page (<a href="https://github.com/oxidecomputer/console/pull/2159">console#2159</a>, <a href="https://github.com/oxidecomputer/console/pull/2161">console#2161</a>)</p></li><li><p>Firewall rules easier to find and work with (<a href="https://github.com/oxidecomputer/console/pull/2108">console#2108</a>, <a href="https://github.com/oxidecomputer/console/pull/2163">console#2163</a>, <a href="https://github.com/oxidecomputer/console/pull/2190">console#2190</a>, <a href="https://github.com/oxidecomputer/console/pull/2218">console#2218</a>)</p></li><li><p>Notification and confirmation improvements (<a href="https://github.com/oxidecomputer/console/pull/2132">console#2132</a>, <a href="https://github.com/oxidecomputer/console/pull/2157">console#2157</a>, <a href="https://github.com/oxidecomputer/console/pull/2185">console#2185</a>, <a href="https://github.com/oxidecomputer/console/pull/2188">console#2188</a>, <a href="https://github.com/oxidecomputer/console/pull/2207">console#2207</a>)</p></li><li><p>Manage attached IPs from instance page (<a href="https://github.com/oxidecomputer/console/pull/2130">console#2130</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Web Console</p><div class="ulist"><ul class=""><li><p>Create instance with existing boot disk (<a href="https://github.com/oxidecomputer/console/issues/1060">console#1060</a>)</p></li><li><p>External IP addresses can be copied when there is more than one (<a href="https://github.com/oxidecomputer/console/pull/2170">console-PR#2170</a>)</p></li><li><p>Fix empty screen flash before nav on clicking project in top bar (<a href="https://github.com/oxidecomputer/console/pull/2156">console#2156</a>)</p></li><li><p>Add state and policy columns to physical disks table (<a href="https://github.com/oxidecomputer/console/pull/2151">console#2151</a>)</p></li><li><p>Rename Access &amp; IAM to Access (<a href="https://github.com/oxidecomputer/console/pull/2197">console#2197</a>, <a href="https://github.com/oxidecomputer/console/pull/2209">console#2209</a>)</p></li><li><p>Convert quota amounts to GiB on silo create form (<a href="https://github.com/oxidecomputer/console/pull/2141">console#2141</a>)</p></li></ul></div></li><li><p>Users can now create snapshots from disks attached to stopped instances. (<a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a>)</p></li><li><p>Floating IP create returned a 404 error when users without fleet admin privileges specified the IP pool to use. (<a href="https://github.com/oxidecomputer/omicron/issues/5508">omicron#5508</a>)</p></li><li><p>An initial set of SMBIOS tables are now exposed to the guest via <code>fw_cfg</code> and the OVMF ROM. (<a href="https://github.com/oxidecomputer/propolis/issues/628">propolis#628</a>)</p></li><li><p>Instance delete was stuck in stopping state due to deadlock during VM halt and destroy. (<a href="https://github.com/oxidecomputer/propolis/issues/675">propolis#675</a>)</p></li><li><p>Storage job queue management has been improved to avoid kicking out a disk mirror during heavy writes. (<a href="https://github.com/oxidecomputer/crucible/pull/1252">crucible-PR#1252</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1256">crucible-PR#1256</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1260">crucible-PR#1260</a>)</p></li><li><p>Metrics producer registration logic was refactored to use a lease-based renewal process to support sled replacement. (<a href="https://github.com/oxidecomputer/omicron/issues/5284">omicron#5284</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>None</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/4259">omicron#4259</a>, <a href="https://github.com/oxidecomputer/omicron/issues/4331">omicron#4331</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend repair may fail to complete under heavy large write workload, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and network throughput metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When a sled is rebooted outside of the maintenance settings, new instances on the sled may be unable to reach existing instances on other sleds until those instances have been restarted.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5214">omicron#5214</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v7]]></title>
        <id>https://docs.oxide.computer/release-notes/system/7</id>
        <link href="https://docs.oxide.computer/release-notes/system/7"/>
        <updated>2024-04-02T06:39:00.000Z</updated>
        <content type="html"><![CDATA[<link rel="preload" as="image" href="/img/ip-pool-utilization.svg"/><div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>The <a href="/api/instance_create" class="api-link">instance_create</a> API endpoint now returns a success response as soon as orchestration is finished. The hypervisor-level setup and booting has been made asynchronous to avoid timeouts (e.g., when there are many concurrent large instance requests). Care must be taken when provisioning instances to poll for instance state and connect to an instance only when it has transitioned to the <code>running</code> state.</p></li><li class=""><p>The <a href="https://github.com/oxidecomputer/oxide.rs/releases">Oxide CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases">Terraform Provider</a> have been updated for various API enhancements such as IP pool utilization described under <a href="#new-features">New Features</a>. Please ensure you obtain the latest version of the clients.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 6 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) will remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_floating_ips_in_web_console" aria-hidden="true"></span><a class="link group" href="#_floating_ips_in_web_console">Floating IPs in web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The web console now supports creating and deleting floating IP addresses, as well as attaching to and detaching from instances.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_ip_pool_utilization_in_api_and_web_console" aria-hidden="true"></span><a class="link group" href="#_ip_pool_utilization_in_api_and_web_console">IP pool utilization in API and web console<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The IP pool management page in the web console now includes real-time utilization data, giving fleet administrators visibility into the number of external IP addresses currently allocated in each pool. See also the <a href="/api/system_ip_pool_utilization_view" class="api-link">system_ip_pool_utilization_view</a> API endpoint.</p></div><div class="imageblock   "><div class="content"><img src="/img/ip-pool-utilization.svg" alt="IP Pool Utilization"/></div></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>New API endpoint <a href="/api/floating_ip_update" class="api-link">floating_ip_update</a> for updating floating IP name and description (<a href="https://github.com/oxidecomputer/omicron/issues/5016">omicron#5016</a>)</p></li><li><p>New API endpoint <a href="/api/networking_bgp_message_history" class="api-link">networking_bgp_message_history</a> for retrieving BGP message history (<a href="https://github.com/oxidecomputer/maghemite/pull/179">maghemite-PR#179</a>)</p></li><li><p>Fix capacity and utilization showing "undefined" in some cases (<a href="https://github.com/oxidecomputer/console/issues/1954">console#1954</a>)</p></li><li><p>Crucible worker thread tunable is reduced to avoid hitting the kernel limit, resulting in instances stuck in stopping state under heavy disk I/O. (<a href="https://github.com/oxidecomputer/crucible/issues/1184">crucible#1184</a>)</p></li><li><p>Fixes around crucible disk repair reliability (<a href="https://github.com/oxidecomputer/crucible/issues/1146">crucible#1146</a>, <a href="https://github.com/oxidecomputer/crucible/issues/1155">crucible#1155</a>)</p></li><li><p>Additional validations to prevent cross-project floating IP attach (<a href="https://github.com/oxidecomputer/omicron/pull/5177">omicron-PR#5177</a>)</p></li><li><p>Graceful transition to/from BFD-based networks (<a href="https://github.com/oxidecomputer/maghemite/pull/174">maghemite-PR#174</a>)</p></li><li><p>ClickHouse upgrade from v22.8.9.24 to v23.8.7.24 (<a href="https://github.com/oxidecomputer/omicron/pull/5127">omicron-PR#5127</a>)</p></li><li><p>"Probes" experimental API. Probes are instance-like objects used for emulating instance and network interface lifecycle events. They will consume IP addresses but do not take up any compute and storage resources. Probes may be used by Oxide technicians from time to time for instrumentation purposes with the rack operator&#8217;s permissions. (<a href="https://github.com/oxidecomputer/omicron/pull/4585">omicron-PR#4585</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_firmware_update" aria-hidden="true"></span><a class="link group" href="#_firmware_update">Firmware update<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>AMD microcode upgrade to 20240116 (<a href="https://www.illumos.org/issues/16208">illumos#16208</a>)</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances. As a workaround, user can detach a disk temporarily for snapshotting and re-attach it to the instance afterwards.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/4259">omicron#4259</a>, <a href="https://github.com/oxidecomputer/omicron/issues/4331">omicron#4331</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend repair may fail to complete under heavy large write workload, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">VM instance memory utilization and network throughput metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When a sled is rebooted outside of the maintenance settings, new instances on the sled may be unable to reach existing instances on other sleds until those instances have been restarted.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/5214">omicron#5214</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://registry.terraform.io/providers/oxidecomputer/oxide/latest/docs">Terraform Provider Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v6]]></title>
        <id>https://docs.oxide.computer/release-notes/system/6</id>
        <link href="https://docs.oxide.computer/release-notes/system/6"/>
        <updated>2024-02-07T12:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>IP pools have been reworked for greater flexibility and can now be managed through the web console UI.</p><div class="olist loweralpha"><ol class="loweralpha"><li class=""><p>In v5, an IP pool was either fleet-scoped (i.e., available to users in all silos) or silo-scoped (i.e., available in one silo). In v6, an IP pool can be linked to any number of silos. This enables configurations that were not possible in v5, such as an IP pool shared by silos A and B but not C.</p></li><li class=""><p>There is no longer a concept of fleet-scoped pool: users can only allocate IP addresses from pools explicitly linked to their silo. The behavior of a fleet-scoped pool can be recreated in the new model by linking a pool to every silo individually.</p></li><li class=""><p>The software update process will set up links between existing pools and silos in a way that preserves v5 behavior:</p><div class="olist lowerroman"><ol class="lowerroman"><li class=""><p>Formerly fleet-scoped pools will be linked to every silo.</p></li><li class=""><p>If a formerly fleet-scoped pool was marked “default” for the fleet, it will continue to be the default for each silo unless that silo had its own default pool overriding the fleet-level default.</p></li></ol></div></li><li class=""><p>After setting up a new silo, you will need to link an IP pool to it before users can allocate external IPs.</p></li><li class=""><p>Please review the updated <a href="/guides/operator/ip-pool-management">IP Pool Management</a> guide and API docs and update any API client that manipulates IP pools.</p></li></ol></div></li><li class=""><p>The Oxide <a href="https://github.com/oxidecomputer/oxide.rs/releases">CLI</a>, <a href="https://github.com/oxidecomputer/oxide.go/releases/tag/v0.1.0-beta3">Go SDK</a>, and <a href="https://github.com/oxidecomputer/terraform-provider-oxide/releases/tag/v0.2.0">Terraform Provider</a> have been updated for floating IP attach/detach support and the IP Pool changes mentioned above as well as other API enhancements, please ensure you obtain the latest versions.</p></li><li class=""><p>The <code>NewClient</code> function in the Go SDK has been modified to no longer require user agent, and now takes a <code>Config</code> struct instead. You can find more information about this, and other changes in the <a href="https://github.com/oxidecomputer/oxide.go/blob/main/CHANGELOG.md">Go SDK changelog</a>.</p></li><li class=""><p>The latest release of the Oxide CLI produces JSON-formatted output.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 5 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) should remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release comes with two new features for rack switch failover support, security fixes, and other minor enhancements.</p></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_fault_tolerant_multipath_connectivity" aria-hidden="true"></span><a class="link group" href="#_fault_tolerant_multipath_connectivity">Fault-Tolerant Multipath Connectivity<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Each of the two Oxide rack switches (aka &#8220;sidecars&#8221;) can now be connected to two or more uplinks allowing rack connectivity to remain available should there be a single physical switch or uplink failure. For static multipath routing configurations, this is made possible through Bidirectional Forwarding Detection (BFD) provided in this release. New tunnel routing capabilities within the rack&#8217;s internal network ensure packets leaving the rack are always routed to a rack switch with sufficient connectivity to forward packets to their final destination. For BGP routing configurations, tunnel routes adapt to changes in BGP routing tables. These features work together to eliminate single points of failure by automatically detecting connectivity issues and redirecting network traffic to the functional network paths. (Note: BFD verifies IP connectivity between the source and destination by actively sending control packets and/or passively responding to control packets from the neighboring devices.)</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_floating_ip_address_attachdetach" aria-hidden="true"></span><a class="link group" href="#_floating_ip_address_attachdetach">Floating IP address attach/detach<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>The floating IP feature introduced in v5 allows a consistent IP addresses to be allocated to a new instance and the address to be de-allocated upon instance termination. The feature has been further enhanced in v6 to allow floating IPs to be allocated to, or de-allocated from, running instances. In other words, you can move a floating IP from one instance to another on the fly. See the latest <a href="/guides/configuring-guest-networking#external-connectivity">Guest Networking</a> guide for more information.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_web_console_improvements" aria-hidden="true"></span><a class="link group" href="#_web_console_improvements">Web console improvements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>Manage IP pools: add/remove IP ranges, link/unlink silos, set default pool (<a href="https://github.com/oxidecomputer/console/pull/1910">console#1910</a>)</p></li><li><p>Select from list of SSH keys on instance create form (<a href="https://github.com/oxidecomputer/console/pull/1867">console#1867</a>)</p></li><li><p>Firewall rules table includes priority and direction, is sorted by priority (<a href="https://github.com/oxidecomputer/console/pull/1887">console#1887</a>)</p></li><li><p>Add user data (e.g., cloud-init config YAML) field under Advanced on instance create form (<a href="https://github.com/oxidecomputer/console/issues/800">console#800</a>)</p></li><li><p>Show external IPs at top of instance page (<a href="https://github.com/oxidecomputer/console/pull/1882">console#1882</a>)</p></li></ul></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_bug_fixes_and_minor_enhancements" aria-hidden="true"></span><a class="link group" href="#_bug_fixes_and_minor_enhancements">Bug fixes and minor enhancements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="ulist"><ul class=""><li><p>TCP state machine race condition could leave Nexus API or guest instance TCP connections in the wrong state (<a href="https://github.com/oxidecomputer/opte/issues/442">opte#442</a>)</p></li><li><p>Outbound TCP flow occasionally hung as old TCP flows were in FLOW_WAIT, blocking port reuse (<a href="https://github.com/oxidecomputer/opte/issues/436">opte#436</a>)</p></li><li><p>Instances could not transition to failed state when their propolis zones crashed or were purged (<a href="https://github.com/oxidecomputer/omicron/issues/4709">omicron#4709</a>)</p></li><li><p>API</p><div class="ulist"><ul class=""><li><p>Select the SSH keys to inject into instances at create time (<a href="https://github.com/oxidecomputer/omicron/issues/3056">omicron#3056</a>)</p></li><li><p>Users can list IP pools available to them (<a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a>)</p></li><li><p>Project deletion did not enforce the removal of the project&#8217;s floating IP addresses (<a href="https://github.com/oxidecomputer/omicron/issues/4854">omicron#4854</a>)</p></li><li><p>Instance create requests with hostnames not conforming to RFC 1035 are now prohibited (<a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron#4938</a>)</p></li></ul></div></li><li><p>Web console</p><div class="ulist"><ul class=""><li><p>Enhance number field and use it more consistently (<a href="https://github.com/oxidecomputer/console/pull/1926">console#1926</a>)</p></li><li><p>Fix y-axis units for large numbers on instance disk metrics charts (<a href="https://github.com/oxidecomputer/console/pull/1916">console#1916</a>)</p></li><li><p>Clickable styling (underline and hover) on links in tables (<a href="https://github.com/oxidecomputer/console/pull/1899">console#1899</a>)</p></li><li><p>Handle empty IP address in network interface create form (<a href="https://github.com/oxidecomputer/console/pull/1854">console#1854</a>)</p></li><li><p>Instance networking config moved under Advanced/Networking on instance create (<a href="https://github.com/oxidecomputer/console/issues/800">console#800</a>)</p></li><li><p>Don’t allow editing on the instance create form while submit is in progress (<a href="https://github.com/oxidecomputer/console/pull/1893">console#1893</a>)</p></li><li><p>Relative times (e.g., &#8220;7d ago&#8221;) have a tooltip showing absolute time (<a href="https://github.com/oxidecomputer/console/pull/1879">console#1879</a>)</p></li><li><p>Increase page size on tables from 10 to 25 (<a href="https://github.com/oxidecomputer/console/pull/1878">console#1878</a>)</p></li><li><p>Pressing enter while adding target, host, or port to firewall rule should not submit form (<a href="https://github.com/oxidecomputer/console/issues/1919">console#1919</a>)</p></li></ul></div></li><li><p>Reliability improvements</p><div class="ulist"><ul class=""><li><p>Improved network device driver error handling (<a href="https://github.com/oxidecomputer/propolis/issues/583">propolis#583</a>)</p></li><li><p>Stop checking the disk parent image/snapshot if the scrub is done (<a href="https://github.com/oxidecomputer/crucible/issues/1093">crucible#1093</a>)</p></li></ul></div></li><li><p>Storage performance improvements (<a href="https://github.com/oxidecomputer/crucible/pull/1058">crucible-PR#1058</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1066">crucible-PR#1066</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1089">crucible-PR#1089</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1094">crucible-PR#1094</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1107">crucible-PR#1107</a>)</p></li><li><p>Control plane datastores now use ZFS datasets in encrypted mode (<a href="https://github.com/oxidecomputer/omicron/pull/4853">omicron-PR#4853</a>)</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances. As a workaround, user can detach a disk temporarily for snapshotting and re-attach it to the instance afterwards.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/4259">omicron#4259</a>, <a href="https://github.com/oxidecomputer/omicron/issues/4331">omicron#4331</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend repair may fail to complete under heavy large write workload, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance hostname validation has been strengthened. Instances with a now-invalid hostname will fail to start, though they can still be listed and viewed. If the disks attached to them are valuable, they may be detached from the invalid instances, and re-attached to a new instance. The invalid instance may be deleted at that time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/pull/4938">omicron-PR#4938</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM vcpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When sleds attached to the switches are restarted outside of rack cold-start, a full rack power cycle may be required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v5]]></title>
        <id>https://docs.oxide.computer/release-notes/system/5</id>
        <link href="https://docs.oxide.computer/release-notes/system/5"/>
        <updated>2023-12-17T12:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>This release comes with new features for multi-tenant management. As part of this change, silo creation now requires a set of resource quotas (vcpu, memory, storage) to be specified.</p><div class="olist loweralpha"><ol class="loweralpha"><li class=""><p>As part of the software update, all existing silos will have resource quotas configured to use all available fleet capacity initially. Fleet administrators can modify the quotas afterwards via the new <code>/v1/system/silos/{silo}/quotas</code> API.</p></li><li class=""><p>See the <a href="#new-features">New Features</a> section for more information about silo resource allocation.</p></li></ol></div></li><li class=""><p>A previous issue with disk deletion (<a href="https://github.com/oxidecomputer/omicron/issues/3866">omicron#3866</a>) resulted in incomplete removal of backend data volumes and over-reported disk usage. The issue may manifest as 500 errors when a user attempts to delete a project that has no resource in it. Such partially removed disks will be un-deleted during the software update process. They are marked in <code>faulted</code> state so that they can be cleanly deleted again. Please review and remove any faulted disks once the system has been updated.</p></li><li class=""><p>The <code>disk_import_blocks_from_url</code> API endpoint for importing disk images from a remote URL is no longer supported. Please download image files to your local workstation and use the <code>disk_bulk_write</code> APIs to import them instead. (Note: The <code>oxide disk import</code> CLI command is not affected by this change.)</p></li><li class=""><p>The Oxide CLI binaries (<a href="https://github.com/oxidecomputer/oxide.rs/releases/tag/v0.2.0">v0.2.0</a>) have been updated for the new floating IP and resource quota endpoints.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrades from version 3 and 4 are both supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) should remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="new-features" aria-hidden="true"></span><a class="link group" href="#new-features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release includes several new features for rack management and VM instance networking:</p></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_silo_resource_allocation" aria-hidden="true"></span><a class="link group" href="#_silo_resource_allocation">Silo resource allocation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Fleet administrators can now set limits on virtual resources (vcpu, memory, storage) usable by individual silos. Quotas are set during silo creation and can be modified afterwards to levels at or above the current utilization. Silo administrators can query the capacity and current utilization via API or CLI to independently manage the rack resources allocated to them.</p></div><div class="paragraph"><p>Quotas are enforced when a new disk is provisioned and when an instance is started. If the action causes the silo&#8217;s aggregate resource usage to exceed its quotas, users will receive an <code>InsufficientCapacity</code> error. Please refer to the new <a href="/guides/operator/silo-management">Silo Management</a> guide for details on usable capacity and utilization calculations as well as some possible exception scenarios.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_marking_sled_non_provisionable" aria-hidden="true"></span><a class="link group" href="#_marking_sled_non_provisionable">Marking sled non-provisionable<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>This new API allows operators to temporarily exclude a sled from new workload placement. The action may be required when diagnosing and mitigating the impact of unexpected sled issues (e.g., unresponsive sleds, unscheduled reboots). This operator API is a precursor for the sled maintenance and replacement feature set.</p></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_floating_ip_address" aria-hidden="true"></span><a class="link group" href="#_floating_ip_address">Floating IP address<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="paragraph"><p>Floating IPs are permanent, project-scoped resources which bind an individual IP address from a given IP Pool. They allow for well-known addresses to be allocated (explicitly or automatically) and assigned to target instances, making it easier to host services from a consistent address. Floating IPs are allocated or de-allocated only when instances are created or destroyed at this time. They can also be used along with ephemeral IP so that an instance can be accessed on more than one external IP address. Please refer to the user guides (<a href="/guides/configuring-guest-networking">Configuring Guest Networking</a> and <a href="/guides/managing-floating-ips">Managing Floating IPs</a>) for more information.</p></div><div class="paragraph"><p>Bug fixes:</p></div><div class="ulist"><ul class=""><li><p>Security fix: CVE-2023-50913 SSRF in Oxide software that could allow attacker to access the ClickHouse metrics datastore.</p></li><li><p>Spurious errors were returned for snapshot or disk deletions after multiple delete requests on the same snapshot (<a href="https://github.com/oxidecomputer/omicron/issues/3866">omicron#3866</a>, <a href="https://github.com/oxidecomputer/omicron/pull/4547">omicron-PR#4547</a>)</p></li><li><p>Disk create or instance start requests under high concurrency failed to complete (<a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a>)</p></li><li><p>Instances sometimes fail to boot up when they are created under very high concurrency (<a href="https://github.com/oxidecomputer/propolis/issues/535">propolis#535</a>)</p></li><li><p>IP address could not be left blank when adding NIC to instance (<a href="https://github.com/oxidecomputer/console/issues/1438">console#1438</a>)</p></li><li><p>Image sizes were not available on image picker (<a href="https://github.com/oxidecomputer/console/issues/1824">console#1824</a>)</p></li><li><p>Project picker showed only the first 20 projects (<a href="https://github.com/oxidecomputer/console/issues/1817">console#1817</a>)</p></li><li><p>Disk snapshot action did not provide any UI feedback (<a href="https://github.com/oxidecomputer/console/issues/1817">console#1815</a>)</p></li><li><p>BGP configuration was not applied to switches after upgrade (<a href="https://github.com/oxidecomputer/omicron/issues/4474">omicron#4474</a>)</p></li><li><p>BGP failed to handle <code>ConnectRetryTimerExpires</code> in Active state (<a href="https://github.com/oxidecomputer/maghemite/issues/93">maghemite#93</a>)</p></li><li><p>Link parameters from rack setup was not persisted in the control plane datastore (<a href="https://github.com/oxidecomputer/omicron/issues/4470">omicron#4470</a>)</p></li><li><p>Link config API did not allow for setting link autonegotiation (<a href="https://github.com/oxidecomputer/omicron/issues/4458">omicron#4458</a>)</p></li><li><p>RoT on production Rev E gimlet incorrectly prohibited software update (<a href="https://github.com/oxidecomputer/omicron/issues/4420">omicron#4420</a>)</p></li><li><p>Reliability improvements:</p><div class="ulist"><ul class=""><li><p>Support for non-power-of-2 multipath route selection (<a href="https://github.com/oxidecomputer/dendrite/pull/685">dendrite-PR#685</a>)</p></li><li><p>Background tasks to populate NAT entries of sleds and instances during normal and unexpected restarts (<a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a>)</p></li><li><p>Better handling of racing VM suspend conditions (<a href="https://github.com/oxidecomputer/propolis/issues/559">propolis#559</a>, <a href="https://github.com/oxidecomputer/propolis/issues/561">propolis#561</a>)</p></li><li><p>Better handling of project resource usage mismatch conditions (<a href="https://github.com/oxidecomputer/omicron/issues/4426">omicron#4426</a>)</p></li></ul></div></li><li><p>Storage backend reliability and performance improvements (<a href="https://github.com/oxidecomputer/crucible/pull/1014">crucible-PR#1014</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1038">crucible#1038</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1021">crucible#1021</a>, <a href="https://github.com/oxidecomputer/crucible/pull/991">crucible-PR#991</a>, <a href="https://github.com/oxidecomputer/crucible/pull/1019">crucible-PR#1019</a>, <a href="https://github.com/oxidecomputer/omicron/pull/1047">crucible-PR#1047</a>)</p></li></ul></div><div class="paragraph"><p>Firmware update:</p></div><div class="ulist"><ul class=""><li><p>None in this release</p></li></ul></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disks in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The current <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2 on Firefox.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances. As a workaround, user can detach a disk temporarily for snapshotting and re-attach it to the instance afterwards.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3056">omicron#3056</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend repair may fail to complete under heavy large write workload, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances no longer transition to failed state when propolis zone has crashed or is gone</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/4709">omicron#4709</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM vcpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When sleds attached to the switches are restarted outside of rack cold-start, a full rack power cycle may be required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">End users cannot query the names of non-default IP pools. The information needs to be provided by the administrators manually at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v4]]></title>
        <id>https://docs.oxide.computer/release-notes/system/4</id>
        <link href="https://docs.oxide.computer/release-notes/system/4"/>
        <updated>2023-11-07T01:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release includes bug fixes that are essential for configuring BGP. It also includes an OpenSSL update that has no impact on the product features. If you do not plan to use BGP for rack networking, you may consider skipping this release.</p></div><div class="paragraph"><p>There is also additional operator documentation on <a href="/guides/operator/configuring-bgp">how to configure BGP</a> and a new version of the <a href="https://github.com/oxidecomputer/oxide.rs/releases">CLI binaries</a> that support the BGP configuration API.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 3 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) should remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Changes in this release:</p></div><div class="ulist"><ul class=""><li><p>OpenSSL version upgrade from 3.0.11 to 3.0.12 for <a href="https://github.com/advisories/GHSA-xw78-pcr6-wrg8">CVE-2023-5363</a>
(see also <a href="https://www.openssl.org/news/secadv/20231024.txt">security advisory</a>).</p></li><li><p>Rack networking configuration fixes and improvements (<a href="https://github.com/oxidecomputer/omicron/issues/4406">omicron#4406</a>).</p><div class="ulist"><ul class=""><li><p>A port settings update resulted in the ASIC and switch-zone updates going to different sidecars.</p></li><li><p>Determine nexthop dynamically based on peer connection.</p></li><li><p>Improve link configurability (technician tool to set/clear PRBS mode, better identification scheme, allowing manual lane selection)</p></li></ul></div></li></ul></div><div class="paragraph"><p>Firmware update:</p></div><div class="ulist"><ul class=""><li><p>None in this release</p></li></ul></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The current <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3056">omicron#3056</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk create or instance start requests under high concurrency may fail to complete. Users can reduce the concurrency level to avoid the error or retry failed requests.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances sometimes fail to boot up when they are created under very high concurrency. Rebooting the instances should allow the guest OS to come up.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/propolis/issues/535">propolis#535</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend is occasionally stuck in repair state, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM cpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When sleds attached to the switches are restarted outside of rack cold-start, a full rack power cycle may be required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">End users cannot query the names of non-default IP pools. The ability to set up and query different IP pools (e.g., per-project IP pools) will be available soon in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v3]]></title>
        <id>https://docs.oxide.computer/release-notes/system/3</id>
        <link href="https://docs.oxide.computer/release-notes/system/3"/>
        <updated>2023-10-24T07:18:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="olist arabic"><ol class="arabic"><li class=""><p>Starting from this release, the numbering convention follows an integer version numbering scheme. Upgrade from v1.0.2 to this release, version 3, does <em>not</em> require a system reset or other special handling.</p></li><li class=""><p>Please note that there are two functional changes around the instance lifecycle:</p><div class="ulist"><ul class=""><li><p>The vCPU and memory resources of <code>stopped</code> instances no longer count toward current utilization in the web UI and system metrics API.</p></li><li><p>The transient instance state <code>rebooting</code> may not be reflected in the UI or API if the reboot operation completes almost instantly. The instance may be considered <code>running</code> throughout the process.</p><div class="paragraph"><p>These changes allow more accurate reporting of resource utilization and reduced concurrent instance provisioning errors.</p></div></li></ul></div></li><li class=""><p>There is a change in the ClickHouse timeseries key generation method. Historical metrics are dropped as part of the software update. Utilization metrics will be re-populated once a new instance/disk lifecycle event (e.g., create, start, delete) has taken place.</p></li></ol></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 1.0.2 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div><div class="paragraph"><p>All existing setup and data (e.g., projects, users, instances) should remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release includes a number of performance and VM workflow reliability improvements.</p></div><div class="ulist"><ul class=""><li><p>Support for Border Gateway Protocol (BGP); see the updated <a href="/api/networking_bgp_config_create">API documentation</a> for more details about the setup</p></li><li><p>Improved virtual disk read/write performance (<a href="https://github.com/oxidecomputer/crucible/issues/872">crucible#872</a>, <a href="https://github.com/oxidecomputer/crucible/issues/981">crucible#981</a>, <a href="https://github.com/oxidecomputer/crucible/issues/586">crucible#586</a>)</p></li><li><p><a href="/api/ping">Ping API endpoint</a> for control plane connectivity healthcheck (<a href="https://github.com/oxidecomputer/omicron/issues/3923">omicron#3923</a>)</p></li><li><p>Silo utilization summary table (<a href="https://github.com/oxidecomputer/console/issues/1783">console#1783</a>)</p></li></ul></div><div class="paragraph"><p>Bug fixes:</p></div><div class="ulist"><ul class=""><li><p>Instances provisioned in bulk from the same image were stuck in <code>stopping</code> state due to back pressure on read-only parent (<a href="https://github.com/oxidecomputer/crucible/issues/969">crucible#9696</a>, <a href="https://github.com/oxidecomputer/crucible/pull/984">crucible-PR#984</a>)</p></li><li><p>Spurious errors returned for snapshot or disk deletions after multiple delete requests on the same snapshot (<a href="https://github.com/oxidecomputer/omicron/issues/3866">omicron#3866</a>, <a href="https://github.com/oxidecomputer/crucible/pull/920">omicron-PR#920</a>)</p></li><li><p>500 errors were returned when attempting to delete images (<a href="https://github.com/oxidecomputer/omicron/issues/3033">omicron#3033</a>)</p></li><li><p>Firewall rules using VPC as target traffic filtering was based on an instance&#8217;s private IP only but not its public IP (<a href="https://github.com/oxidecomputer/opte/issues/380">opte#380</a>)</p></li><li><p>Instance DNS was hardcoded to 8.8.8.8 (<a href="https://github.com/oxidecomputer/opte/issues/390">opte#390</a>)</p></li><li><p>Disk replica placement did not maximize physical disk spread over separate sleds (<a href="https://github.com/oxidecomputer/omicron/issues/3702">omicron#3702</a>)</p></li><li><p>Guest OS panicked upon executing <code>lshw -C disk</code> (<a href="https://github.com/oxidecomputer/propolis/issues/520">propolis#520</a>)</p></li><li><p>Disk run-time metrics were not captured after a timeseries format change (<a href="https://github.com/oxidecomputer/crucible/issues/942">crucible#942</a>)</p></li><li><p>User with silo collaborator role was unable to start an instance (<a href="https://github.com/oxidecomputer/omicron/issues/4272">omicron#4272</a>)</p></li><li><p>Unsuccessful deletion of running instances could still remove public IP (<a href="https://github.com/oxidecomputer/omicron/issues/2842">omicron#2842</a>)</p></li><li><p>IP Pool API get responses now include the <code>is_default</code> value (<a href="https://github.com/oxidecomputer/omicron/issues/4005">omicron#4005</a>)</p></li><li><p>Silo TLS certificate can now be specified in Silo Create UI (<a href="https://github.com/oxidecomputer/console/issues/1736">console#1736</a>)</p></li><li><p>Additional stratum checks for more reliable NTP synchronization (<a href="https://github.com/oxidecomputer/omicron/pull/4119">omicron-PR#4119</a>)</p></li><li><p>Improved physical disk out-of-space handling (<a href="https://github.com/oxidecomputer/crucible/issues/861">crucible#861</a>)</p></li><li><p>Improved back pressure handling under heavy disk write workload (<a href="https://github.com/oxidecomputer/crucible/issues/902">crucible#902</a>)</p></li><li><p>Added TLS certificate CN/SAN validation against rack external domain name (<a href="https://github.com/oxidecomputer/omicron/issues/4045">omicron#4045</a>)</p></li><li><p><code>curl</code> upgrade (from 8.3.0 to 8.4.0) for CVEs (<a href="https://github.com/oxidecomputer/helios/issues/119">helios#119</a>)</p><div class="ulist"><ul class=""><li><p><a href="https://curl.se/docs/CVE-2023-38545.html">CVE-2023-38545</a></p></li><li><p><a href="https://curl.se/docs/CVE-2023-38546.html">CVE-2023-38546</a></p></li></ul></div></li></ul></div><div class="paragraph"><p>Firmware update:</p></div><div class="ulist"><ul class=""><li><p>None in this release</p></li></ul></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk in <code>importing_from_bulk_writes</code> state cannot be deleted directly. The current <a href="/guides/managing-disks-and-snapshots#_disk_states_during_provisioning">procedures</a> to unstick a canceled disk import are not obvious to CLI users.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2987">omicron#2987</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3056">omicron#3056</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk create or instance start requests under high concurrency may fail to complete. Users can reduce the concurrency level to avoid the error or retry failed requests.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instances sometimes fail to boot up when they are created under very high concurrency. Rebooting the instances should allow the guest OS to come up.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/propolis/issues/535">propolis#535</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Disk volume backend is occasionally stuck in repair state, preventing instances from starting or stopping.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/837">crucible#837</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM cpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When sleds attached to the switches are restarted outside of rack cold-start, a full rack power cycle may be required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">End users cannot query the names of non-default IP pools. The ability to set up and query different IP pools (e.g., per-project IP pools) will be available soon in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v1.0.2]]></title>
        <id>https://docs.oxide.computer/release-notes/system/1-0-2</id>
        <link href="https://docs.oxide.computer/release-notes/system/1-0-2"/>
        <updated>2023-08-31T12:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This patch release does not require a system reset. All existing setup and data (e.g., projects, users, instances) remain intact after the software update.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 1.0.1 is supported. We recommend shutting down all running instances on the rack before the software update commences.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release includes a number of performance improvements and a new capability for multi-tenant IP pool management.</p></div><div class="ulist"><ul class=""><li><p>Reduced virtual disk read/write latencies</p></li><li><p>Improved instance provisioning performance</p></li><li><p>Maximum VM instance size limit raised to 64 vcpus and 256 GiB memory</p></li><li><p>Ability for operator to define silo-specific external IP pools (see <a href="/api/system_ip_pool_create" class="api-link">system_ip_pool_create</a>)</p></li><li><p>Instance external IP address automatically allocated from silo IP pool if one is configured</p></li></ul></div><div class="paragraph"><p>Bug fixes:</p></div><div class="ulist"><ul class=""><li><p>Booting up an instance after rack power-cycle required an extra stop-start cycle to regain network connectivity (<a href="https://github.com/oxidecomputer/omicron/issues/3813">omicron#3813</a>)</p></li><li><p>Spurious errors returned after successful snapshot or disk deletions (<a href="https://github.com/oxidecomputer/omicron/issues/3866">omicron#3866</a>)</p></li><li><p>VM start operation was prohibited when metrics subsystem was unable to serve requests (<a href="https://github.com/oxidecomputer/propolis/issues/497">propolis#497</a>)</p></li><li><p>System clock sync with NTP was declared prematurely in some cases (<a href="https://github.com/oxidecomputer/omicron/issues/3831">omicron#3831</a>)</p></li></ul></div><div class="paragraph"><p>Firmware update:</p></div><div class="ulist"><ul class=""><li><p>None in this release</p></li></ul></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules using VPC as target should allow/deny traffic based on an instance’s private IP only and not apply the rules against the instance’s public IP. As a workaround, use subnet as target to permit only intra-subnet traffic without allowing inbound traffic from other IP addresses on the same public network as the instance.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/opte/issues/380">opte#380</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to delete images is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3033">omicron#3033</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3734">omicron#3734</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Concurrent instance provisioning requests (e.g., as typically happens with programmatic orchestration such as Terraform) may return 500 errors. Users can reduce the concurrency level to avoid the error or retry the failed requests.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM cpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When switch zones are bounced outside of rack cold-start, a full rack power cycle is required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Public IP addresses used for VM instances are currently assigned from a single pool named “default”. End-users do not have the ability to see the names of other IP pools. The ability to set up and query per-project IP pools will be available soon in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Routing between the rack and on-premise L2 networks is currently restricted to static routes only. The use of Border Gateway Protocol (BGP) for dynamic route configuration will be supported in upcoming releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/maghemite/issues/27">maghemite#27</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v1.0.1]]></title>
        <id>https://docs.oxide.computer/release-notes/system/1-0-1</id>
        <link href="https://docs.oxide.computer/release-notes/system/1-0-1"/>
        <updated>2023-08-01T12:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This is a patch release aimed at improving fault tolerance. A factory reset will be required to make use of the new features.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Please refer to <a href="/release-notes/system/1-0-0#_system_requirements">v1.0.0 release notes</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_upgrade_compatibility" aria-hidden="true"></span><a class="link group" href="#_upgrade_compatibility">Upgrade Compatibility<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Upgrade from version 1.0.0 is not supported.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_new_features" aria-hidden="true"></span><a class="link group" href="#_new_features">New Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This release covers a number of fault tolerance related improvements. There are no new user features.</p></div><div class="ulist"><ul class=""><li><p>New bootstore for persistent rack initialization data</p></li><li><p>Improved handling of network and service configurations during rack, sled, and service restart</p></li><li><p>Encryption key generation hardening</p></li><li><p>Improved storage space management for system log and dump files</p></li></ul></div><div class="paragraph"><p>Bug fixes:</p></div><div class="ulist"><ul class=""><li><p>I2C temperature error handling for U.2s could be improved (<a href="https://github.com/oxidecomputer/hubris/pull/1465">hubris-pr#1465</a>)</p></li><li><p>IPv6 RIP router was enabled by default in general deployments. (<a href="https://github.com/oxidecomputer/omicron/commit/3ce0ca7d60e28f5d3c0fbe61b098c236ef46b51b">omicron-pr#3736</a>)</p></li><li><p>Identity provider descriptor endpoint was not resolvable in Nexus. (<a href="https://github.com/oxidecomputer/omicron/issues/3724">omicron#3724</a>)</p></li><li><p>Sled-agent leaked contracts when executing commands from non-global zones. (<a href="https://github.com/oxidecomputer/omicron/issues/3753">omicron#3753</a>)</p></li><li><p>Pantry service was not deployed as a cluster. (<a href="https://github.com/oxidecomputer/omicron/issues/3609">omicron#3609</a>)</p></li><li><p>Backplane ports were not defaulted to RS FEC. (<a href="https://github.com/oxidecomputer/omicron/pull/3714">omicron-pr#3714</a>)</p></li><li><p>ipadm did not allow creation of point to point links. (<a href="https://www.illumos.org/issues/15806">illumos#15806</a>)</p></li><li><p>TSC sync produced unreliable results with caches disabled. (<a href="https://www.illumos.org/issues/15810">illumos#15810</a>)</p></li><li><p>bhyve could take more care around VM_MAXCPU (<a href="https://www.illumos.org/issues/15812">illumos#15812</a>)</p></li><li><p>fp_lwp_init allocated under p_lock, leading to deadlock under memory pressure. (stlouis#463)</p></li></ul></div><div class="paragraph"><p>Firmware update:</p></div><div class="ulist"><ul class=""><li><p>Chelsio cxgbe firmware is updated from version 1.27.1.0 to 1.27.4.0. (<a href="https://www.illumos.org/issues/15804">illumos#15804</a>)</p></li><li><p>AMD microcode is updated from version 20230414 to  20230719. (<a href="https://www.illumos.org/issues/15811">illumos#15811</a>)</p></li></ul></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules using VPC as target should allow/deny traffic based on an instance’s private IP only and not apply the rules against the instance’s public IP. As a workaround, use subnet as target to permit only intra-subnet traffic without allowing inbound traffic from other IP addresses on the same public network as the instance.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/opte/issues/380">opte#380</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Spurious errors after snapshot or disk deletion has been completed successfully.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/824">crucible#824</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to delete images is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3033">omicron#3033</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The maximum instance size is currently limited to 32 vcpus and 64 GiB of memory, and up to seven 1023 GiB disks.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/propolis/issues/474">propolis#474</a>, <a href="https://github.com/oxidecomputer/omicron/issues/3129">omicron#3129</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3734">omicron#3734</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Concurrent instance provisioning requests (e.g., as typically happens with programmatic orchestration such as Terraform) may return 500 errors. Users can reduce the concurrency level to avoid the error or retry the failed requests.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Booting up an instance after rack power-cycle currently requires an extra stop-start cycle to regain network connectivity.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3813">omicron#3813</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM cpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">When switch zones are bounced outside of rack cold-start, a full rack power cycle is required to re-propagate sled NAT configurations.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3631">omicron#3631</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Public IP addresses used for VM instances are currently assigned from a single pool named “default”. End-users do not have the ability to see the names of other IP pools. The ability to set up and query per-project IP pools will be available soon in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Routing between the rack and on-premise L2 networks is currently restricted to static routes only. The use of Border Gateway Protocol (BGP) for dynamic route configuration will be supported in upcoming releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/maghemite/issues/27">maghemite#27</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
    <entry>
        <title type="html"><![CDATA[v1.0.0]]></title>
        <id>https://docs.oxide.computer/release-notes/system/1-0-0</id>
        <link href="https://docs.oxide.computer/release-notes/system/1-0-0"/>
        <updated>2023-07-17T12:00:00.000Z</updated>
        <content type="html"><![CDATA[<div id="content" class="asciidoc-body release-note-doc w-full"><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_important_notes" aria-hidden="true"></span><a class="link group" href="#_important_notes">Important Notes<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>This is the first release of Oxide Computer Model 0, also known as the “0x1” rack. In future release notes, we will include detailed changelogs for each software component to highlight changes such as new features, bug fixes, and upgrade impact.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_system_requirements" aria-hidden="true"></span><a class="link group" href="#_system_requirements">System Requirements<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer is an appliance built with tightly integrated hardware and software components. It requires the following supporting services external to the rack for it to be operational:</p></div><div class="ulist"><ul class=""><li><p>L2 network that supports bidirectional port forwarding</p></li><li><p>NTP service for system time synchronization</p></li><li><p>Domain name service and a delegated subdomain for use by the rack</p></li><li><p>Identity provider that supports SAML authentication</p></li></ul></div><div class="paragraph"><p>Supported systems for the official clients:</p></div><div class="ulist"><ul class=""><li><p>Browsers for web console: Chrome, Edge, Firefox, Safari</p></li><li><p>OSes for CLI: Linux, macOS, Windows</p></li></ul></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_installation" aria-hidden="true"></span><a class="link group" href="#_installation">Installation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>Oxide Computer Model 0 must be installed and configured under the guidance of Oxide technicians. The requirement may change in future releases.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_features" aria-hidden="true"></span><a class="link group" href="#_features">Features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="paragraph"><p>The Oxide rack covers the complete hardware and software stack for deploying and managing virtual machine instances and related virtualized resources such as</p></div><div class="ulist"><ul class=""><li><p>persistent block storage in the form of detachable virtual disks</p></li><li><p>snapshots and disk images</p></li><li><p>private network interface for intra-subnet access</p></li><li><p>public network interface for inbound access</p></li><li><p>built-in NAT service for outbound public network access</p></li><li><p>virtual private cloud (VPC) and firewall capabilities</p></li></ul></div><div class="paragraph"><p>Many of the popular Linux distros such as Ubuntu, Debian and CentOS are supported as the guest operating systems for VM instances. Microsoft Windows server and desktop operating systems will be fully supported soon in the upcoming releases.</p></div><div class="paragraph"><p>The key features for operators and administrators include:</p></div><div class="ulist"><ul class=""><li><p>organizing and isolating virtual resources by tenants and by projects</p></li><li><p>integrating with SAML-based identity provider for identity and access management</p></li><li><p>managing IP address allocation</p></li><li><p>basic metrics and visualizations for capacity utilization</p></li></ul></div><div class="paragraph"><p>The key management features for end-users include:</p></div><div class="ulist"><ul class=""><li><p>self-service orchestration via the web console and API</p></li><li><p>command-line tools including Oxide CLI and Terraform</p></li><li><p>capabilities to build custom integration tools using Oxide SDK</p></li><li><p>project-level resource utilization and disk I/O metrics</p></li></ul></div><div class="paragraph"><p>The rack also comes with built-in security features to ensure all hardware and software are genuine Oxide products:</p></div><div class="ulist"><ul class=""><li><p>purpose-built hardware root of trust (RoT) – present on every Oxide server and switch – cryptographically validates that its own firmware is genuine and unmodified</p></li><li><p>encryption of data at rest via internal key management system built on the RoT</p></li><li><p>trust quorum establishment at boot time to ensure the cryptographically-derived rack secret is verified before unlocking storage</p></li></ul></div><div class="paragraph"><p>More details about Oxide Computer can be found in the <a href="/guides/introduction">product documentation</a>.</p></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_known_behavior_and_limitations" aria-hidden="true"></span><a class="link group" href="#_known_behavior_and_limitations">Known Behavior and Limitations<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_end_user_features" aria-hidden="true"></span><a class="link group" href="#_end_user_features">End-user features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Firewall rules using VPC as target should allow/deny traffic based on an instance’s private IP only and not apply the rules against the instance’s public IP. As a workaround, use subnet as target to permit only intra-subnet traffic without allowing inbound traffic from other IP addresses on the same public network as the instance.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/opte/issues/380">opte#380</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Image upload sometimes stalls with HTTP/2.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3559">omicron#3559</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Unable to create snapshots for disks attached to stopped instances.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3289">omicron#3289</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Spurious errors after snapshot or disk deletion has been completed successfully.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/crucible/issues/824">crucible#824</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to delete images is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3033">omicron#3033</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Image/snapshot management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to modify image metadata is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2800">omicron#2800</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The maximum instance size is currently limited to 32 vcpus and 64 GiB of memory, and up to seven 1023 GiB disks.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/propolis/issues/474">propolis#474</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">The ability to select which SSH keys to be passed to a new instance is not available at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3734">omicron#3734</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Concurrent instance provisioning requests (e.g., as typically happens with programmatic orchestration such as Terraform) may return 500 errors. Users can reduce the concurrency level to avoid the error or retry the failed requests.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3304">omicron#3304</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Instance orchestration</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Instance or disk provisioning requests may fail due to unhandled sled or storage failure on rare occasions. Users can retry the requests to work around the failures.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/3480">omicron#3480</a>, <a href="https://github.com/oxidecomputer/omicron/issues/2483">omicron#2483</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Guest VM cpu and memory metrics are unavailable at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">VPC and routing</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Inter-subnet traffic routing is not available by default. Router and routing rules will be supported in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2232">omicron#2232</a></p></td></tr></tbody></table></div></div></div><div class="sect2"><h3 data-sectnum=".."><span class="anchor" id="_operator_features" aria-hidden="true"></span><a class="link group" href="#_operator_features">Operator features<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h3><div class="sectionbody"><div class="table-wrapper"><table class="tableblock frame-all grid-all stretch"><colgroup><col style="width:16.6666%"/><col style="width:66.6666%"/><col style="width:16.6668%"/></colgroup><thead><tr><th class="tableblock halign-left valign-top">Feature Area</th><th class="tableblock halign-left valign-top">Known Issue/Limitation</th><th class="tableblock halign-left valign-top">Issue Number</th></tr></thead><tbody><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Access control</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Device tokens do not expire.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2302">omicron#2302</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Sled and physical storage availability status are not available in the inventory UI and API yet.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2035">omicron#2035</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven software update is currently unavailable. All updates need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Control plane</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Operator-driven instance migration across sleds is currently unavailable. Instance migrations need to be performed by Oxide technicians.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Public IP addresses used for VM instances are currently assigned from a single pool named “default”. End-users do not have the ability to see the names of other IP pools. The ability to set up and query per-project IP pools will be available soon in future releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2148">omicron#2148</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Network management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Routing between the rack and on-premise L2 networks is currently restricted to static routes only. The use of Border Gateway Protocol (BGP) for dynamic route configuration will be supported in upcoming releases.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/maghemite/issues/27">maghemite#27</a></p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">Telemetry</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">Hardware metrics such as temperatures, fan speeds, and power consumption are not exposed to the control plane at this time.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td></tr><tr><td class="tableblock halign-left valign-top"><p class="tableblock">User management</p></td><td class="tableblock halign-left valign-top"><p class="tableblock">User offboarding from the rack is not supported at this time. Apart from updating the identity provider to remove obsolete users from the relevant groups, operators will need to remove any IAM roles granted directly to those users in silos and projects.</p></td><td class="tableblock halign-left valign-top"><p class="tableblock"><a href="https://github.com/oxidecomputer/omicron/issues/2587">omicron#2587</a></p></td></tr></tbody></table></div></div></div></div></div><div class="sect1"><h2 data-sectnum=""><span class="anchor" id="_related_documentation" aria-hidden="true"></span><a class="link group" href="#_related_documentation">Related Documentation<svg width="16" height="16" class="text-accent-secondary ml-2 hidden group-hover:inline-block"><use href="/assets/sprite-BV33W1VU.svg#link-16"></use></svg></a></h2><div class="sectionbody"><div class="ulist"><ul class=""><li><p><a href="/guides/introduction">User Guide</a></p></li><li><p><a href="/cli/guides/introduction">CLI Documentation</a></p></li><li><p><a href="/api/guides/responses">API Documentation</a></p></li><li><p><a href="https://rfd.shared.oxide.computer">Requests for Discussion</a></p></li></ul></div></div></div></div>]]></content>
    </entry>
</feed>