Skip to main content

We recently added an FME Server engine to run on a machine (#2) separate from our existing FME Server (#1), in order to be able to run some workspaces closer to the data source they read to and write from.

After installing FME Server on the new machine (#2) and "registering" that engine with machine #1, I am able to see it listed under "Engines & Licensing" in the admin console on machine #1. So far so good.

Next, I created a new queue and a new respository for workspaces I would like to run on the new engine. Next, when I publish a workbench to that repo and try to run it, it will show up as 'Queued' but never execute. It will just stay in "Queued" mode.

What am I missing?

It's a difficult question to answer with only some general information, but have you looked in the FME Server log files for clues?

 


It's a difficult question to answer with only some general information, but have you looked in the FME Server log files for clues?

 

Great idea. The first thing I notice in the 'fmeprocessmonitorengine' log for that engine is:

FME Engine failed to register with FME Server 'NAME OF MY MAIN MACHINE' on port 7070. 

But when I check that port, it's open. 

Then there also is a 

Process "MyMachine_Engine1" ended unexpectedly and has reached its start attempts limit of 20.

Finally, there is this reference to pg_hba.conf. Sorry but I din't speak Postgres.

Mon-13-Apr-2020 08:24:36.481 PM   ERROR    MYENGINEEngine1   SQLException: COM.safe.fmeserver.database.FMEServerDBException: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "MYMACHINE IP", user "fmeserver", database "fmeserver", SSL off
COM.safe.fmeserver.api.FMEServerException: java.sql.SQLException: COM.safe.fmeserver.database.FMEServerDBException: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host ""MYMACHINE  IP", user "fmeserver", database "fmeserver", SSL off
    at COM.safe.fmeserver.database.ManagerBase.execute(ManagerBase.java:79)
    at COM.safe.fmeserver.database.ManagerBase.execute(ManagerBase.java:59)
    at COM.safe.fmeserver.FMEServerCoreNodeLookup.getEngineManagerHosts(FMEServerCoreNodeLookup.java:30)
    at COM.safe.fmeserver.ProcessMonitor.run(ProcessMonitor.java:565)
    at COM.safe.fmeserver.FMEServerNodeManager$Wrapper.run(FMEServerNodeManager.java:123)
    at java.lang.Thread.run(Thread.java:748)

Looks like you need to allow access to the posgresql instance from the machine that is running the new engine. By default, postgresql only allows connections from the same machine that it's running on (localhost), so you'll have to add a line to your pg_hba.conf file for the new server and then restart the FME Server Database service.

There are several examples at the end of the relevant documentation page: https://www.postgresql.org/docs/9.6/auth-pg-hba-conf.html


Looks like you need to allow access to the posgresql instance from the machine that is running the new engine. By default, postgresql only allows connections from the same machine that it's running on (localhost), so you'll have to add a line to your pg_hba.conf file for the new server and then restart the FME Server Database service.

There are several examples at the end of the relevant documentation page: https://www.postgresql.org/docs/9.6/auth-pg-hba-conf.html

Also mentioned here in step 12

 

https://docs.safe.com/fme/html/FME_Server_Documentation/AdminGuide/Adding_FME_Engines_on_Separate_Machine.htm

Looks like you need to allow access to the posgresql instance from the machine that is running the new engine. By default, postgresql only allows connections from the same machine that it's running on (localhost), so you'll have to add a line to your pg_hba.conf file for the new server and then restart the FME Server Database service.

There are several examples at the end of the relevant documentation page: https://www.postgresql.org/docs/9.6/auth-pg-hba-conf.html

Great. I don't know how-to page I was following when I set this up but I clearly missed the part about Postgres. I'll try that and I bet it will resolve my issue. Thanks!


Great. I don't know how-to page I was following when I set this up but I clearly missed the part about Postgres. I'll try that and I bet it will resolve my issue. Thanks!

@david_r, @virtualcitymatt, @ryanatsafe - Okay, so I followed up steps 12-15 on the install page.

Then, I was able to publish to new queue/engine.

But I am still seeing an error in the web admin console saying:

Authentication failed: Failed to login

So I followed these steps, and found I had two engines showing up in 

processMonitorConfigEngines.txt

on the <Engine-Host>. So I added the NODE_HOST line in this file and wiped out the 'start up' for the other phony engine.

But the error remains. Under "Engines & Licensing" in web console, under 'Hosts', the new engine shows up but says: 

Authentication failed: Failed to login

.

@david_r, @virtualcitymatt, @ryanatsafe - Okay, so I followed up steps 12-15 on the install page.

Then, I was able to publish to new queue/engine.

But I am still seeing an error in the web admin console saying:

Authentication failed: Failed to login

So I followed these steps, and found I had two engines showing up in 

processMonitorConfigEngines.txt

on the <Engine-Host>. So I added the NODE_HOST line in this file and wiped out the 'start up' for the other phony engine.

But the error remains. Under "Engines & Licensing" in web console, under 'Hosts', the new engine shows up but says: 

Authentication failed: Failed to login

.

Could it be a closed port? https://docs.safe.com/fme/html/FME_Server_Documentation/ReferenceManual/FME-Server-Ports.htm 


Interesting... I just checked a few ports on the <host machine>:

the process config file shows:

TEMPLATE_START_ENGINE="C:/Program Files/FMEServer/Server/fme/FMEEngine.exe" REGISTER_FME_ENGINE ,<CORE HOST MACHINE> 7070 7069 DEFAULT...

So I checked 7070 and 7069 and those are open.

Then I see 

NODE_ADMIN_PORT=7500

And that one is open. Think I need to check all the ports on the list you shared?


Interesting... I just checked a few ports on the <host machine>:

the process config file shows:

TEMPLATE_START_ENGINE="C:/Program Files/FMEServer/Server/fme/FMEEngine.exe" REGISTER_FME_ENGINE ,<CORE HOST MACHINE> 7070 7069 DEFAULT...

So I checked 7070 and 7069 and those are open.

Then I see 

NODE_ADMIN_PORT=7500

And that one is open. Think I need to check all the ports on the list you shared?

I now have a call lined up with Safe to take a look at what's going on here. WIll update this thread when I have answers.


Reply