Release Notes
The release notes timeline highlights new features, bug fixes, and improvements implemented in Hyperstack.
Operations such as creating a virtual machine or deleting a volume now report a failure when they cannot complete. Previously an operation could intermittently stop without reporting an error, so the request appeared to have been accepted but never completed.
- Kubernetes cluster nodes: Actions that are unavailable on a cluster node's virtual machine, such as stopping, hibernating, and taking snapshots, now link to documentation explaining why the cluster manages those actions. Learn more.
- Contract details: Fixed an error that prevented some contracts from opening in the Contracts tab.
- Access control: The Deploy Virtual Machine page now checks your permissions when you open it directly by URL, and redirects you if your permissions do not include deploying a virtual machine.
- Deploy form navigation: Tooltip links on the Deploy Virtual Machine page now scroll the form to the section they reference, such as Environment or Select OS Image.
- Dark mode: Fixed display issues across the platform where interface elements were hard to read or not visible in dark mode.
Introduced the Hyperstack Docs MCP Server, a read-only Model Context Protocol server that connects MCP-compatible AI clients directly to the Hyperstack documentation. It answers your questions with citation links to the source pages, is hosted by Hyperstack, and requires no authentication. Get started with the Docs MCP Server guide or browse the tools reference.
Fixed an issue where a virtual machine could show no public IP address while one was still assigned, or show an address that was no longer assigned.
When you import an SSH key pair, Hyperstack now rejects unsupported public key types at import with a clear error, instead of failing later when you deploy a virtual machine or Kubernetes cluster. FIDO2 hardware-backed keys and legacy DSA keys are not supported. See the supported key types.
Fixes and improvements- Cluster reconciliation: Fixed an issue where a failed scale-up operation could leave a Kubernetes cluster stuck in the
RECONCILINGstate and blocked from further operations. - Master node deletion: Fixed an issue where removing the first master node from a cluster could leave the remaining nodes pointing to a dead control-plane address, which could make the cluster unreachable.
- Node group deletion: Fixed an issue where a node group could be marked as deleted while some of its nodes still existed, leaving orphaned nodes behind.
Improved the Get cluster billing history API by refining ownership validation logic for clusters, ensuring billing history requests are correctly scoped to the requesting user’s organization.
The Cloud-init Script field on the VM deployment page now checks your script as you type and flags formatting and syntax problems inline, so you can correct them before you deploy. Learn more.
Fixes and improvements- Adding credit: Fixed a rare issue where a completed payment might not be reflected in your account balance. Adding credit now completes reliably.
- API key limit: Improved API key creation so the maximum number of API keys per account is enforced consistently, even when several keys are created at the same time.
Fixed an issue where a volume could occasionally show as AVAILABLE while it was still attached to a virtual machine, so attaching it again could fail and leave it in an ERROR state.
The new Notification Settings page gives you a full view of every email Hyperstack sends, grouped into categories. You can turn the optional ones on or off individually, switch a whole category at once, or pause them all with a single master switch, in the console or with the Email Preferences API. This expands what was previously limited to low-balance credit warnings. Learn more.
- Parallel VM and cluster creation: Fixed an issue where creating several virtual machines or Kubernetes clusters at the same time could fail to deploy.
- Resource Activity pagination: Fixed an issue where the Billing - Resource Activity page could show an incorrect number of pages for AI Studio resource usage. The number of pages now matches the available records.
- Usage Report errors: Fixed an issue where opening a Usage Report for a resource with no usage data yet could display an error page instead of the report.
- Virtual machines by contract: Fixed an issue where the Retrieve virtual machines associated with a contract API could return a successful response for a contract that does not exist or is not available to your account. It now correctly returns a not-found error.
Notification emails now have a cleaner, more consistent design that reads better on desktop and mobile. There's no change to when emails are sent or the key information they contain.
Virtual machine Performance Metrics now include a new Delta view that shows Disk I/O and Network I/O as a rate of change in MB/s. The previous GB totals are now the Cumulative view and remain the default. Switch between the two with the Select view dropdown. Learn more.
Fixes and improvements- Kubernetes cluster snapshots: Snapshots can no longer be created for virtual machines that are part of a Kubernetes cluster. The Snapshot option is disabled for these virtual machines in the console, and the API returns an error.
- Kubernetes master node cost display: Master nodes no longer briefly display a running cost before reaching the active state. Master nodes are not billed.
- Billing country validation: Billing country values are now validated against ISO country standards and checked against the list of supported countries. Accounts with an invalid saved country are prompted to re-select it in Billing Details before making further payments. Call the List supported billing countries API to see the full list.
- Region-aware contract assignment: When you hold multiple contracts for the same GPU type in different regions, virtual machines are now assigned to the contract matching the deployment region (or to a multi-regional contract). Usage and billing stay attributed to the correct contract, and accounts with a single contract are unaffected.
- Volume attachment status: Attaching a volume to a virtual machine now consistently displays the correct status, instead of occasionally showing an error after a successful attachment.
- Organization name validation: Updating an organization name with an invalid length now displays the specific validation message instead of a generic error.
- Security improvements: All active sessions are now invalidated when you change or reset your password, and on logout. Verification and invitation emails have been hardened against content injection and duplicate-invite abuse.
- Performance improvements: Reduced response times on the virtual machine, image, and contract instance list endpoints.
Reduced response times on several read endpoints by optimizing database queries. This lowers latency on the List virtual machines, List images, List clusters, Get cluster details, and pricebook endpoints.
Fixed an issue where credit could occasionally fail to be added to your account after a successful payment.
- Member invitation validation: Invitations sent from the My Organization page are now rejected with a clear validation error if the email address contains invalid characters, preventing unusable invites from being delivered.
- Role assignment error handling: Improved how the console surfaces role-assignment errors, including the case where a member attempts to change the role of an organization owner.
- Notification filtering for removed members: Users who have been removed from an organization no longer receive VM creation, hibernation, or deletion notification emails for that organization.
- Billing page message cleanup: Removed the duplicated "Fill in billing details" message that appeared on the Billing overview tab for accounts without billing details.
- Supported Kubernetes versions: Kubernetes
1.36.1is now available for cluster deployment.1.32.8has reached end-of-life and is deprecated for new cluster deployments. Existing1.32.8clusters are unaffected and continue to support adding or removing nodes and node groups. Learn how to upgrade your cluster. - Payment receipt downloads: Fixed an issue that prevented payment receipts from downloading from Payment History and through the Retrieve payment receipt API.
- Kubernetes cluster resilience: Transient SSH failures during cluster creation or reconciliation no longer cause the operation to fail. The operation now retries automatically.
- Kubernetes cluster registry: Helm charts and container images used during cluster deployment and operations are now sourced from a Hyperstack-managed private registry.
- Organization member removal validation: The Remove Organization Member API now validates that the specified member is not an organization owner before processing the request.
- Password reset link security: Password reset links are now invalidated immediately after use, preventing them from being reused.
- Snapshot-aware VM deletion: Attempting to delete a virtual machine while a snapshot is in progress is now rejected.
Reduced response times on the List virtual machines and Retrieve virtual machine details endpoints, and eliminated the timeouts that could affect accounts that programmatically retrieve large numbers of VMs at frequent intervals.
Resolved an issue where virtual machine status updates could occasionally be missed during VM creation, ensuring the displayed VM status reliably reflects the actual resource state.
Kubernetes 1.35.1 is now available and the new default. 1.27.8 has reached end-of-life and is deprecated for new cluster deployments. Existing 1.27.8 clusters are unaffected and continue to support adding or removing nodes and node groups. Learn how to upgrade your cluster.
-
Region feature availability: Regions now clearly indicate which features (such as volumes and public IPs) are supported, ensuring that only available features can be used in each region. Learn more.
- Region features API support: The List Regions API now includes a
featuresobject on all region responses, containing details about the features available in the region.
- Region features API support: The List Regions API now includes a
-
Node group firewall management for clusters: Firewall rules can now be defined and managed for each node group within Kubernetes clusters. Firewall rules can be managed after cluster deployment in the console, and when configured, are applied across all worker nodes in the selected node group. Learn more.
-
Node group firewall API support: Firewall rules can now be applied to node groups using the
firewall_idsfield via the API. This capability is available in the following APIs:- Create Cluster: apply firewall rules during cluster creation.
- Create Node Group: apply firewall rules when adding node groups.
- Update Node Group: update firewall rules for existing node groups.
Across all cluster-related APIs, responses that include the
node_groupsobject now return associated firewall details for each node group.
-
-
Kubernetes cluster deployment defaults: Improved the Kubernetes cluster deployment experience by automatically selecting the latest Kubernetes version and setting Full Deployment Mode as the default option.
-
User role management improvements: Enhanced the Create and Edit User Role experience with a new resource-based filter for permissions, allowing you to quickly view and manage permissions by resource group with selection counts. The interface has also been improved to reduce horizontal scrolling and keep key information visible.
-
Organization switching behavior: When switching organizations, users are now redirected to the Dashboard, preventing potential missing resource errors when the previously viewed resource does not exist in the newly selected organization.
-
Improved resource availability error messaging: VM and Kubernetes cluster creation failures caused by temporary capacity shortages now display a clear message indicating that the requested resources are unavailable and suggesting the user try again later.
-
VM hibernation request handling improvements: Improved handling of VM lifecycle operations to ensure instance states remain consistent during actions such as hibernation, preventing duplicate operation requests while an operation is already in progress.
-
Billing resource status sync: Fixed an issue where deleted virtual machines could still appear as
ACTIVEin the Virtual Machines Usage Report on the Billing - Resource Activity page, ensuring the reported status reflects the actual resource state. -
Firewall attachment improvements: Improved reliability and usability when attaching and managing virtual machines on firewalls, including more consistent handling of VM states and firewall attachment updates.
-
Dark mode UI improvements: Enhanced readability and visual consistency of interface elements in dark mode across the platform, including improvements to modal and form text styling.
Improved the Delete Access Key API by refining ownership validation logic for Object Storage access keys, ensuring deletion requests are correctly scoped to the requesting user’s resources.
Improved the Delete Firewall API by adding validation to ensure that firewall resources can only be deleted within the user’s organization.
Updated the billing country dropdown in Billing Information to use distinct, ISO-aligned country names for accurate payment processing.
To ensure reliable handling of large ephemeral disks, hard reboot operations have been disabled for virtual machines provisioned with H100 SXM5, H200 SXM5, and RTX PRO6000 SE GPU flavors. Learn more.
-
Email confirmation for voucher redemption: Users now receive an email notification when a voucher is successfully applied, confirming the redeemed amount and updated account balance.
-
New feature request option in Help and Support: A new “Feature Request” card is now available on the Help and Support page, allowing users to easily submit product ideas via the dedicated request portal.
-
New default networking mode for Kubernetes clusters: New Kubernetes clusters now use VXLAN encapsulation (UDP port 4789) for pod networking instead of IPIP, allowing users to configure firewall rules without disrupting connectivity. Existing clusters remain configured with IPIP encapsulation.
-
Environment VM limit notification: Users are now notified during VM or cluster deployment if the selected environment has reached its maximum VM capacity, with guidance to deploy in a different environment.
The public IP address of the master node serving as both bastion and API endpoint (in Standard configuration deployments) is now included in the Kubernetes API server certificate’s Subject Alternative Names (SANs). This change resolves TLS handshake failures caused by hostname mismatches.
-
Firewall warnings for Kubernetes VMs: A warning banner is now shown in the Firewalls tab for VMs that are part of a Kubernetes cluster, cautioning users before modifying configurations that could disrupt cluster operation or reconciliation. Learn more.
-
Image–flavor compatibility support: Hyperstack now supports detecting and handling compatibility between selected images and flavors to help ensure successful VM deployments. While no images currently define restrictions, this enables future warnings for suboptimal combinations and restrictions on incompatible configurations. Learn more.
-
Reliable VM creation with bootable volumes via API: VM creation using the Create Virtual Machines API with
create_bootable_volume = truenow waits for the volume to become available, improving reliability during provisioning. -
Firewall management fixes: Resolved issues with firewall assignment and detachment workflows. The VM list in the firewall assignment modal now correctly shows only VMs in the same environment as the selected firewall, and the “Save changes” button now functions as expected when removing all firewall attachments from a VM.
-
Improved redirect after session expiry: Users are now correctly returned to the page they were on after signing in again, even if their access token was missing or had expired when the page was refreshed.
-
Contracted VMs now isolated from on-demand credit enforcement: Contracted virtual machines no longer draw down on-demand credit, are exempt from auto-hibernation due to low balance, and can be launched or restored even with zero credit. Learn more.
-
Improved billing clarity for postpaid accounts: The Billing Overview page now presents billing data exclusively for on-demand resource usage, with contract-related details available in the Resource Activity and Contracts tabs. Learn more.
-
Insufficient balance policies now apply to object storage: Access to object storage is now subject to the same account balance-related rules as other Hyperstack resources. Learn more.
-
Request dedicated GPU clusters: Added a new GPU Clusters page where users can submit requests for dedicated GPU clusters. These clusters are ideal for enterprise-scale AI/ML workloads, teams requiring guaranteed GPU availability, and compliance-sensitive environments. Learn more.
-
Kubernetes CSI driver RBAC policy: Added
policy:KubernetesCSIDriverto grant users the permissions required for proper CSI driver functionality. -
Cluster and node naming updates: New cluster names are now limited to 20 characters. Node VM names no longer include a
kube-prefix and use a shorter format based on the cluster name, node role, and count for improved clarity and consistency. -
Image size display update: The
display_sizefield in the List Images API now uses IEC units (e.g.,GiB), replacing the previous SI-based (GB) formatting for more accurate byte conversion.
Increased the maximum HAProxy connections on Kubernetes ingress load balancer nodes from 250 to 2,000. This enhancement, along with supporting configuration changes, significantly improves ingress concurrency handling and ensures better stability for Kubernetes workloads operating under high load.