In a High availability setup, is it recommended to setup ArcGIS Portal and ArcGIS Server in a Windows cluster. Is it recommended practice?
As long as the system requirements and prerequisites for Portal HA are met, I can't see there being a problem.
I have two IIS servers Window NLB - the ArcGIS servers can communicate to multiple web adapters. But, the portal can only communicate to ONE web adapter at a time. So, I have one host started and one host stopped. This is a NLB cluster of IIS servers, though.
I have multiple ArcGIS servers - they load balance themselves and clustering is controlled in ArcGIS server manager. I only found the need to use the default cluster.
My enterprise MSSQL database servers are Windows NLB clustered also. With replication occurring from a production server to the cluster. The production server database receives all live editing that is not conducted via the federated managed data store. I no longer use my enterprise database as my hosted database - since there is more functionality when you use the proprietary data store.
My config store, directories, local data and cache are also on a single separate virtual server.
To answer your question: I believe ESRI wants you to NLB a Portal cluster, also. With your content directories on a separate shared file server. This would not be hard to do. But, I have not found any performance need to do this, yet. They have the portal "collaboration" thing going on, too. Collaboration appears to be more of a division of two portals that combines both sites' portal items - I don't think it could be used for high availability. But, maybe.