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

FNMS 2019 R1.3 on Server 2016 Error

We are currently in the process of implementing FNMS 2019 R1.3 on Windows Server 2016 and it seems as the the "Config.ps1" powershell script is not able to verify the service account userid and credentials that will be used for the FlexNet Manager Suite/External Web API application pool.

The powershell script will continue to process until failing at the step "Configure FNMS Web API virtual directory" with the error message "You cannot call a method on a null-valued expression."

I am currently logged in as the service account and also can confirmed that the service account has the proper permissions to execute the script.

I would also like to add that we do not see any errors generated if the powershell script is executed on Windows Server 2012 R2.

Thanks!

- David Le

(13) Replies
mgunnels
By Level 5 Flexeran
Level 5 Flexeran

Good Afternoon David,

This could be related to a $ in the password.

We might need to bypass the account validation process to get past this error.

@mgunnels 

Hey Matt!

That sounds simple.

Do we need to remove the "$" within the powershell scripts?

Thanks!

- David Le

Good Evening,

Please do NOT remove the $ from the Power Shell scripts. 🙂

We  would need to either remove the $ from the password or exclude the function that validates the account.

I'll download the scripts this evening and identify the function to disable. 

@mgunnels 

"We would need to either remove the $ from the password or exclude the function that validates the account."

I changed the password and removed the $ on the service account we are using for the powershell scripts.

However, that still did not fix the underlying problem.

Thanks!

- David Le

Hi David,

On the server you are running the PowerShell scripts on, can you open the
"Internet Informatin Services (IIS) Manager" tool, please?

When browsing the configuration, make sure that under "Sites", you see a node
named "Default Web Site".

  • In case it has a different name, rename it to "Default Web Site"
  • In case there is no "Default Web Site", use "Add Website..." to add it.

Then try re-running your PowerShell configuration script, please.

@statler 

The name "Default Web Site" already exists in IIS.

Please see attached screenshot.

Thanks!

- David

Hi David,

When running the PS configuration scripts, a log file named “config.log” will be created in the “Support” folder where the PS “config.ps1” configuration script is located.

You should find more detailed information in this log file.

@statler 

Do not see anything that would indicate an error has occurred within the config.log file.

Attached is the config.log file that was generated after running the Config.ps1 script.

 

Thanks!

- David

Hi David,

Looks as if on your system, the function "SetupAppPoolIdentity" that is part of the "ConfigHelper.ps1" PowerShell script fails.

The statement that should configure the ManageSoftWebServiceAppPool on your system should show in the LOG like:

[MM/DD/YYYY 23:59:14] Application Pool: ManageSoftWebServiceAppPool

[MM/DD/YYYY 23:59:14] Command: C:\Windows\system32\inetsrv\./appcmd.exe set config /section:applicationPools "/[name='ManageSoftWebServiceAppPool'].processModel.identityType:SpecificUser" "/[name='ManageSoftWebServiceAppPool'].processModel.userName:<DOMAIN>\********" "/[name='ManageSoftWebServiceAppPool'].processModel.password:********"
Applied configuration changes to section "system.applicationHost/applicationPools" for "MACHINE/WEBROOT/APPHOST" at configuration commit path "MACHINE/WEBROOT/APPHOST"

The error message that you reported indicates that there is an undeclared (null) variable in the PowerShell script when the "SetupAppPoolIdentity" function is executed.

Looking at the "ManageSoftWebServiceAppPool" PowerShell function, it checks for an existing ManageSoftWebServiceAppPool and tries to retrieve the credentials (user name and password) for it to use it for reconfiguring the Application Pool. Not necessarily a good idea if you want to reconfigure your FNMS system.

Is there a valid user account configured for the SetupAppPoolIdentity application pool in IIS under "Process Model > Idenity"? Can you update this manually to use a valid user account and password before running the PS script again?

@statler

I went ahead and updated the 'ApplicationPoolIdentity' to use the assigned service account.

After restarting IIS and re-running the Powershell Script again, the results are still the same.

One thing I don't understand is how can the scripts run without any issues in 2012 R2 but only on 2016?

Thanks.

- David

Hi David,

I don't think this issue is related to the OS you are using. The PowerShell configuration script runs well on Windows 2016.

It is more likely that the IIS configuration on the W2K16 system is incomplete.

On your Windows 2016 Server, can you confirm that in IIS, all IIS Roles/Services are enabled as described on page #89 in the "Installing FNMS 2019 R1 on Premises.pdf" document?

I copied the list below:

• Web Server > Application Development > .NET Extensibility
• Web Server > Application Development > ASP.NET
• Web Server > Application Development > CGI
• Web Server > Application Development > ISAPI Extensions
• Web Server > Application Development > ISAPI Filters
• Web Server > Common HTTP Features > Default Document
• Web Server > Common HTTP Features > Directory Browsing
• Web Server > Common HTTP Features > HTTP Errors
• Web Server > Common HTTP Features > HTTP Redirection
• Web Server > Common HTTP Features > Static Content
• Web Server > Health and Diagnostics > HTTP Logging
• Web Server > Performance > Dynamic Content Compression
• Web Server > Performance > Static Content Compression
• Web Server > Security > Basic Authentication
• Web Server > Security > Request Filtering
• Web Server > Security > Windows Authentication

@statler 

I have verified all of the IIS Required Roles are installed on the App Server.

Please see the attached screenshot for reference.

Thanks!

- David

Hi David,

You could try to manually drop the affected application pool from IIS, as the PowerShell script should recreate the application pool with correct configuration.

My personal recommendation would be to use the server manager tool for completely removing the web server (IIS) role from your Windows 2016 computer. Then do a reboot and add the web server (IIS) role using the configuration shown in the screen shot that you sent.