This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

WaterGems and MS App-V(irtualization) - Compatibility?

I'm starting to get to the bottom of how our new ICT team ha've been trying to deploy WaterGems onto our PCs.

What I think possibly is a root cause of our issues and malfunctioning/crashing instances is they opted to deploy WaterGems into the production environment using Application Virtualization technology, using Microsoft App-V.   This is fairly new tech for me, but it seems to be an advanced form of imaging, you maintain one "Master" installation on an ICT PC as the "template", and then use this to automate deployments and updates using this one template.

http://en.wikipedia.org/wiki/Application_virtualization

So our Win 7 PCs actually don't HAVE WaterGems installed at all on the Operating System.  Instead App-V is used on each PC to virtualise the application when the user runs it using a local MS App-V cache directory (it seems awfully a lot like Valve's Steam system).   The trouble is I don't think that Bentley WaterGems/WaterCAD would be compatible with Microsoft App-V?  Can WaterGems/WaterCAD be virtualized on PCs this way or is our ICT team just asking for a whole lot of trouble?

1.  Firstly, it has interoperabilities with other applications.   This would probably explain why the WaterGems Integration scripts are not detecting ESRI ArcGIS on our PCs

2.  Secondly, the software is meant to be tailored individually to the PC and to the user's preferences.  There is not really a "one size fits all" installation/configuration.

3.  Thirdly, I'm not sure this would necessarily play happily with localised settings in the Windows Registry or local application setting or temp data files?

4.  Lastly, this doesn't really suit the Bentley TSG and rapid hotfix deployment model.   The user and TSG are directly talking to each other in most cases, and you need a "real" application rather than a virtual one to do diagnostics on, and test ST hotfixes/patches to test directly in the production environment resolution of the issue.

Thoughts?

Parents
  • I took a quick look at some articles on Microsoft App-V and agree with Jesse that WaterGEMS will not function that way mostly due to our integration with other platforms, but depending on the mode of virtualization I would also be concerned about performance implications associated with computing large models such as yours Ben.

    Also you are right, I can't see this working well with our hot-fix model unless your IT people are responsive and keep the server side image up to date and let's face it, in my opinion they are probably only using a system like Microsoft App-V so they can all go home at 5pm so my bet is they probably will have some issue with patching and/or the diagnostic process that we use.



  • Wayne et. al. -  Thanks for this discussion about virtualization and what the product can and can't do.  Even as a small business owner, the struggle exists on how and who has access and the limitations with business infrastructure.  Knowing information like this helps base my decisions moving forward.  I myself am having this thought of going to virtual terminals because as powerful products like this evolve, more base information is encouraged and welcomed to help generate a solid model and/or presentation which is starting to eclipse the capabilities of most business/CAD level desktops.  In some cases, quad core processors just can't do it or can but run the risk of melting (hence why I am looking at virtualization).  So the question becomes do I spend 2x as much on business infrastructure so that I can utilize the software as it evolves or do I simply stop subscribing and either sell out or stop subscription so that I don't sacrifice performance now and loss of production because my equipment can't keep up with the software?   This isn't a Bentley issue but all forms of powerful business class software like Exchange, Intuit, Thermo Scientific, etc.  

Reply
  • Wayne et. al. -  Thanks for this discussion about virtualization and what the product can and can't do.  Even as a small business owner, the struggle exists on how and who has access and the limitations with business infrastructure.  Knowing information like this helps base my decisions moving forward.  I myself am having this thought of going to virtual terminals because as powerful products like this evolve, more base information is encouraged and welcomed to help generate a solid model and/or presentation which is starting to eclipse the capabilities of most business/CAD level desktops.  In some cases, quad core processors just can't do it or can but run the risk of melting (hence why I am looking at virtualization).  So the question becomes do I spend 2x as much on business infrastructure so that I can utilize the software as it evolves or do I simply stop subscribing and either sell out or stop subscription so that I don't sacrifice performance now and loss of production because my equipment can't keep up with the software?   This isn't a Bentley issue but all forms of powerful business class software like Exchange, Intuit, Thermo Scientific, etc.  

