VMware app volumes AppToggle – deep dive
VMware app volumes AppToggle – deep dive
Yesterday I did a test with the new customization in VMware app volumes, today I’m testing AppToggle in app volumes. AppToggle is about having multiple applications in one appstack and being able to assign some to one user and some to other. The idea behind it is that you have less appstacks, there is a limit with the number you can connect, and therefor everything stays workable and fast.
If you read the documentation you soon realize it should be called AppStack-Toggle for what we do is that you create multiple appstacks and merge them into one appstack. App volumes will read all the different applications from that merged appstack and you are able to assign them one by one. Actually you are assigning an appstack to a user, one appstack with one application installed in it. It works but I think it is far to much work to create one appstack for one application. We have customers with 300 applications or more, building, reverting and so on, well I think I decline there… call in sick for that phase of the project.
But let me show you how it works, perhaps you’re happy with it…
So let’s capture a few applications in an appstack and see where it brings us. To build a merged appstack we need to capture at least two applications, each residing in there own appstack. So let’s capture notepad++ and 7Zip as a test. First let’s see where we find appcapture.exe, it’s found its the Program Files (x86) folder and started from the command prompt (as an Administrator or course).
Well there are several option that you can give with the app capture command, if you want to do a simple setup you can use the following;
- /n gives the name of the appstack you are creating
- /o sets the path where the appstack is saved
So I started the command with the parameters and it will start up, connect a VHD and you can install the application.
Once it is all fired up you are ready for the installation setup, you now can browse to the application setup files and start the installation just like you used to do before with appvolumes or ThinApp. I browsed to the Notepadd++ installation files and installed it.
I won’t bother you with the installation of Notepad++, I’m sure you all know how to click on next. Trust me, it is installed.
After the installation is finished you go back to the command prompt and hit ENTER. You will be given a warning that if you hit ENTER once more the system will finalize and do a reboot. If you would take look at the file share you specified you notice there is only one file now, the VHD you specified.
After the reboot the process goes on and it will finish off, detach the disk, create the VMDK and close the whole proces. The appstack is now ready to be assigned to a user, we of course are looking for something else so we go on and install 7zip.
Well I won’t bother you with the whole process as you just seen what is needed and how it works, I hope you trust me that I was able to install 7zip and capture it in an appstack. one thing I can show you is that before you reboot to finalize you have only one file on the share, below is the screen shot that shows that for 7zip.
So now we have two appstacks, notepad++ and 7zip. nicely stored on a share and ready to be assigned. Next up we want them to be available in one appstack so we reduce the number of appstacks and we can see apptoggle as expected.
So first we browse to the directory of AppMerge and we fire up appmerge to see the command line options. There are two required options here that are required. You need to specify the path and the name of the output disk and you need to specify the path and names of the sources which is pretty obvious I think.
There are more options but for now these will do.
Here we go, we told AppMerge that it should save the new appstack as apptoggle.vhd on the share and that the sources are notepadd++ and 7zip. AppMerge goes to work and will create a new VHD file with both the appstacks combined.
As you can see it is merging registry entries and folders into one appstack. At the end if you look on the share you will see that there is a new VDH file as expected. It won’t create a VMDK automatically but it is easy to create that one with the following command.
Now we are ready, we need to wait or manually sync the app volumes file location and after a while we will see the new combined appstack in the management console. If we now look in the console we see two times the applications we provisioned… two times, huh?
It’s not so strange if you think about it, when you go for a merged appstack you have to think different. the appstacks that you will merge need to be stored in a different location so that they are not synced with the environment.
If we look at the details of the merged application in the merged appstack you see that the vmdk is the name of the appstack created. I can now assign this application to a user and he won’t be able to see notepad++ or at least that what they told us… as said before, the proof of the pudding is in the tasting.
I assigned the application to domain users and started up the Instant clone created Windows 7 desktop.
As you see there is no reference in the startmenu of Noteppad++ and 7zip is there. If I start 7zip the version is 15.14 which is the one that we captured. So Appmerge works and it is easy to use, this small test showed it was fast to work with and easy to get a combined appstack.
There are a few thing you need to consider, will you create an appstack per application and merge them into one? I don’t think you will unless you have only a few applications. for organizations with many applications this is not a workable solution.
If you create to-be-merged appstacks make sure you save them in something else than the appstack share, you don’t want to clutter your app volumes share and have multiple entries of the same app in the console.
what I did not test right now is updating individual applications, that’s for a next blog.. now I first have to test some chipper settings in another test environment.
hope this blog helps you understand the feature.