If you already have the agent installed, we recommend using the built-in Software Distribution function to deploy the new version of the LANrev Agent to the endpoint. As a new install, of course deploying the .msi via GPO is supported, but upgrades are a different story. Depending on what version you are upgrading from and to, the results of pushing the .msi as an upgrade via GPO might be mixed. As a result, always use the built in SD function to upgrade agents.
Thanks Dave. Indeed we usually upgrade the agents via the Software distribution and that works fine.
The problem is that occasionally we have to add new PCs or re-image the current PCs. For them, we need to install the agent from scratch.
We don't want our technicians to install the agent manually: they would likely forget. Ideally, the agent should be automatically installed as soon as the computer is on the network and join the domain. E.g. we do this for our anti-virus agents.
The problem is that we keep new and current PCs all in one bucket, same network, same domain, same OU. That's again for streamlining PC building operations. It means that if we want the GPO installing the LANrev agent.MSI, that would happen both on new or current computers. On new computers is fine, on current computers would interfere with the (already upgraded) agent, at least the first time: it seems trying a re-installation, which fails and crashes the service. Fortunately, at the second PC restart, the GPO detects that has already tried to install that package and doesn't repeat the installation.
I know, I'm a bit fussy here. However, I'm squeezing my brain for finding the best compromise. E.g. it might be necessary running a logon script that checks if the agent is already installed and, if not, runs the installation.
You could just simply install the Agent in the Windows Image. That way nobody can forget to install it.
Roughly its like this:
- Install the Agent in the Image
- Stop the Service
- Change the Service to start manually
- Delete the Agent Serial-Number
- In your unattend.xml (I am assuming you have one)
- Change the Start-Type of the Service to automatic
This way all our computers Connect to the server right after imaging and get all their basic software installed.
I have seen similar issues with the msi via GPO, especially where there has been an upgrade and the version on the GPO is different from the version on the client machine. This will happen as not all machines are upgraded simultaneously.
Here is what I do as a suggestion if you would like to take Stefan's advice. Create an OU for your deployed machines and another OU for your non-deployed machines and apply the GPO only to the deployed OU. When you deploy a machine just move it from one OU to another and the agent will install fresh as deployed. We do this so we don't pay for licenses on those machines that are not in use.
This still does not solve the issue where the install does not play well with agents that are already installed. I often have issues where a machine will attempt a reinstall via GPO even though the agent is already present and sometimes the service restarts all right and sometimes the machine just stops reporting altogether until a manual uninstall / reinstall is performed.
I think the best solution would be a more robust msi installer from the vendor, one that could be applied to an OU full of computers that range in different agent versions.
Thanks Stephen, your description of the problem is spot on !
Indeed, Heat should review the MSI package and makes it more reliable. I know it's possible, because we run other similar server/client applications where the client MSI packages behave as expected, without interfering with the application if already installed (unless it's an older version, in that case it will upgrade that).
In the meantime, we'll adopt one of the 2 suggestions: either Stefan's one (including LANrev agent into the master image) or yours (double step deployment, using 2 different OUs). It'll depend what's the less burden for our IT team.
Thanks to all of you for your help, appreciated.