Children
  • Hi nkg2,

    You make some interesting points and I can understand where you are coming from!

    Firstly, let me preface this reply with the fact that I am no expert in virtualization and am not qualified to make any recommendations in this subject matter! I do, however, have some general experience with virtualization and am able to offer some thoughts about it in general and also how it relates to WaterGEMS (something I do know a little bit about!)

    So moving on, I guess we should clarify what we mean by virtualization. In this instance the MS App-V appears to me to be a system whereby an application is essentially hosted from a server and the services it requires to operate on an end user's system are also virtualized (e.g., registry access etc). This appears, from what I have read, to have the effect of isolating the application from other parts of the client system and in effect running the application in a sand-box. This I suspect would be quite fine for WaterGEMS stand-alone, but the problem comes in where platforms are concerned (WaterGEMS can no longer interact with other installed programs due to the way it would have been isolated from the rest of the system.) I made my earlier comment about performance based on the "streaming" aspect of MS App-V, but it seems that there are several different configurations that go along with it, so as long as WaterGEMS is executed locally and can get access to the full CPU/disk access of the end user system it would probably be fine.

    In terms of hardware requirements, WaterGEMS (stand alone) is still relatively easy going IMHO, and can still be run on relatively cheap desktop systems. I don't envisage that the hardware requirements for the software are going to jump significantly in any forthcoming release, but I cannot obviously guarantee this in the long term without a crystal ball by my side! What I do know is that in the latest WaterGEMS release (SS4) we did do work to improve overall application performance on existing hardware by changing our database backend to a different technology. Now model sizes are smaller and the majority of performance scenarios execute faster on the same hardware. In the next release we will be spending time on improving performance in other areas. So for the short term at least I believe the opposite is true for WaterGEMS in that it should be able to be run on lesser hardware now, compared to the previous release. :)

    I also want to throw out there that there are other virtualization solutions available aside from MS APP-V. Again I guess it all depends on what you are trying to achieve by virtualizing, but solutions that virtualize the entire operating system (of which there are many out there) as opposed to trying to virtualize a single application (new to me personally), don't have the same limitations as the application specific virtualization appears to have. To that end you could virtualize a complete desktop environment with interacting programs, run it on dedicated hardware and have lesser powered client systems connect to the virtualized environment. As far as the software installations go they all work because they get installed on to and operate on what appears to be a regular system and so this method of virtualization offers a lot less technological resistance IMHO.

    In terms of performance of full system virtualization I think it's pretty good. In fact I have a lot of experience using virtualized systems of this nature. I have been using virtualization exclusively for the last couple of years to do everything that I do, including writing this reply! I run WaterGEMS on a virtual system with only 2GB of RAM (although I could allocate more if I needed to) and it runs well even with large models. I do all my development on some other virtualized systems, and I do e-mail and admin tasks on another. I currently have over 40 different virtualized systems that I use for one purpose or another.

    Finally, I want to acknowledge that you did mention that this is not just something specific to WaterGEMS or even Bentley and as far as that goes I am sure there are some applications out there that are just going to continue to get hungrier and hungrier as time goes on. I guess at that point it becomes a numbers game in that you still probably have the same number of end users to service, so it becomes the cost of hardware for those end users (and the necessity to upgrade) or the cost of server systems that can also keep up with the combined workload (and the associated network infrastructure). Again I know next to nothing about MS App-V but it's my understanding that lots of large businesses are running servers with full virtualized systems (or virtualized servers) on them and if they need to expand in future they merely buy a new server and move one or more virtualized systems/servers over to the new real physical server and keep on trucking. I'm not sure how that model works with the application specific virtualization, but I guess it would be a similar process or sharing the load amongst multiple servers.



  • Wayne -

    Wow!  That was a response!  Thank you very much for that.  We are looking at Hyper-V as it comes with our version of Windows Server and initially we were planning on it three years ago but the cost of redundant servers and data storage on top of tape backup drives were looking at $35K on up for our small company and that did not include the upgrades on the individual desktops or licenses for all the software packages and OSs.

    SQLite does seem to be promising especially for high data processing (like LiDAR and NEDs) but even then so if you are looking at that on a wide area (county or multicounty extent) high end Dell Computers with quad cores are still being maxed out on the processing (in fact, almost got to the melting point on a Xeon Quad Core with 4 NED and aerial images draped).

    I guess my point in all of this is at what point does sophisticated software like this ultimately eclipse the ability of high end desktops and my gut it telling me, especially with the focus on BIM, sooner than later unfortunately.  I am pleased with the direction WaterGEMS is heading.

    Thanks again for the detailed reply!  

  • Hi,

    No problem for the response. I am interested in this kind of stuff.

    Hyper-V from what I understand is aimed at virtualizing entire operating systems (machines) and is analogous to something like VMware vSphere so I don't think there would be any compatibility issue with that kind of virtualization as it is definitely quite robust and mature. In fact I toyed with the idea of using that myself (vSphere) on my current home system, but then I realized I would need another computer (or computers) to remotely connect to the virtual machines and I would not be able to run applications locally (the nature of the hypervisor), so I opted for VMware workstation instead (that runs on a host operating system), meaning I can still use my system in an un-virtualized mode if I want to.

    The talk of almost melting quad cores and the like makes me wonder what kind of cooling systems are in use! I am sure this is not a trivial thing, but it's not hard to max out a CPU (any CPU) so I would think as long as the cooling system is adequate, CPUs shouldn't be over-heating. Of course any sustained temperature increase does reduce system life.

    That all said I think the server form factor probably has a large part to play in all this. I am sitting here with a home built desktop system with very large case and probably one of the biggest air cooled heat sinks that you can buy, but I am sure that a rack/blade server has no such luxury when form factor is important and maybe therein lies the issue. I don't know much about Dell servers, but have changed from preferring Dell desktop systems to building my own in recent years so I can ensure the most sustainable/cool operation including under-clocking if it makes sense to do so (if a CPU can only operate at 90% say when maxed out, it will run a lot cooler). At any one time on my desktop I might be running 3-6 different virtual systems and CPU temperatures are generally good (40C-50C).

    Right now I think you would do well to max out a quad core CPU with WaterGEMS, but we are working on enhancements that will likely change that in future. Hopefully system temperature issues are not a side effect of the faster performance that will result! It sounds like we should make this kind of performance feature optional. I wonder how many people even know what temperatures their desktop systems run at?

    All interesting stuff. Thanks for the chat.



  • Thankyou Jesse and Wayne!

    Apologies for not thanking earlier, I've been going day and night on fixing our problems with network/PC application deployment of the package (and many others). :-(  .

    We still are not running any Bentley Water products after 2 weeks since Go-Live, but hopefully that will be fixed by the end of the week.   The good news is that they've gone away from the App-V virtualisation and back to a more conventional install, however they've opted for a Microsoft System Center Configuration Manager (SCCM)repackaging of the Bentley installer EXEs (eg. pulling out the MSI and scripting the pre-reqs separately) rather than straight EXE deployment.........which has caused some other issues.

    To add to the comments on virtualisation,  I think BEFORE any business or IT department even thinks about doing it, ask yourself:

    "Will the time and investment in developing a virtualised application save me time and money vs standard installation methods?".

    Now in our case, we have ~15 total users in the business.  To manually install on each PC takes maybe 5-7 minutes may not be "elegant", but probably all up ~$2,000 in tech labour to cover everyone.

    Put this against our attempted App-V virtualised deployment more like $100,000+ in package development time and lost productivity, enough money to manually deploy WaterCAD/WaterGems probably 50 times over by now...

    So before doing it, any business needs to ask itself, is it the best solution or is a more decentralised software management model better?  Are you prepared to accept the risks that go with it?  Sometimes newer solutions ain't necessarily better than the old ones......



  • Hey guys - I am in the early stages of looking at virtualization again as my server is aging and needs replaced and four desktops that are using Windows XP.  That being said, an alternative that has been approached to me is using Citrix XenApp or XenDesktop.   I did a quick search on Bentley's site and I found a reference to Substation CAD but not really as part of a compatibility document.   Can Water and SewerGEMS be used in a XenApp or XenDesktop configuration?