Cloudpaging Delivery Method
Overview
There are many different ways in which an application can be delivered to an end-user and which one you choose to use could depend on a number of factors such as the type of device they are using, who owns the device or where they are physically located, as a few examples. The Cloudpaging delivery method is available to all Windows devices and allows the on-demand delivery of any Windows application to any Windows device in a controlled, virtualized manner. This gives the administrator full control of how, when, and where the application is used and has the power to revoke access to that application at any time.
Before you start
All delivery methods share some basic, common settings that you will need to understand before continuing. Make sure you have read the Common Delivery Method Settings article before continuing.
Once you understand the common settings and how they work, you can go to the application you want to manage:
From the AppsAnywhere admin portal, in the navigation menu, go to Applications > Applications, or search for Applications or related terms
Click Edit next to the application you wish to manage
Creating the delivery method
Adding a new delivery method:
On the application management page, select the Delivery Methods tab
Under the list of current delivery methods, you will see the Add New Delivery Method section
Select Cloudpaging from the Delivery Method dropdown
Click Add Delivery Method
The form for adding a new Cloudpaging delivery method will then load up on the right-hand side
Complete the required details (described below)
Set the Operating System Compatibilities and the Restrictions for your delivery method
Click Save
When using Parallels RAS, the delivery method must be set with Windows Server OS compatibility (so it runs on the RDSH servers)
If the save was successful, you will see the form replaced with the following message and your new delivery method will be added to the bottom of the list on the left-hand side
If there were any errors with the data you entered, you will be prompted to correct these before you can continue.
Delivery Method Fields
The following table describes each field and setting available for this delivery method, its intended value, and an example for each
Field Name | Description | Intended Value | Example |
---|---|---|---|
Cloudpaging Environment | The Cloudpaging Environment from which the application will be served | The Cloudpaging Environment that the application package (.STP file) was uploaded to. Most customers only have one, as defined in Cloudpaging > Manage Cloudpaging Environments | "Central Cloudpaging Environment" |
Application Name | The application package that you wish to deploy. To assist you in locating the correct one, the dropdown shows you the application title (as defined in the Cloudpaging Admin UI) as well as the STP filename, relative to the repository | Select the application package that you wish to deploy See the section on 'Recently Added Packages' below for what to do if your package is not listed | "7-Zip [OpenSource\7-zip.stp]" |
Maximum Concurrency | The maximum number of users that can run the application at the same time | Tick the Unlimited check box if your software license is un-restricted, otherwise, enter the number of licenses you hold for this particular software title | Unlimited - For an open source app 250 - For an app you only hold 250 licenses for |
Maximum Concurrency Per User | The maximum number of sessions a single user can hold for the same application | Tick Unlimited if your Maximum Concurrency is Unlimited, otherwise you may wish to consider how many seats one user should be able to use, given that you only have a limited number available | Unlimited - For an app whose overall concurrency is Unlimited 1 or 2 - For an app with restricted concurrency |
Is Exam-Compatible | Allows you to label the delivery method as "exam-compatible", changing the API response from Shared App Lists - Request Apps If you do not see this field present alongside the others on the page, this will be because the exam feature add-on of Shared App Lists is not enabled. See Shared App Lists for more information. | When this is checked, the delivery methods in the Shared App Lists - Request Apps API response will be flagged as exam-compatible | Checked |
Prefetch All | Whether or not you want the Cloudpaging Player to download the full contents of the application package to the target device before launch | This setting will be set by default when setting offline as enabled. It is required for all offline allowed applications to work. Other applications would not usually have this set as content is delivered on-demand | Unchecked |
Advanced
Field name | Description | Intended value | Example |
---|---|---|---|
Offline | Whether or not the user is permitted to use the application without a network connection to the Cloudpaging servers Changing the value of Offline to Allowed will automatically set the Prefetch All option to Checked. Be sure to un-check this if this is not what you wanted it to be set to. | Allowed or Disabled, depending on whether or not you wish to allow users to take the application offline Unless you have a specific need for offline access, we recommend leaving this Disabled | Disabled |
Offline Duration | The duration for which an application can be taken offline before the user must reconnect and renew their license (only applies when Offline Allowed is set) | The value set (in days) will be something you consider a compromise between inconveniencing users by having them re-connect to update their license and having licenses checked out when they may not be being used | 7 days - a good default |
Deploy Version | The patch version of the application that you wish to be used | If you have updated your Cloudpaging Package and applied a patch, you will have defined a patch version when you re-packaged the application in Cloudpaging Studio. Select the patch version you wish to use | No Patch |
Valid License Duration (Days) | Indicates the period of inactivity after which a Cloudpaging license will no longer be usable | This really depends on the typical behavior of your users. If your users are likely to have an app in their Cloudpaging Player for long durations of time without launching it, you may need to extend this value to avoid unexpected problems | Recommended: 30 Days |
Auto run? | Whether or not you want the application to automatically launch when it is virtualized on the target device | For launching on-demand applications from AppsAnywhere, users would generally expect the application to open when they click Launch, so we recommend selecting this option | Checked |
Remove on expiration? | Dictates whether or not Cloudpaging will allow an expired session to be re-authorized. | If this value is checked and you expire a user's app session (see: Managing App Sessions) then their app will be completely removed from the Cloudpaging player completely. If it is not checked, then Cloudpaging Player will attempt to re-authorize the session with AppsAnywhere, meaning if they are still provisioned that app, they will be able to continue using it | Recommended: Yes |
Pre-fetch all? | Specifies whether the associated application should be cached in its entirety upon being added to the Cloudpaging player. | Enable is option if you wish the full application to be cached on the user’s machine when they launch the application. Note that the larger the application the longer this process will take, which will impact application launch time. | |
Launch agent | Specifies which client to launch the application with, one of:
| Cloudpaging Player (default) The Cloudpaging Player launches the app using the launch command specified in the Cloudpaging package. This default option is recommended for most applications, unless you have a specific use case as covered below. If the launch command is set as layer 4, this option must be used, and the other options are unsupported. AppsAnywhere Client The Appswhere Client will launch the configured Launch command setting after the Cloudpaging package has been virtualized by the Cloudpaging Player. Use this option when you want to set a custom launch command, for instance in cases where you are using a package that contains multiple applications/executables. | |
Launch command | The command to run to launch the application. This option is only used when the Launch agent setting is set to the “AppsAnywhere Client” option. | This option is useful in cases where a package contains multiple applications but you wish to expose each one individually via separate applications in AppsAnywhere (for example Adobe Creative Cloud). The launch command supports a common subset of Cloudpaging Player folder template mappings. See the table below for a list of supported mappings. | ?programfilesx64?\7-Zip\7zFM.exe |
Launch command - Supported Cloudpaging Player folder template mappings
When specifying a Launch command the following Cloudpaging Player folder template mappings are supported, and are translated to their Windows x86/x86 equivalent environment variables upon executing the command.
Folder | Template variable | Target path (x86) | Target path (x64) |
---|---|---|---|
Program Files (x86) | ?programfilesx86? | %programfiles% | %programfiles(x86)% |
Program Files (x64) | ?programfilesx64? | NOT SUPPORTED | %programfiles% |
Common Program Files | ?programfilescommon? | %commonprogramfiles% | %commonprogramfiles% |
Common Program Files (x86) | ?programfilescommonx86? | %commonprogramfiles% | %commonprogramfiles(x86)% |
Common Program Files (x64) | ?programfilescommonx64? | NOT SUPPORTED | %commonprogramfiles% |
System 32 | ?system? | %systemroot%\System32 | %systemroot%\System32 |
System 32 (x86) | ?systemx86? | %systemroot%\System32 | %systemroot%\Syswow64 |
AppData Roaming | ?roamingappdata? | %appdata% | %appdata% |
AppDate Local | ?localappdata? | %localappdata% | %localappdata% |
Program Data | ?programdata? | %programdata% | %programdata% |
User Profile | ?profile? | %userprofile% | %userprofile% |
All User Profiles | ?userprofiles? | %systemdrive%\Users | %systemdrive%\Users |
Windows Directory | ?windows? | %systemroot% | %systemroot% |
Note: Those highlighted in yellow differ between x86 and x64.
Recently Added Packages
When a new application package (.STP file) is added to the repository of your Cloudpaging Environment, it is not instantly available in the list of available applications in AppsAnywhere.
The repository is accessed via a local file share for on-premise deployments or via the upload link provided for AppsAnywhere Cloud deployments.
If you have recently added a new package and you don't see it in the list, then click the Refresh button next to the application list. This will instruct the Cloudpaging server to scan the repository for new packages, add them to the Cloudpaging Environment, and publish them to all of your Paging servers, at which point the Applications list will be refreshed and the new package will be available to add.
This also applies if you are attempting to edit a Cloudpaging delivery method after adding a new, patched version of the application's STP file into the repository. The new patch version will not be visible in the dropdown of options until you click the Refresh button next to the app list, which instructs AppsAnywhere to check with Cloudpaging Server for any package modifications.
There is a timeout on this action of two minutes. This may mean that you see an error when you have just added a particularly large package, or if the system has to add a number of packages at once. The best thing to do in this case is to wait a couple of minutes (to give Cloudpaging time to finish publishing the apps that were added) and try again. If the app is still not available in the list after a further Refresh, consider adding the app and publishing it to all your stream servers via the Cloudpaging Admin UI before returning to AppsAnywhere.
Licensing Considerations
It is important to understand the difference between an Offline Allowed and Offline Disabled license when it comes to Cloudpaged applications.
For those more familiar with Cloudpaging, when you create a delivery method that is set to Offline Allowed, AppsAnywhere creates a corresponding Offline, or Fixed, license on the Cloudpaging Server that it will use to launch the application when it is requested by the user. If the delivery method is set to Offline Disabled then it is linked to an Online, or Floating, license on the Cloudpaging Server. The big difference between these two license types is the point at which a license (or seat) is considered as "in use".
Fixed (Offline Allowed) Licenses: The license is checked out for the duration the application resides in the Cloudpaging Player
Floating (Offline Disabled) Licenses: The license is checked out for the duration the application is running
Floating licenses require a constant connection to the server in order to operate, so they only need to check out a license when the application is actually running. Fixed licenses however must check out a license for the entire duration the application is virtualized in case the user decides to go offline and use it.
These details are important when deciding how to deploy your application. For example, imagine a scenario where you only have 20 licenses for an application and set this to Offline Allowed. If 20 users launch that application in one of your labs during a class and they remain in the Cloudpaging player one the class has finished, then nobody else will be able to launch that application as all the licenses will be checked out.
Imagine another scenario where you only have 20 licenses available for an application, so you set the Maximum Concurrency value to 20 to ensure this is enforced. If you leave Maximum Concurrency Per User as Unlimited then a small number of users could quickly use up all of those available seats by launching the application on a number of different computers. This would be even more of a problem if they were Offline Allowed as in the above example. In this case, if 10 users launched the application in a lab and again at home then an 11th user wouldn't be able to get access to the application as you might expect.
Make sure you understand the settings described above and how they are affected by these license and concurrency implications before deploying your application. Incorrectly applying the settings related to concurrency restrictions and offline ability can result in users being unable to access applications.
Prioritizing
Now that your delivery method is in the list of those available, it is important that you prioritize it accordingly to determine exactly when it will be used.
To understand this process completely, take a look at the Prioritizing delivery methods article.
Common Uses
The Cloudpaging delivery method is by far the most effective way of delivering Windows applications to Windows devices as it offers all of the following benefits:
On-demand delivery - Only the bits of the application that are required are delivered to the target device
Shortest time-to-launch - Unlike downloading a full application and running through an installation, Cloudpaging can have the application running in the shortest time possible
Native performance - The application runs with all the power available through the local device
Low bandwidth requirements - Once an application is running, only small amounts of additional data is delivered as and when required
Full license control - Administrators have the ability to revoke access to the application at any time
Cloudpaging is also a great solution for delivering into VDI scenarios. Wherever you need to deliver a Windows application to a Windows device, we would recommend you use Cloudpaging
Deleting a Cloudpaging Delivery Method
It is important to understand that there are more implications to deleting a Cloudpaging delivery method than most other types of delivery methods. There are three main things to consider when contemplating deleting a Cloudpaging delivery method.
Associated App Sessions
AppsAnywhere tracks all user sessions that have been launched against each Cloudpaging delivery method. You will not be allowed to delete a Cloudpaging delivery method while there are existing app sessions as this suggests there may be users adversely affected by the removal of the delivery method.
If a Cloudpaging delivery method still has associated app sessions when you attempt to delete it, you will see a message indicating that the app sessions first need to be removed before you can continue with the deletion, as shown below.
By clicking Show Me, you will be taken to the App Session Management page with a filter applied to show you all of the app sessions that are linked to the delivery method you are trying to delete. See the Managing App Sessions page for information on how to handle these app sessions to get to the point where you can delete the delivery method.
Associated Upgrades
AppsAnywhere allows you to define upgrades between Cloudpaging delivery methods which can be used to migrate users from one Cloudpaging delivery method to another. You will not be allowed to delete a Cloudpaging delivery method if it is included as part of a defined Cloudpaging Upgrade (as either the source or the target) as doing so would result in unexpected behavior when a user tried to launch the application.
If a Cloudpaging delivery method is included as part of a defined Cloudpaging Upgrade when you attempt to delete it, you will see a message indicating that the associated upgrade first needs to be removed before you can continue with the deletion, as shown below.
By clicking Show Me, you will be taken to the Cloudpaging Upgrade Management page with a filter applied to show you all of the defined upgrades that are linked to the delivery method you are trying to delete. See the Deleting a Cloudpaging Upgrade page for information on how to delete the relevant upgrades to get to the point where you can then delete the delivery method.
Associated Licenses
Finally, it is worth noting that the deleting of a Cloudpaging delivery method will also trigger the deletion of the associated Cloudpaging License that AppsAnywhere would have created when the delivery method was created. This shouldn't have any impact as the license should only be used for the delivery method you are working with, however, it is prevalent that this action is not reversible. Unless you are 100% confident that the delivery method is no longer required and will never be required again, consider just setting the OS Compatibility to None and leaving it at the bottom of the priority list, rather than deleting it.