

# Manage Multi-Session Fleet Instances
<a name="manage-multi-session-instances"></a>

When running multi-session fleets on Amazon WorkSpaces Applications, multiple user sessions share a fleet instance. Unlike single-session fleets — where each instance serves one user and is automatically recycled after the session is terminated — multi-session instances can remain active for extended periods as long as users continue to occupy sessions on them.

This creates an important operational consideration: a multi-session instance cannot be terminated while active user sessions are running. If an instance is never fully vacated, it may never be reclaimed or rebooted, which means:
+ **Image updates may not propagate** — new image versions containing patches, software updates, or security fixes will not reach an instance until all sessions on it have ended and the instance is recycled.
+ **Fleet hygiene is harder to maintain** — without a mechanism to gracefully cycle instances, administrators must manually restart fleets or terminate all active sessions to apply updates, which can be disruptive to end users.
+ **Long-running instances may experience performance degradation** — instances that remain active for extended periods without a restart can accumulate resource contention, memory pressure, and other system-level issues over time, leading to a degraded experience for end users sharing that instance.

To address this, WorkSpaces Applications provides a method to manage the lifecycle of individual fleet instances through a process called draining (also referred to as Drain Mode).

Putting an instance in Drain Mode impacts the capacity of the fleet. The fleet capacity metrics are available at [Viewing Fleet Usage Using the Console](monitoring-console.md).

# Drain a Fleet Instance
<a name="drain-fleet-instance"></a>

Draining an instance means instructing the fleet to stop accepting new user sessions while allowing existing sessions to continue until users naturally disconnect. Once all sessions have ended, the instance is automatically reclaimed and replaced with a fresh instance running the latest image.

This approach lets you:
+ **Apply image updates without disrupting users** — existing sessions run to completion, while new sessions are routed to other instances.
+ **Manage maximum instance lifetime** — by periodically draining older instances, you ensure that no instance runs indefinitely without being refreshed.
+ **Maintain fleet hygiene proactively** — rather than waiting for a full fleet restart, you can cycle individual instances on a rolling basis.

**Note**  
Draining an instance does not disconnect or terminate active user sessions. Users already connected will not be affected.

**Important**  
Once an instance is placed in Drain Mode, this action cannot be reversed. The instance will continue to drain until all active sessions have ended and it is reclaimed.

# When to Drain an Instance
<a name="when-to-drain"></a>

Consider draining a fleet instance when:
+ A new image version has been published and you want to roll it out without a full fleet restart.
+ An instance has been running for an extended period and you want to refresh it.
+ You observe performance degradation on sessions running on a specific instance and want to recycle it without terminating active sessions.

# How to Drain an Instance
<a name="how-to-drain"></a>

1. Open the WorkSpaces Applications console at [https://console.aws.amazon.com/appstream2/home](https://console.aws.amazon.com/appstream2/home).

1. In the left pane, choose **Fleets**.

1. Select a multi-session fleet and choose **View Details** and **View Sessions**.

1. Select a session running on the instance you want to drain.

1. Choose **Drain Session Instance**.

The instance will immediately stop accepting new sessions. Existing sessions will continue uninterrupted. Once the last session ends, the instance is automatically terminated and replaced.