Deploying a PowerPivot service application to a SharePoint Server 2010 is much more fun than you think since there are different errors which can occur. Fortunately this error was due to my PowerShell script so the solution was quite easy to find.
Error description
The following error occurred:
The remote server returned an error: (503) Server Unavailable.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Net.WebException: The remote server returned an error: (503) Server Unavailable.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[WebException: The remote server returned an error: (503) Server Unavailable.]
System.Net.HttpWebRequest.GetResponse() +1126
System.ServiceModel.Channels.HttpChannelRequest.WaitForReply(TimeSpan timeout) +81
[ServerTooBusyException: The HTTP service located at http://SERVERNAME:32843/c4d8f691285f4c3fa4f378182a68545a/SSASMidTierService.svc is too busy. ]
System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage
(IMessage reqMsg, IMessage retMsg) +10259322
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke
(MessageData& msgData, Int32 type) +539
Microsoft.AnalysisServices.SharePoint.Integration.IGeminiServiceApplication.
GetLastDataRefreshFailedRuns(Int32 days, Int32 topCount) +0
Microsoft.AnalysisServices.SharePoint.Integration.GeminiServiceApplicationProxy.
GetLastDataRefreshFailedRuns(Int32 days, Int32 topCount) +97
Microsoft.AnalysisServices.SharePoint.Integration.DataRefreshFailureWebPart.
GetDataTable() +39
Microsoft.AnalysisServices.SharePoint.Integration.DataRefreshFailureWebPart.
CreateChildControls() +825
System.Web.UI.Control.EnsureChildControls() +146
System.Web.UI.Control.PreRenderRecursiveInternal() +61
System.Web.UI.Control.PreRenderRecursiveInternal() +224
System.Web.UI.Control.PreRenderRecursiveInternal() +224
System.Web.UI.Control.PreRenderRecursiveInternal() +224
System.Web.UI.Control.PreRenderRecursiveInternal() +224
System.Web.UI.Control.PreRenderRecursiveInternal() +224
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3394
Here is the screenshot:

Solution
The PowerShell script I used to deploy and retract the PowerPivot service application had an issue with retracting the service application proxy. Since I used the wrong name the proxy wasn’t properly retracted. After creating the service application again the service application and the proxy weren’t really connected:

After removing both the proxy and the service application I was able to create them again and the problem was solved.