Suspend and Resume
Frame Suspend and Resume allows a Frame persistent desktop user to suspend their session and resume it at a later time. This feature enables users to maintain the state of their session between active periods. The session state is saved to disk and retrieved upon resumption. This functionality is analogous to putting a physical laptop to sleep and subsequently waking it to continue working from the same point.
In this document, we will use the term "Suspend" even though AWS and Azure use the term "Hibernate". GCP uses the term "Suspend".
Suspending a user session is a big improvement in user experience. Not only does this feature allow for continuity between sessions, but the feature saves the organization money as suspended compute instances are not billed by any public cloud providers.
While public cloud providers do not charge for suspended compute instances, storage providers continue to bill for the boot disk.
Frame supports Suspend and Resume in AWS, Azure, and GCP infrastructures.
Requirements
In order to use the Suspend/Resume feature, the following requirements must be satisfied:
- Persistent Desktop Frame Account leveraging AWS, Azure, or GCP infrastructure.
- CPU-only instances. GPU-backed instances are currently not supported by any of the infrastructure providers.
- Windows operating system only.
- Sufficient free disk space. This ensures the entire contents of RAM will be saved to disk when suspending the session (free disk space must be equal to or greater than the RAM of the instance).
- End users must initiate Suspend/Resume operations through Frame Terminal controls. Using the native Windows OS sleep or hiberate functions will result in the session state not being saved correctly and potential data loss.
- Administrators must initiate Suspend/Resume operations through the Frame Account Dashboard. Suspend and resume capabilities must be managed within Frame Console.
The state of your persistent desktop VMs must be managed exclusively through Frame interfaces, rather than through the operating system or cloud provider console. Utilizing built-in OS functions or cloud management features can cause Suspend/Resume failures. All interactions with the OS and cloud provider are managed through Frame.
Cloud Provider-specific Requirements
In addition to the Frame requirements mentioned above, each public cloud provider has its own requirements. You are expected to review and understand your cloud provider’s specific requirements.
- AWS Hibernate
- Azure Hibernate
- GCP Suspend
AWS offers Hibernation for most instance types, except for EC2 instance types that have more than 16 GB of RAM or any EC2 instance type that is GPU-enabled. Please review the following:
Azure offers Hibernation for limited instance types. Please review the following:
Google Cloud Platform offers Suspend functionality across most instance types. One important limitation of GCP is that if a machine is suspended for more than 60 days it will be terminated.
Functionality
Suspend/Resume operations can be initiated through two methods:
Timers:
- User Inactivity Timeout: This timer disconnects a user's session when the specified inactivity period is reached. Following this, the Idle Timeout countdown begins. Once the system reaches the Idle Timeout value, the session will automatically suspend.
User and Administrator Actions:
- User Actions: Users can suspend their session by utilizing the Frame controls located on the Frame status bar. To resume a session, users simply go to the Launchpad and select “Resume.”
- Administrator Actions: Administrators can manage the Suspend/Resume state from the “VMs” page within the Frame Account Dashboard.
User Experience
For users, suspending and resuming a workload VM is a simple process.
To manually suspend a session, the user uses the “Gear” icon in the lower left-hand corner of the workload VM screen and clicks “Suspend session”.
To Resume a suspended session, the user clicks Resume in the lower right-hand corner of their Launchpad.
Administration
The administrator can control the timeouts that will suspend a persistent desktop VM and they can also manually suspend or resume a session on a persistent desktop VM.
Time-based Suspend
Within the Frame Account Dashboard, navigate to Settings > Session Settings. Under Time Limits, you can adjust the two values:
User Inactivity Timeout: Upon reaching this timeout value, the session will become disconnected.
Idle Timeout: Upon reaching this timeout value after a session is disconnected, the session will automatically be suspended.
Manual Suspend and Resume
Within the Frame Account Dashboard, navigate to VMs in the left-hand navigation column.
To suspend a session on a production workload VM with a status of In session
, click the kebab menu to the right of the Status
column and click Suspend. If the user is in session when the administrator suspends their desktop, the user will be disconnected from their session and returned to their Launchpad. The Launchpad will indicate that the session is being suspended.
To resume a suspended session, click the ellipsis to the right of the Status
column and click Resume. If the user is at their Launchpad, they will see the message “Your session is resuming” (instead of the “Resume” button) after the administrator has clicked Resume.