Sharepoint 2016: Root sitecollection and MySite host sitecollection urls in different loadbalancing pools and different session persistence settings
Environment:
SP2016 with ADFS + F5 loadbalancer
Root site collection and MySite Host sitecollection in same web application
First of all, I didn't built this farm so I don't why MySite Host is in the same webapp with root site collection and I'm aware of the downsides of this configuration.
But few days ago we noticed that our mysites.domain.com url uses Session cookies when inspecting cookies from browser's devtools. This seemed weird because I know that the root sitecollection url (sharepoint.domain.com) uses Source address based settings in the Loadbalancer and we haven't set up "UseSessionCookies = true" in SPSecurityTokenServiceConfig.
Then I checked those urls with nslookup from the server and noticed that those urls return different IP-addresses which are the VIP-addresses from F5-loadbalancer which means they are in different POOLs in the loadbalancer. This I didn't know before that they are in different POOLs.
Our partner that hosts and manages the infrastructure and the loadbalancer confirmed that those urls are indeed in different POOLs in the LB so they also have different IP-addresses. They also confirmed that the root site collection POOL has "Source Address" based persistence setting and the MySite host site collection has "cookie" based persistence setting which means Session cookies in F5's terminology (I think).
From F5's documentation:
With Cookie persistence, the BIG-IP system uses an HTTP cookie stored on the client’s computer to allow the client to reconnect to the same server previously visited.
With Source IP Address persistence, the BIG-IP system assigns the built-in Source Address Affinity persistence type, and directs session requests to the same server based only on the source IP address.
So I have no idea why it is configured like this and my guess is it's just a misconfiguration. I have searched all our documentations and emails and didn't find any information for the reason of this.
So the Loadbalancer configurations are like this (for demonstration):
Root site collection url: sharepoint.domain.com = Source Address based persistence
MySite Host site collection url: mysites.domain.com = Cookie based persistence
My questions are:
- What could be the harm of this configuration? (We've had several weird problems which could be related to this, but nothing major issues)
- What would be the reason/goal to separate those urls to different VIP-addresses / POOLs in LB?
- Should we configure MySiteHost POOL in LB to use also Source Address based persistence?
- Or should we just move that MySiteHost url to the same POOL in LB that has the root site collection url so they would both answer the same IP address and have same persistence settings? (This is how its configured in our QA-farm LB)