|Manuals

Provisioning and Pooling Options

Provisioning and pooling settings control three related but distinct aspects of how Cloud Manager manages instances for a model: how users connect to them, how the instance pool is sized and replenished over time, and whether each user is consistently routed to the same instance.

The full set of settings lives in the model editor’s General tab (connection and pool routing) and Deploy tab (deployment trigger and instance counts). The model creation wizard captures the subset of these settings required to create a working model, in its Access and Deploy steps. Any setting not surfaced by the wizard takes its default value at creation and can be adjusted afterwards in the editor.

For a conceptual overview of how pooling strategies affect user experience and cost, see Pooling Strategies.

Connection Mode

Connection Mode determines how the Thinfinity® Workspace broker reaches an instance when brokering a user session.

Option Description
Public IP The broker connects to the VM’s public IP address directly. Suitable for cloud-hosted instances where internet-facing access is acceptable. Requires each instance to have a public IP assigned.
Private IP The broker connects via the VM’s private IP address, within the same virtual network or through VPN/private peering. Recommended for environments with strict network perimeter controls.
Agent Id Connections are routed through the Thinfinity® Workspace Virtualization Agent registered on the host. Does not require direct IP routing between the broker and the instance.
Info

The Agent Id mode is the most flexible option for on-premises hypervisors and mixed cloud/on-premises environments. For cloud providers behind NAT or without a public IP, Agent Id is also the recommended mode.

Allow Pool Mode

The Allow Pool Mode switch determines whether the model behaves as a session-based shared pool or as a 1:1 dedicated deployment.

Option Description
Off (default) Each instance is assigned to a specific user. There is no pool distribution; Pool Mode, Max Instances Count, and Max users per instance are hidden, and the Staged Power On/Off section is hidden in the Power tab. Use this for dedicated 1:1 desktop scenarios.
On The model operates as a session-based pool. The Pool Mode dropdown appears (defaulting to Breadth First) along with Max Instances Count and Max users per instance. Staged Power On/Off becomes available in the Power tab.

In the wizard’s Access step, the same setting is exposed as a single Pool Mode dropdown — the None value is equivalent to Allow Pool Mode off; Breadth First or Depth First are equivalent to Allow Pool Mode on with the corresponding Pool Mode selected.

Allow Pool Mode is locked while the model has instances

If the switch appears disabled and the model editor shows the In use banner, the model still has instances. A model counts as in use while any of its instances exists — including instances that are powered off or disabled; only deleting them clears the flag. See Editing Provisioning and Pooling Settings After Creation for the settings this affects and the available options.

Pool Mode

Pool Mode is visible only when Allow Pool Mode is enabled. It controls how incoming connections are distributed across the running instances in the pool.

Option Description
Breadth First (default) New connections are distributed evenly across all available instances. Each new session goes to the instance with the fewest active sessions. Maximizes the number of active instances and spreads load.
Depth First New connections fill each instance to capacity before moving to the next. Minimizes the number of running instances at any given time, reducing provider costs in session-based scenarios.
Info

Use Depth First with Staged Power On/Off: instances that are never filled remain off, reducing cloud costs automatically.

Model editor's General tab with Allow Pool Mode on, showing the Pool Mode dropdown (Breadth First selected), Max Instances Count, and Max users per instance

Instance Naming Prefix

The naming prefix controls how instances provisioned from this model are automatically named. Optional, but recommended for environments with multiple models.

Field Default Description
Use naming prefix Off Switch that enables or disables the prefix-based naming scheme. When off, Cloud Manager assigns a default generated name.
Prefix (empty) A text string prepended to every instance name (for example: DESK, VDI-, LAB).
Digits 1 Number of zero-padded digits appended after the prefix (for example: 3 digits → DESK001, DESK002, DESK003).
Start Index 1 The numeric value used for the first generated name. Setting a higher value lets new model versions or merged pools continue from an existing index series.

Deployment Trigger

The deployment trigger determines when Cloud Manager provisions new instances for this model. It is configured in the editor’s Deploy tab (or the wizard’s Deploy step).

Option Description
On Demand An instance is provisioned when a user connects through an Access Profile and no available unassigned running instance exists in the pool.
Scheduled Instances are provisioned in advance, at a configured creation time, before user demand arrives. Use this to ensure instances are warm and ready at the start of business hours or before a scheduled event.

When Scheduled is selected, additional fields appear to configure the schedule and counts:

  • Create At — date and time at which the scheduled provisioning happens.
  • Initial Instances, Lazy Instances, Max Instances — see Instance Count Settings below.
Info

Schedule times are interpreted in the time zone of the administrator who configures them. At runtime, Cloud Manager converts the scheduled times to each end user’s local time zone, so a window configured as 8:00 AM applies as 8:00 AM in the user’s own time zone.

Instance Count Settings

Two near-identically-named fields control instance counts at different scopes — Max Instances in the Deploy tab and Max Instances Count in the General tab. They coexist as independent limits.

Field Tab Description
Initial Instances Deploy Number of instances provisioned when the model is first activated or a scheduled deployment fires. Setting this to a value greater than zero ensures a warm pool is available before the first user connects.
Lazy Instances Deploy Number of additional instances to keep provisioned and running, but unassigned — a warm buffer available for the next connecting user. Reduces the wait time compared to provisioning on first request.
Max Instances Deploy The per-schedule cap. Bounds how many instances a single scheduled deployment can create.
Max Instances Count General (only when Allow Pool Mode is enabled) The pool-wide cap. Bounds how many running instances Cloud Manager maintains via the pool — including all automated growth from Staged Power On/Off.
Max users per instance General (only when Allow Pool Mode is enabled) The maximum number of concurrent user sessions a single instance accepts before pool routing skips it. Also the ceiling that Occupancy Threshold in Staged Power On/Off must sit below.
Warning

Note that Max Instances and Max Instances Count are different fields. Max Instances (Deploy tab) bounds a single scheduled deployment. Max Instances Count (General tab, visible only when Allow Pool Mode is enabled) bounds the running pool size including all automated power-cycling. When a scheduled deployment runs, the monitor creates at most min(Max Instances, Max Instances Count − currently active), so the lower of the two effectively wins.

Info

Note that Lazy Instances greater than zero incurs provider costs for the warm VMs even when no users are connected.

Allow Dynamic Assignment

The Allow Dynamic Assignment switch in the model editor’s General tab controls how a user is matched to an instance when they connect. This setting is editor-only — the wizard does not capture it; new models take the default and can be adjusted afterwards.

Option Description
On The broker matches the user to any free instance at session time. The instance assignment is temporary — on the next login, a different instance may be picked. This is the default for shared session-based pools and the more resource-efficient option.
Off No automated matching occurs. A user is routed to a specific instance only if an administrator has explicitly bound them to it via the Manage Users dialog. The user always connects to that instance.

The switch is automatically disabled when Allow Pool Mode is enabled — the pool’s distribution logic (Breadth First or Depth First) takes over routing and is not compatible with strict per-user pinning.

For the per-instance pinning procedure, see Manually Assign an Instance to a User.

Editing Provisioning and Pooling Settings After Creation

To open the model editor, click the edit icon on the model in the left tree.

Settings Locked While the Model Is in Use

While the model has instances, the editor shows the In use banner and the following settings become read-only: the Model Name, Use naming prefix (with Prefix, Digits, and Start Index), Allow Pool Mode, and Allow Dynamic Assignment. These settings define the identity and routing strategy of the pool, so they cannot change while instances built under the current configuration exist.

A model counts as in use while any of its instances exists, whatever its power state — running, stopped, and disabled instances all count. Powering instances off is not enough to unlock the settings.

To change a locked setting, either:

  • Remove all instances from the model — delete them from the instances view (or let the Destroy settings remove them). Once the last instance is gone, the settings unlock.
  • Create a new model or model version with the desired configuration and migrate users to it, leaving the existing deployment untouched.

How Changes Take Effect

The new settings take effect immediately, with behavior depending on which fields changed:

  • Connection Mode, Max users per instance, and Naming Prefix — apply to instances created from this point forward. Already-deployed instances keep their original connection routing and names.
  • Pool Mode and Allow Dynamic Assignment — apply to the next user who connects. Existing sessions are not interrupted, but the new routing behavior governs every new connection.
  • Deployment Trigger changes — apply at the next scheduled window (when switching to Scheduled) or at the next user request (when switching to On Demand). Switching from Scheduled to On Demand does not destroy instances already created by the prior schedule — they remain in the pool until removed by the Destroy settings, manual deletion, or model deletion.
  • Initial / Lazy / Max Instances — apply to the next provisioning evaluation. Existing instances that exceed the new Max Instances ceiling are not removed automatically; lower the count and detach the excess manually if needed.

What’s Next

See Also