Many of our clients ask us about virtualization, running their products over Azure, Citrix, Remote Desktop, using the software on a MAC, etc. Let's look at some of those questions.
For the rest of this article, we are going to assume you understand what is meant by virtualization and you are looking for information on implementing or troubleshooting virtualization in your organization.
What is Virtualization?
You may hear the terms Azure, Citrix, Remote Desktop, VMWare, Parallels, but may not understand what is meant or how you would use them with regard to your takeoff and estimating products.
Azure, Citrix, Remote Desktop all solutions that allow a company to "virtualize" computers, servers, and applications to make distributing, maintaining, and upgrading those systems easier and more cost efficient.
The biggest difference between Azure and Citrix or Remote Desktop (or other on-premise systems) is that Azure allows you to virtualize in the cloud. You don't even have to maintain servers on your end to host the virtualization - Azure does it all. There are other cloud-based virtualization solutions similar to Azure such as Amazon Web Services and Google Cloud. ConstructConnect does not endorse any particular virtualization solution or method, nor do we provide technical guidance or assistance with implementing these solutions.
VMWare, Parallels, Virtual Box, and similar utilities allow a user to run a "virtualized" operating system. For example, if you're a MAC user but want to install a Windows-based product such as ConstructConnect, you can purchase a Windows license and using one of these utilities to run a virtual Windows computer, from within MAC OS. Or you can run an older version of Windows, if like many people, you still use software that may not be compatible with the OS on your computer (maybe that one custom application you have only runs on Windows 7).
What do you want to virtualize?
- You can virtualize a user's entire desktop experience (Windows 10, for example) and use "thin clients". They may not have a real Windows PC in front of them, or it is very basic, low-powered one, simply to connect to the network. They connect to this remote desktop and work in it - just like they would their physical desktop including most installation tasks.
- You can virtualize and distribute/publish just the applications. Citrix and Remote Desktop servers are the leaders in this. The apps get installed on the server and the users run a copy of that application in a remote session. This solution is not compatible with ConstructConnect Takeoff.
Remote access environments can be configured to run over a local network (within an office with the server located on-site) or over a VPN or WAN. This allows remote users to benefit from software they may not otherwise have access to - your IT department could allow a very remote user access to your business systems without having to install or license the product on their physical computer.
Can I Install ConstructConnect Takeoff in a Virtual Environment or Distribute/Publish Them?
ConstructConnect Takeoff is not compatible with "distributed apps" solutions, however,
You can distribute a VDI (Virtual Desktop) to your end users and they can install ConstructConnect Takeoff on that VDI.
You can also install ConstructConnect Takeoff in a virtual machine (such as one hosted by VMWare, Azure, Parallels, etc.) on an end user's computer (Windows, MAC, Linux, whatever).
There are a few things to consider:
Due Diligence
It is your responsibility to determine if virtualization will provide an acceptable user experience. This is where a qualified IT professional who has experience with remote desktops comes in - they can help your company develop a plan of action that meets the needs of the organization and the end users.
Resources
Each user session (each person who fires up a remote desktop or launches a distributed/published application) draws resources from the server providing the remote access services. It's important that your IT department keep this in mind when setting up/building the server. As an example, only, let us say we are configuring a server to provide VDIs to a maximum of five concurrent users. Based on current System Requirements, on top of the system requirements to run your server operating system itself, the minimum additional hardware requirements for five simultaneous users, are:
- Multi-core processor(s) (Takeoff is a graphics-intensive program and taxes the CPU when rendering plans and calculating takeoff results).
- At least 20 GB RAM over and above the RAM required to run the OS (this only provides each user with a virtual desktop 4GB of RAM, this barely meets minimum requirements for Windows, let alone Takeoff. 8GB extra per user would be recommended).
- Sufficient storage space for each user's installation of Takeoff and associated project files. Each project can take up gigabytes of storage space, depending on how many there are, and hope many bids are in each project. Newer computers typically come with over a terabyte of hard drive space, so for five users, you'd need at least six total (one for each user, and one for the base operating system).
- Regular snapshots may increase the base OS' hard drive usage exponentially - so be prepared to add storage in the future.
- Your virtualization server should be a dedicated machine and should not be providing other services such as license management, SQL database server, or e-mail servicing, as examples, and must not be your domain controller.
Additional concurrent users require additional hardware resources (added RAM, a more powerful processor, etc.).
For assistance with hardware needs/configuration, contact an IT professional who is certified in the remote access software you have chosen. On Center Software does not provide this type of software nor do we provide consulting services for configuring these environments.
Even with the most top-of-the-line server and network, end users will notice some performance lag. How much? That depends on just how robust your setup is, but if you and your IT professional optimize your configuration, the lag should be minimal and acceptable to most users.
How do I Install ConstructConnect Takeoff in a virtualized environment?
Whether you're publishing VDIs or using virtualization software on the end user's computer (MAC, Windows, Linux, whatever), he or she can installs the application locally within that environment. They update and maintain the installation, just as if the products were installed on their physical computer.
All your data is stored in the Cloud so even if they accidentally delete a snapshot or if you have to reset their VDI, they won't lose anything (except a little time while they reinstall the application).
Performance Concerns
Let's get this out in the open right away. Anytime you are accessing a product over a network, the Internet, or in a virtual machine, you are going to experience log. How much lag? That depends on too many variables, but ultimately, you are exploring virtualization either as a way to centralize some of your IT resources or you want to allow users who don't have a Windows computer to use Windows-based software.
An experienced IT professional who has experience configuring and optimizing VDIs may be able to find ways to fine-tune the performance of your environment. You must weigh the benefits of virtualization against what your users will deem "acceptable" performance.
No matter how you virtualize Windows, each installation requires a Windows license.
Each user must also be allocated a Takeoff License - concurrent use is not permitted.
Dual Booting
Dual-booting describes the loading of multiple operating systems (Windows, AppleOSX, Other) onto different partitions of a computer's hard-drive. A partition is like a wedge of pie - each operating system is installed in its own piece of the hard drive and does not interact with nor affect the other partitions. Creating hard disk partitions may also be accomplished by installing multiple hard drives, but that is not necessary as hard drives are now big enough that they can store multiple operating systems easily.
For example, many MAC users have found that they need to install Windows so they can use Windows-based software products (such as ConstructConnect Takeoff). After they purchase their MAC hardware, they use an included utility called "BootCamp" to create a new partition on the hard-drive, then install a version of Windows in that partition (yes, usually, you will have to pay for a license of Windows, nothing is free, right?).
Once configured in this manner, when you 'boot up' (start) your computer, you are prompted to choose the operating system (Windows or Mac OSX) you want to run.
Is this Virtualization?
No.
Virtualization is a little different. Virtualization means running one operating system within the confines of another operating system using an emulator or virtual software product such as Parallels (MAC), VMWare, Citrix, or Hyper-V Server. For example, instead of creating a separate partition for Windows, some MAC users may just run Windows in a program called Parallels. They still boot into MAC OSX and use all their great Apple-based software, but if they need to run a Windows-based software, it runs in a virtualized 'session' of Windows, without leaving MAC OSX.
Do we support using Takeoff in a dual-boot environment?
Yes! For the most part, as long as the Windows partition is a supported version of Windows (check the System Requirements for whatever software you are considering installing).
For any assistance with dual booting, please contact a qualified IT Professional. On Center does not provide technical support for advanced Windows configuration.