web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics CRM (Archived)

Accessing a particular node in an NLB installation

(0) ShareShare
ReportReport
Posted on by 105

Hi all,

We've got an operational dynamics 2013 implementation that has two nodes for the web servers using NLB for the cluster.  Works fairly well.  We also have ADFS/IFD installed and  operational, and the dev/test/prod sites are secured with SSL certificates.

I find that when I need to post data to the CRM through an automated process, all of the data winds up going through just one node.  Instead, I'd like to spread the load to both frontend servers.

If I visit https://crm.example.com (the NLB name) with a browser, I can login and use the system.

If I visit https://node1.example.com (first node) with a browser, I receive a fairly generic error:

There was a problem accessing the site. Try to browse to the site again.
If the problem persists, contact the administrator of this site and provide the reference number to identify the problem.
Authentication failed. Close the browser and try again, or contact your administrator for more information.

I presume something is misconfigured - but what are the most likely possibilities?  I checked the SPN for the app server account and the node names are listed.

Is it possible to direct requests at each frontend node with an active NLB?  How can I do so?  

Thanks for any advice you can offer.

Regards,

Rich

*This post is locked for comments

I have the same question (0)
  • Suggested answer
    Manoj Batchu Profile Picture
    1,691 on at

    Hello Rich,

    As you have configured IFD, you may not be able to access with Node name.

    Check the below to verify both the nodes are processing the requests.

    1. Access the Internal URL with the Node name.

    2. You can view the active connections in both the nodes by executing the command 'wlbs params'.

    3. Disable Node by Node and check whether you are able to access the Application.

  • rduz Profile Picture
    105 on at

    Hi,

    Thanks for answering.  Sorry, maybe I wasn’t clear enough.  Both nodes are working.  Some people hit node 1, some people hit node 2.  That’s not the issue for me.  My issue is that when I’m running a big batch of updates or inserts from a script, I want to send requests to both nodes, but I find that my requests all wind up on going through one node.  

    In particular, I’d like to use the ‘Balanced Data Distributor’ and CozyRoc SSIS+ components in my SSIS job to send requests to both nodes.

    Since the only way I can set up the “server name” in the connection manager is to use the NLB name, the requests are sent to the cluster.  Due to affinity settings, all requests stay on the node that they started at.  I had hoped to set node one to point as https://node1.example.com and node two to point at https://node2.example.com but that doesn’t work – I get an authentication error.

    As a test, I attempted to login to one of the nodes with a browser, but I cannot do so without receiving an authentication error.  

    Does that make more sense?

    Thank you.

    Regards,

    Rich

  • Verified answer
    Manoj Batchu Profile Picture
    1,691 on at

    Hello Rich,

    Yes, it does make sense now.

    And as you said due to affinity settings, all the requests will be routed to the same node on which it is initiated.

    You can try the below temporary option.

    - Point the CRM DNS Name to Node 1 IP Address or Node 2 IP Address in Hosts file.

    - Then try accessing https://crm.example.com which will resolve to IP Address of the specific node you added in the Hosts file.

  • rduz Profile Picture
    105 on at

    Hi Manoj,

    Thanks for your help.  Now, my SSIS job is running on a single computer.  It has only one hosts file and I cannot see how I can follow your suggestion completely.  However, it has given me another idea to try.  I could split my data up into two sets and then use two computers to run the SSIS job, one with the hosts file set to node1 and one with the hosts file set to node2.  I'll give that a go and report back.

    Thank you.

    Regards,

    Rich

  • Suggested answer
    Manoj Batchu Profile Picture
    1,691 on at

    Hello Rich,

    You can also try to explore below option.

    - Set Internal URL to Node 1 IP Address and External URL to Node 2 IP Address in Hosts file.

    - See if you can configure your datasets into 2 different SSIS jobs in the same SSIS server.

    - Configure one SSIS job to Internal NLB Server name and second SSIS job to External NLB Server name.

    This is just a thought and I didn't try this :).

  • rduz Profile Picture
    105 on at

    Hi Manoj,

    Reporting back as promised.  I set up two worker node computers.  Then I set the hosts file on worker 1 NLB name to point at node1, and set the hosts file on worker 2 NLB name to point at node 2.

    Then, I added a nodeid column to my staging table and set it via:

    SELECT

     (ROW_NUMBER() OVER (Order by (select 1)) % 2) + 1 as nodeid,

    Then, I set up an environment variable on each node and assigned a unique node ID (1 or 2 in my case) to that environment variable.

    Following that, I set up my SSIS job to pick up the nodeid of the machine from the environment variable and use it to select it's portion of the rows from staging, like:

    select contactid, f1, f2, f3 from staging where nodeid = ?

    I stored my solution on a network share and I simply open it and run it on each worker node at the same time, and then each worker node pushes it's portion of the data.  

    It's a pain to set all this up, but it does work and it does cut the time to about half.  Based on my tests so far, I think that up to four workers per CRM front end will be beneficial.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics CRM (Archived)

#1
SA-08121319-0 Profile Picture

SA-08121319-0 4

#1
Calum MacFarlane Profile Picture

Calum MacFarlane 4

#3
Alex Fun Wei Jie Profile Picture

Alex Fun Wei Jie 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans