Please note : App-V Scheduler 2.0 has been released, read more about it here
Introduction
I think it didn’t escape you but Citrix is leaving the application virtualization space, they announced that they will not further enhance and support their streaming technology on newer platforms (that is XenDesktop 7 and Windows 2012\8). A lot of customers are starting to look at App-V 5 as a replacement, but also new and customers currently on App-V 4.X are looking to benefit from the latest improvements in the App-V product. App-V 5 can be deployed and managed in the following 3 ways:
- App-V 5 Full infrastructure (Management, Publishing and optional a report server)
- System Center Configuration Manager (SSCM) integration
- Standalone
The first 2 have their place and advantages, no doubt about that, but they also come with their prerequisites (like full SQL etc) and need to fit in the customers environment. Most customers I work with are using UEM (User Environment Management) tools and most of them from RES Software (Workspace manager). They want a simple method to deploy and upgrade their virtual applications and manage them with RES Workspace manager. They don’t want an extra management layer, that overlaps in functionality and adds complexity, that’s why I often used the streaming only method in App-V 4.x and with Citrix application streaming (while it had its limitations) it was even more simple : just place the profiled application on a share and import it in RES Workspace Manager, that’s it.
With this in mind I created App-V 5 Scheduler, which extends the standalone deployment method by allowing you to automatically deploy packages and connection groups on machine level with a configurable time interval. But it can do more, I will dig deeper in App-V 5 Scheduler in a sec, but first I want to note you on another great tool that’s build around the App-V 5 standalone method by well-known App-V guru Tim Mangan. This tool is called App-V Self Service and provides users with a self-service portal where they can select and deploy packages (without needing admin rights), App-V Self Service can also deploy packages automatically at user login based on AD group membership.
If you are looking for a solution to deploy packages to users and don’t want to implement the App-V 5 full infrastructure, I would highly recommend looking at this tool.
App-V 5 Scheduler takes a slightly different approach, where App-V Self Service uses deployment based on users and is triggered when a user logs in, App-V 5 Scheduler uses machine level deployment and therefore fits best in environments that uses UEM products like RES Workspace Manager to control and manage the applications and the users workspace.
App-V 5 Scheduler can also remove packages on machine start-up to keep the package installation root clean and in case you use Citrix Provisioning Server (PVS) or Machine Creation Services (MCS) it can detect when the image is in private mode so it will not deploy packages filling up your image accidently.
To keep it simple I made App-V 5 Scheduler scenario driven, it’s only necessary to select the scenario that fits your environment best. I will explain the scenarios later on but first a quick look at the base of App-V 5 Scheduler, App-V 5 Scheduler consists of 2 components :
The App-V 5 Scheduler GUI
The GUI will allow you to see which packages and connection groups are currently deployed to the machine, it will also allow you as an admin to do some troubleshooting steps like opening CMD or Regedit inside the virtual application context (or bubble or sandbox, whatever you like to call it ;). The GUI also displays basic information about the App-V client configuration and will allow you to configure the App-V 5 Scheduler Service. Below is a screenshot of how the App-V 5 Scheduler GUI looks like:
The service will deploy new packages and connection groups which are added after the last system start-up based on a configurable time interval. Depending on the selected scenario the service can detect when the image is in read\write mode to prevent the deployment of packages. Below is a screenshot of the App-V 5 Scheduler Service configuration dialog :
Scenario 1 : Non-Persistent image with shared content store mode enabled
Select this scenario if you use Citrix Provisioning Services (PVS) or Citrix Machine creation Service (MCS) for single image management and you want to leverage the Shared Content Store (SCS) functionality of App-V 5 to lower the storage needed for package content. This scenario will configure the service to do the following :
- Remove packages and connection groups at machine start-up to keep the package root clean
- Deploy packages and connection groups after machine start-up
- Deploy only new packages and connection groups based on the configured time interval
- Publish packages and connection groups globally on the machine
- Don’t remove or deploy packages when the image is in private mode
In this scenario you can redirect the App-V package root location outside the image (write cache disk for example), but since you are leveraging the App-V Shared Content store mode, a minimal amount of storage will be used in the package root so you could decide to keep it in the primary location.
Scenario 2 : Non-Persistent image with shared content store mode disabled
Select this scenario if you use Citrix Provisioning Services (PVS) or Citrix Machine creation Service (MCS) for single image management and you want to deploy the packages in its full size to the App-V package root location. This scenario will configure the service to do the following :
- Remove packages and connection groups at machine start-up to keep the package root clean
- Deploy packages and connection groups after machine start-up
- Deploy only new packages and connection groups based on the configured time interval
- Publish the packages and connection groups globally on the machine
- Pre-Cache (mount) the package inside the package root location
- Don’t remove or deploy packages when the image is in private mode
In this scenario you can also redirect the App-V package root location to another location (outside the image for example), this is advisable if your write cache location is limited and you want to keep it small.
Scenario3 : Persistent image mode
This scenario is very similar to scenario 2 only it will not check if the image is in private mode or not, select this scenario if you have persistent machines where you want to deploy App-V 5 packages to.
This scenario will configure the service to do the following :
- Remove packages and connection groups at machine start-up to keep the package root clean
- Deploy packages and connection groups after machine start-up
- Deploy only new packages and connection groups based on the configured timer interval
- Publish the packages and connection groups globally on the machine
- Pre-Cache (mount) the package inside the package root location
Which scenario is best depends on your environment, key factors are the size of your packages and the amount of storage you have available. Scenario 2 and 3 will give you the best overall performance because the applications are fully mounted to the machines lowering bandwidth consumption and eliminating network bottlenecks. That’s why I would recommend this scenarios when you use a shared platform (RDS\XenApp). Besides better performance it will also make the virtual application higher available since they don’t rely on the content share after being deployed. Since scenario 2 and 3 mounts the package there is no load time at all when users start the application.
Below you will find a high level UML diagram of the App-V 5 Scheduler Service :
Deploying connection groups with App-V 5 Scheduler
Connection groups are basically XML files filled with information of which packages that can connect to each other, Tim Mangan created a very useful tool to create connection groups called App-V DefconGroups. With this tool you can easily select packages that you want to connected to each other. You can save the output file (with the AppG extension) somewhere on the package source location and App-V 5 Scheduler will deploy it to the machine (globally) for you.
Logging
App-V 5 Scheduler Service logs its actions in the event viewer and will give you information about the packages that are removed or deployed and the status of the service. For troubleshooting purposes it’s the place to look at because all other operational events are logged there as well. Below is an example message in the event viewer when private mode is detected :
Conclusion
App-V 5 Scheduler, in combination with an User Environment Management tool like RES Workspace Manager, is a powerful and simple way to deliver packages to your machines without the need for a full App-V 5 infrastructure model. Just place the package on a share and App-V 5 Scheduler will do the rest for you. If you use the App-V 5 integration in RES Workspace Manager and you have imported the application once, it will look up the newest version of the package automatically. You only have to place the updated package on the share and after App-V 5 Scheduler deployed the new version to the machine it’s immediately available to your users, they only need to close and reopen the application to get the latest version. App-V 5 Scheduler GUI will give administrators an overview of the current deployed packages on the machine and allow them to open CMD or Regedit to perform basic troubleshooting steps inside a virtual application.
What’s coming
To complement App-V 5 Scheduler, I will also release a tool called App-V 5 Central View. This tool allows you to select an Active Directory group (with machine accounts) and it will give you an overview of the currently deployed applications on that machines. In combination with some basic management tasks, this tool will give a central point of view of which applications are deployed through your environment. App-V 5 Central View is in depended of App-V 5 Scheduler and can also be used without it, but will form a great combination together.
Availability
App-V Scheduler 2.0 has been released and has a lot more features and enhancements, click here to read more.
Hi, very cool that you are working on this one.
When are you releasing the RTM version :)?
Keep up the good work.
Hi Remy,
Thanks,the release is scheduled for mid november.
Keep an eye on this post.
Bram
Thanks for the fast reply!
Great tool! Would be nice to be able to install it unattended. Tried some parameters but it keeps asking me for the service account parameters… Any way of automating the installation without any pop-ups?
Hi Hugo,
Thanks! I will look into unattended installation options.
Bram
Hi Bram,
Have you already looked into the unattended installation options?
Walter
Hi Walter,
Yes, it will be available in the upcoming release of App-V 5 Scheduler (2.0) which also brings a lot of other new features so stay tuned!
Bram
Hi Bram,
I was testing around with your tool and it looks great. Now I was wondering if there will be an option in the feature for getting the packages from a publishing server instead of the share, so at the system start up there will be a sync with the publishing server? This would a very valuable addition.
Thanks for the feedback.
I will think about that scenario, but the main reason I created App-V 5 Scheduler is to avoid using the management and publishing server to reduce complexity and avoid bottlenecks.
The main goal of App-V 5 Scheduler is to deploy and manage App-V 5 packages in an environment where single image management is used in combination with User Environment Management tools like RES Workspace Manager.
Bram
I understand, in our situation we need to manage the shortcuts in the SBC environment (XenDesktop 7, PVS) by using the App-V management server. So we need the packages at startup from the App-V server, this because we have a difference between packages on Windows 7 and SBC.
Hi Walter, I think there are some other ways to solve this, I will send you an e-mail to discuss this topic further.
Bram
Hi Bram,
Do you already have an indication when the 2.0 will be released? The unattended install is very wishful for the use with SCCM.
Walter
I cannot give an exact date at the moment, but it’s planned for end februari \ begin march.
Bram
Hi Bram.
I am interested by your tool. I just begin a projet of XA 6.5 with PVS and App-V 5.0. In my case, SCCM exists in the customer environment but your tool seems to do the job as well.
Is it possible to manage FTA by user with your tool ? I will use VUEM from norskale for the shortcuts but VUEM has no App-V plugin actually and create all FTA manually will be an important administrative effort.
Regards
Hi Julien,
App-V Scheduler uses global publishing, which means the FTA’s are available on the machine no need to manually add them.
You can use VUEM to manage the shortcuts and access to the applications.
App-V scheduler 2.0 will soon be released (this month) with a lot of new features and enhancements!
Keep an eye on this blog or on the twitter stream.
Bram