Kapil_Madaan
What you're trying to do doesn't relate to this article. Load balancing is an entirely separate discussion - sharing Kerberos alone as a topic isn't a strong enough bond to make these discussions one and the same.
Speaking to your issue.
By default, the "server" service runs under the "local system" security principal, which in turn is represented by the computer object in Active Directory. If you have two file servers then you're talking about needing to add an identical servicePrincipalName to both computer objects, which as both you and the article have pointed out, you cannot do. If your "farm" had ten servers then you'd have ten computer objects to deal with, and so on.
What you have to do is solve the per computer identity requirement outlined above, and the high level workflow for doing that is:
- Create a service account in Active Directory;
- Configure the "Server" service on each "farm" member to run under this identity;
- Add all the relevant servicePrincipalName values to this service account.
What this achieves is effectively running the same servicePrincipalName configuration across all "farm" members, which will resolve your brief observation above where one access attempt succeeds while the next fails.
Also, make sure you have set the "Session persistence" to "Client IP" or else you're going to run into additional issues as SMB isn't like stateless HTTP.
Configure Azure Load Balancer distribution mode - Azure Load Balancer | Microsoft Docs