Wrote this article almost 6 months ago...finally got around to finishing it--Let me know what you think!
"Project AppBlast will provide the universal delivery of any application, including Windows-based applications, to any off-the-shelf browser or device supporting HTML 5, enabling instant remote access to non-HTML based applications."
We discussed this at work the other day and we were excited at the possibilities with AppBlast, but since it's not here now we'll have to wait for a released product. One of my co-workers Chad Wintzer said well why wait? We dug around and came up with a working solution--and a damn good one after a few evenings grinding away at this. Having a fair amount of RDS experience already this is what we came up with:
The backend infrastructure is provided by Microsoft's Remote Desktop Services: RemoteApp. This feature was introduced in Windows Server 2008 and was improved upon even more in the R2 release. What RemoteApp allows you to do is run applications on backend RDS (TS) servers, and establish an RDP session from a user to just that app. The user is presented with a window over their local desktop and functions just about as if it was actually installed and running off the local desktop. Users can run multiple applications in parallel and so long as the app behaves well in a RDS environment you can host 1 installation with multiple users. The servers that run RemoteApps are called RD Session Hosts, to scale you can simply throw a bunch of RD Session Hosts together and strap a load balancer on top, however you will want to use RD Connection Broker(s) in place of a traditional load balancer to keep track of user sessions. The Connection Broker(s) manage session information such as RD Session Host server, session state, session ID, and the user associated with the aforementioned bits. For the security junkies it's worth noting that RemoteApp is AD integrated so you can restrict access to various apps via Security Groups. This was something added in R2 I believe as many folks were complaining about this when RemoteApp first came out.
If you don't want to go that route you can look at Citrix's XenApp offering, but we found RDS: RemoteApp performed exactly as we needed it to.
I can't believe I am actually writing this...with all the major changes Win8/Win8 Server are bringing one would never think they would change how you shutdown or restart, right? Well we are wrong...
You can't just click Start->Shutdown anymore, old schoolers might remember this one:
Focus needs to be on the desktop (minimize all other windows, or click on the wallpaper so focus is on the desktop) then hit Alt+F4 to see a familiar window:
This is the "Charms" shortcut key. Charms is a Microsoft term for these icons that appear when you hit Windows Key+C:
Then Click Settings:
Now you can click Power & select Restart or Shutdown.
So you find yourself in a position where you need to update one (or more) of your hosts but don't have vCenter Update Manager around to assist. In my case trying to get Windows Server 8 CP working....It's not terribly difficult, you simply:
- Download the patch - you can download patches direct from VMware @ the Patch Portal
- Open a datastore with enough freespace to store the patch via your vSphere Client (Right-Click->Browse on a datastore)
- Upload the patch you downloaded (should be a .zip file)
- SSH into the host
- Execute the command "esxcli software vib install /vmfs/volumes/<DATASTORE-NAME>/<PATCH-NAME>.zip" - replacing the <DATASTORE-NAME> and <PATCH-NAME> appropriately.
This command can take some time to execute for large patches.
When it's done you should get some text like below, remember to pay attention to this text so you know if you need to reboot your host or not.
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_esx-base_5.0.0-0.7.515841, VMware_bootbank_mi sc-drivers_5.0.0-0.7.515841, VMware_bootbank_net-be2net_188.8.131.52-1vmw.500.0.7.51 5841, VMware_bootbank_net-e1000_184.108.40.206-2vmw.500.0.7.515841, VMware_bootbank_net -e1000e_1.1.2-3vmw.500.0.7.515841, VMware_locker_tools-light_5.0.0-0.7.515841
VIBs Removed: VMware_bootbank_esx-base_5.0.0-0.0.469512, VMware_bootbank_misc -drivers_5.0.0-0.0.469512, VMware_bootbank_net-be2net_220.127.116.11-1vmw.500.0.0.4695 12, VMware_bootbank_net-e1000_18.104.22.168-2vmw.500.0.0.469512, VMware_bootbank_net-e 1000e_1.1.2-3vmw.500.0.0.469512, VMware_locker_tools-light_5.0.0-0.0.469512
VIBs Skipped: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512, VMware _bootbank_ata-pata-atiixp_0.4.6-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-cm d64x_0.2.5-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-hpt3x2n_0.3.4-3vmw.500. 0.0.469512, VMware_bootbank_ata-pata-pdc2027x_1.0-3vmw.500.0.0.469512, VMware_bo otbank_ata-pata-serverworks_0.4.3-3vmw.500.0.0.469512, VMware_bootbank_ata-pata- sil680_0.4.8-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-via_0.3.3-2vmw.500.0. 0.469512, VMware_bootbank_block-cciss_3.6.14-10vmw.500.0.0.469512, VMware_bootba nk_ehci-ehci-hcd_1.0-3vmw.500.0.0.469512, VMware_bootbank_esx-tboot_5.0.0-0.0.46 9512, VMware_bootbank_ima-qla4xxx_2.01.07-1vmw.500.0.0.469512, VMware_bootbank_i pmi-ipmi-devintf_39.1-4vmw.500.0.0.469512, VMware_bootbank_ipmi-ipmi-msghandler_ 39.1-4vmw.500.0.0.469512, VMware_bootbank_ipmi-ipmi-si-drv_39.1-4vmw.500.0.0.469 512, VMware_bootbank_misc-cnic-register_1.1-1vmw.500.0.0.469512, VMware_bootbank _net-bnx2_2.0.15g.v50.11-5vmw.500.0.0.469512, VMware_bootbank_net-bnx2x_1.61.15. v50.1-1vmw.500.0.0.469512, VMware_bootbank_net-cnic_1.10.2j.v50.7-2vmw.500.0.0.4 69512, VMware_bootbank_net-enic_22.214.171.124a-1vmw.500.0.0.469512, VMware_bootbank_n et-forcedeth_0.61-2vmw.500.0.0.469512, VMware_bootbank_net-igb_126.96.36.199-3vmw.500 .0.0.469512, VMware_bootbank_net-ixgbe_188.8.131.52.2-10vmw.500.0.0.469512, VMware_b ootbank_net-nx-nic_4.0.557-3vmw.500.0.0.469512, VMware_bootbank_net-r8168_8.013. 00-3vmw.500.0.0.469512, VMware_bootbank_net-r8169_6.011.00-2vmw.500.0.0.469512, VMware_bootbank_net-s2io_184.108.40.20627-3vmw.500.0.0.469512, VMware_bootbank_net-sk y2_1.20-2vmw.500.0.0.469512, VMware_bootbank_net-tg3_3.110h.v50.4-4vmw.500.0.0.4 69512, VMware_bootbank_ohci-usb-ohci_1.0-3vmw.500.0.0.469512, VMware_bootbank_sa ta-ahci_3.0-6vmw.500.0.0.469512, VMware_bootbank_sata-ata-piix_2.12-4vmw.500.0.0 .469512, VMware_bootbank_sata-sata-nv_3.5-3vmw.500.0.0.469512, VMware_bootbank_s ata-sata-promise_2.12-3vmw.500.0.0.469512, VMware_bootbank_sata-sata-sil_2.3-3vm w.500.0.0.469512, VMware_bootbank_sata-sata-svw_2.3-3vmw.500.0.0.469512, VMware_ bootbank_scsi-aacraid_220.127.116.11-9vmw.500.0.0.469512, VMware_bootbank_scsi-adp94xx_ 18.104.22.168-6vmw.500.0.0.469512, VMware_bootbank_scsi-aic79xx_3.1-5vmw.500.0.0.4695 12, VMware_bootbank_scsi-bnx2i_1.9.1d.v50.1-3vmw.500.0.0.469512, VMware_bootbank _scsi-fnic_22.214.171.124-1vmw.500.0.0.469512, VMware_bootbank_scsi-hpsa_5.0.0-17vmw.50 0.0.0.469512, VMware_bootbank_scsi-ips_7.12.05-4vmw.500.0.0.469512, VMware_bootb ank_scsi-lpfc820_126.96.36.199-18vmw.500.0.0.469512, VMware_bootbank_scsi-megaraid-mbo x_188.8.131.52-6vmw.500.0.0.469512, VMware_bootbank_scsi-megaraid-sas_4.32-1vmw.500. 0.0.469512, VMware_bootbank_scsi-megaraid2_2.00.4-9vmw.500.0.0.469512, VMware_bo otbank_scsi-mpt2sas_06.00.00.00-5vmw.500.0.0.469512, VMware_bootbank_scsi-mptsas _4.23.01.00-5vmw.500.0.0.469512, VMware_bootbank_scsi-mptspi_4.23.01.00-5vmw.500 .0.0.469512, VMware_bootbank_scsi-qla2xxx_901.k1.1-14vmw.500.0.0.469512, VMware_ bootbank_scsi-qla4xxx_5.01.03.2-3vmw.500.0.0.469512, VMware_bootbank_uhci-usb-uh ci_1.0-3vmw.500.0.0.469512