Way to prevent agent from breaking a Inventory Beacon
I've seen a few times where when a customer is rolling out the FlexNet Agent to Windows machines, the target list of machines includes servers which have the FlexNet Inventory Beacon. When this occurs we've seen several times the agent install will actually break the installation of the Inventory Beacon, in some cases, removing the Inventory Beacon entirely.
Has anyone else seen this or any other way to prevent this? My only other suggestion to scan the machine where an Inventory Beacon is installed would be to run a standalone NDTrack / scheduled task?
This thread has been automatically locked due to inactivity.
To continue the discussion, please start a new thread.
Indeed you can't install agent and beacon software on the same machine, which from my point of view is kinda stupid.
I encountered the same issue, the OS team rolled out the agent which automatically uninstalled the beacon software and took me half of day of investigation to see why the beacons are not working.
Any way, I managed to audit beacon only with the ndtrack and created a scheduled task to run this.
the command is something like:
ndtrack.exe - o uploadlocation="<Your central server/managesoftrl>" -o upload="true"
That's how I use it.
May be other have other solution
Flexera Agent is pre-installed locally on the Flexera Beacon, you only need to manually execute download of the policy for the Agent from the local Beacon and it will start operating normally as usual Agent. Below are my instructions:
Start local Flexera Agent at Beacon server
1) Run "mgsPolicy" to download the policy to the local Flexera Agent from the Flexera Beacon app to scan the Flexera Beacon machine:
- Run CMD as administrator
- "c:\Program Files (x86)\Flexera Software\Inventory Beacon\Policy Client\mgspolicy.exe" –t machine –o DownloadRootURL="http://localhost/ManageSoftDL"
- Note: If download fail, wait for about 10 minutes, Beacon may be still updating its policy - check FNMS > System Health > Activity log and wait until line like this will appear and retry
2) Optional: Run "ndSchedAg" to immediately start Inventory scan of the machine (or wait for the next schedule from the policy):
- Run CMD as administrator
- "c:\Program Files (x86)\Flexera Software\Inventory Beacon\Schedule Agent\ndschedag.exe" -t machine
- Right-click at "Generate Inventory" and select "Run"
Thanks both, very valid solutions we're using today, still looking for a way prevent the "over install/uninstall" issue without exclusively calling out the Beacon exception.
Agree somewhat silly one product breaks the other.
I suspect installing Agent will not break the Beacon. Installation will get failed stating that beacon is already installed on the machine.
If you try to install manually you would get the error message like "The installation cannot proceed because the machine appears to already have the Inventory Beacon installed.". Screenshot attached for your reference.
You could find the same error message on FlexNet Inventory Agent.msi.log as well.
I can confirm that you can destroy the Beacon this way. I have dealt with operations teams who deployed the agent to Beacon machines. We had to reinstall all the Beacons after that.
It may still depend on how you run the installer. We usually provide a silent script.
I too, for the past 5+ years have it cemented in my mind based on experience, that if you install the FlexNet Inventory Agent on a FlexNet Beacon server, it will destroy the Beacon. It is still an issue today. I've made it my practice to inform customers to add all of their Beacons / Core FNMS Infrastructure to an exclusion list when deploying the agent. However, you can imagine with human error, this isn't always 100% preventable. So it still comes up from time to time.
From a product perspective, installing the FlexNet Inventory Agent on a FlexNet Beacon server, should not destroy the FlexNet Beacon server. Yet, the Beacon will still be destroyed if you do. I would hope it's listed as a product Bug and something is in the road map to fix it, or at least and explanation as to why it happens, and a plan to add calling this out in documentation so customers know to avoid doing it.
Is there anything in the bugfix or product roadmap to address this issue? It's not documented in anything i've seen, yet based on experience over the past 5+ years, it still does.
As Agent and Beacon have different MSI's, they won't be "smart enough". As mentioned before, you could add a smart script to run your MSI only under specific conditions.
I see the discussion here about installing the agent on a beacon being possible, but I'm not quite sure how that happens. When the agent MSI installer runs, it should be attempting to check whether the beacon is installed by checking the value of the HKLM\Software\WOW6432Node\ManageSoft Corp\Managesoft\ETDPInstallDir registry entry. If this entry has a non-blank value, the following message that @sasikumar_r mentioned is logged and the agent installation should not proceed:
The installation cannot proceed because the machine appears to already have the Inventory Beacon installed.
With that said, from all the reports here of problems, I wonder whether this check is not happening or working as expected in common scenarios. It would be interesting to see an MSI log from the "successful" installation of the agent on the same computer as a beacon, and inspect what value the log shows for the ETDPINSTALLDIR MSI property.
(Aside: For the historically curious: the acronym "ETDP" refers to "Enterprise Deployment Product", which is a very old name for the component that eventually evolved in to the beacon we know today.)
It is frustrating how installing the Agent on a Beacon breaks the installation itself, as mentioned earlier in the thread the agent "components" are pre-installed along with the beacon installation itself, they just need activating.
I believe you can do this via a bootstrap file (I will need to look that up) but an easy hack is the following
on the beacon go to HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ManageSoft Corp\ManageSoft\Common\DownloadSettings
Under here for a beacon that is not currently using its agent components, there should only be one key under this location which will be ReplicatorParent, this is the download location used by the beacon
to activate the agent components, make a new key called "Bootstrap Server 1" and populate this key with the following strings:
Replace the string values for Host as Localhost and Port, protocol, User and password to whatever the beacons local webserver it set as, in my example I am using the built-in web server on the beacon so Its just HTTP on port 80 with no username or password but you may be using your own settings in IIS.
Once you have done this open up an admin CMD and navigate to your beacon installation directory, in my case: C:\Program Files (x86)\Flexera Software\Inventory Beacon\
then navigate to a folder under this path called "Policy Client"
Once there execute the following command: mgspolicy -t machine
This will launch the policy updater for the agent, it looks for the Bootstrap Server key and uses those settings to download a policy for the agent components, in this case, it uses host: localhost which downloads the agent policy from itself (a little weird I know)
once this has been done f5 refresh regedit and you will now see all your beacon guids under downloadsettings and uploadsettings and the agent components on the beacon will have a run schedule, you can check this by navigating to your beacon installation directory again: C:\Program Files (x86)\Flexera Software\Inventory Beacon\
and navigating from there to: Schedule Agent
within this folder run "ndschedag -t machine" from an admin cmd and a window will pop up showing the schedule tasks for the agent components
hopefully, that made sense. Its abit of a weird process but it does work, I have a few videos on this that I am hoping to post on here in the near future if it will help.
Perhaps will drop another suggestion via Idea forum to see if there can be something from a product perspective to account for this. The beacon doing a "self inventory" upon install, and then also something to prevent a new agent from conflicting with it.
You can still rollout the agent. Depending on your deployment technology, you should be able to script a check if a Beacon is already installed on a machine or not.