The Community is now in read-only mode to prepare for the launch of the new Flexera Community. During this time, you will be unable to register, log in, or access customer resources. Click here for more information.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Way to prevent agent from breaking a Inventory Beacon

kstaude
By
Level 4

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?

(16) Replies

adrian_ritz1
By
Level 10

Hi,

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

Regards,

Adrian Ritz

Hi,

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

Untitled picture.png

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"

Hi,

Thank you I was not aware about this feature, I will test it.

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.

Hi @kstaude,

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.

Thank you

Sasi

mfranz
By Level 17 Champion
Level 17 Champion

Hi Sasi,

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.

Best regards,

Markward

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.

Have you still seen if a deployment tool attempts to install over the top, will it break the beacon? Or MSI smart enough to notice this and not attempt to reinstall breaking the beacon functionality?

mfranz
By Level 17 Champion
Level 17 Champion

Hi,

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.

Best regards,

Markward

ChrisG
By Level 20 Flexeran
Level 20 Flexeran

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.)

(Did my reply solve the question? Click "ACCEPT AS SOLUTION" to help others find answers faster. Liked something? Click "KUDO". Anything expressed here is my own view and not necessarily that of my employer, Flexera.)

Agree, this is what I'm doing to at least get a regular inventory of the machine without too much added effort.

dcollins
By
Flexera Alumni

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:

2019-08-22_7-53-14.png

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.

https://www.linkedin.com/in/dave-collins-7aa71a3b

mfranz
By Level 17 Champion
Level 17 Champion

Please find a Registry file attached, so you don't  have to create the mentioned keys manually. Please handle with care.

Thank you very much for the detailed feedback. Based on some other comments and this I'm still hesitant on how to prevent a rollout of the agent system wide which may still potentially hijack something like this. Right now I'm just working around this with a scheduled task, but this might do the trick as well.

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.

mfranz
By Level 17 Champion
Level 17 Champion

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.