I recently moved my site from a Windows Server 2003 single server, single instance configuration (web and DB on same instance) to a Windows Server 2012 Hyper-V host + web VM + DB VM environment (both VMs on Windows Server 2012).
The web and DB talk to each other through vNICs connected to a virtual switch on the physical NIC. This diagram shows this setup:
At some point, I would like to put the DB behind an internal v-switch, but I need to get the kinks ironed out first on the current, more simplified setup.
Anyway, the issue is that I am having these intermittent errors. About 0.1% or less of my requests result in this error:
Named Pipes Provider: Could not open a connection to SQL Server .
I thought maybe the communications between the web and DB VMs were having to go through the physical NIC, and maybe there were issues w/ the NIC. But according to a question I asked and the response, it seems Hyper-V knows to keep this communication internal without going over the NIC.
So this begs my question:
Why would SQL be throwing a connection-related error when the web-to-DB communications is never hitting a physical NIC (assuming it's not)?
Just to note, the previous single-instance configuration used SQL Server 2005, and the new setup uses SQL Server 2012.
Another quick, potentially important clue: the only trend I can detect with when these occur, is that it seems to happen during peak traffic -- between 5PM and 9PM. However, it seems it can go a couple days during these peak periods with no errors. On other days, I will get 100+ of these during a given 15-30 minute window of peak traffic.