Sunday, 1 September 2013

SMSQL 6.0.1: “There was no endpoint listening at net.tcp ... that could accept the message”

The following post details a brief investigation of this error. It does not lead to a fix, but may offer pointers in the right direction.

The Error:

Failed to connect to SnapManager for SQL Server. Please make sure that SnapManager Service is running on that system.
Details: There was no endpoint listening at net.tcp://HOSTNAME/NetAppServices/SMSQLServices/Service that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.

Recreating the Error:

From a known good working system with this configuration:

- Windows Server 2008 R2 Enterprise
- Microsoft SQL Server 2008 R2
- NetApp Windows Host Utilities 6.0.2 (6.0.4649.1236)
- SnapDrive (6.5.0.5474)
- SnapManager for Microsoft SQL Server (6.0.1)

To re-create the error is easy to do:

1) Navigate to this location:

C:\Program Files\NetApp\SnapManager for SQL Server

2) Notice there are 3 XML Configuration Files:

SMSQLPSSnapIn.dll.config
SMSQLUISnapIn.dll.config
SnapMgrService.exe.config

3) Stop the ‘SnapManager Service’

4) Edit the SnapMgrService.exe.config - using say Notepad++ - changing all entries for the default port number 808 to say 909 (13 occurrences)

Note: You may need to run Notepad++ as an administrator (even if logged in as a local admin)

5) Restart the ‘SnapManager Service’

6) Now try adding the SQL server in the SnapManager for SQL Server MMC and you will get the same error.

Image: “There was no endpoint listening at net.tcp ... that could accept the message”
A Few Pointers:

1) The following NetApp Communities thread suggests you can change SME default ports (SME 6.0 defaults to 810) by editing the config files with the new port value, and applying a registry key.


So - if the same were true for SMSQL (which it may not be) - all we need to do is edit the port values of 808 in the following files with the desired one

SMSQLPSSnapIn.dll.config
SMSQLUISnapIn.dll.config
SnapMgrService.exe.config

And add to the registry key:

HKLM\SOFTWARE\Network Appliance\SnapManager for SQL Server\Server

The string (REG_SZ) “ServerPort” with value being the new port number!

Image: Regedit SMSQL ServerPort with 909 in this example
After attempting to change SMSQLs default port from 808, and not encountering any success, and reading another KB mentioning that it cannot be changed from the default, I’ve reached the conclusion that this method will not work. Please comment if you’ve been able to do this - many thanks in advance J!

2) Net. Tcp Port Sharing Service

Most likely, perhaps a Windows update or similar has broken the dependency with the Net. Tcp Port Sharing Service.

Image: SnapManager Service Properties - Dependencies
‘SnapDrive’ uses port 808
‘SnapDrive Management Service’ uses port 808
‘SnapManager Service’ uses port 808

Without ‘Net.Tcp port Sharing Service’, all these services will not be able share port 808.
‘Net.Tcp Port Sharing Service’ should be ‘Started’ and ‘Automatic’.

Image: SMSQL required ‘Net.Tcp Port Sharing Service’ state
3) Something Else

Potentially, something else could be trying to share port 808, and these may not allow Net.Tcp port sharing. Check for other programs using port 808 and disable to investigate their effect.

4) The Usual Suspects

Typically - Windows Firewall, UAC (User Access Control), Web Proxy, Anti-virus software, GPOs, Windows permissions, SQL permissions, service accounts, ...

Update

Or, the fix could be the following process*:

i) Remove the below entry from SnapMgrService.exe.config.xml (generatePublisherEvidence enable = false):
ii) Log into the SQL server using the SMSQL service account
iii) Open up Internet Explorer > Internet Options > Advanced
iv) Remove the check boxes for:
Check for publisher’s certificate revocation’ and
Check for server certificate revocation*

Image: Uncheck the two boxes as below

*Credits to Jar Roota

3 comments:

  1. Hi Vidad,

    thank you for your post.
    I've been stuck on this issue for a few days now, and the only thing that solved the problem for me was to uncheck the two boxes in IE options.
    This is so weird though, as i never saw anything that could indicate a certificate issue, and i've been looking around a lot for this problem!
    Many thanks, and keep up the good work, great job with your blog, definetly bookmarking it! ;)

    ReplyDelete
    Replies
    1. Thank you for the comment Nicolas, and thank you for reading.

      Delete
  2. Thanks a lot, Brilliant stuff! I had the same issue, and unchecking those two boxes in the IE did it. I still can't get a clue as what broke it, I have a test lab and nothing goes out to internet, there were no updates made to it. Only thing I remember that I added NetApp DSM for MPIO, and since then it broke. You explained it very well!! Keep sharing such good knowledge.

    ReplyDelete