Forum Discussion
Power BI Report Server Issues with HA and NLB
Thanks for your reply - i've searched the last RSPowerBI Logfiles and I foud the following errors:
1.
2017-12-30 19:07:00.8832|FATAL|1|Could not start PBIXSystem.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Net.HttpListenerException: Failed to listen on prefix 'https://<SERVERURLREMOVED>:443/powerbi/' because it conflicts with an existing registration on the machine.
at System.Net.HttpListener.AddAllPrefixes()
at System.Net.HttpListener.Start()
at Microsoft.Owin.Host.HttpListener.OwinHttpListener.Start(HttpListener listener, Func`2 appFunc, IList`1 addresses, IDictionary`2 capabilities, Func`2 loggerFactory)
at Microsoft.Owin.Host.HttpListener.OwinServerFactory.Create(Func`2 app, IDictionary`2 properties)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.Owin.Hosting.ServerFactory.ServerFactoryAdapter.Create(IAppBuilder builder)
at Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext context)
at Microsoft.PowerBI.ReportServer.WebHost.Program.Main(String[] args)
2.
2017-12-31 10:11:15.2128|ERROR|5|Error getting next eventSystem.Data.SqlClient.SqlException (0x80131904): Could not find stored procedure 'TakeEventFromQueue'.
at System.Data.SqlClient.SqlCommand.<>c.<ExecuteDbDataReaderAsync>b__174_0(Task`1 result)
at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Dapper.SqlMapper.<QueryRowAsync>d__24`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.BIServer.HostingEnvironment.Storage.MeteredSqlConnection.<QueryFirstOrDefaultAsync>d__15`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.BIServer.HostingEnvironment.Storage.MeteredSqlConnection.<QueryFirstOrDefaultAsync>d__12`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.BIServer.Configuration.Catalog.CatalogAccessFactory.<QueryFirstOrDefaultAsync>d__8`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ReportingServices.CatalogAccess.CatalogEventAccessor.<TakeEventFromQueue>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.ReportServer.EventHandler.EventProcessingService.<GetNextEvent>d__6.MoveNext()
ClientConnectionId:af6712f3-16f1-4da8-b549-6313979b4a60
Error Number:2812,State:62,Class:16
By the first error I manually removed the URL. But I don't understand the error, why is there and where a another registration?
On the server there was in August the preview power bi ssrs version installed. After a uninstall the GA version was installed by using the same url. Is there an option to check all url reservations?
At the second error I checked that the SP exists and the user has enogh permessions. The SQL Server can only connect via a FQDN and the Port sqlserver.domain.tld,6600
- pbx8 years ago
Helper V
You can manage URL reservations using netsh http commands, for example: netsh http show urlacl shows you all reservations. See the following;
https://msdn.microsoft.com/en-us/library/windows/desktop/cc307236(v=vs.85).aspx
For the second error, check to make sure both nodes have access to the SQL server on ther aforementioned port, and also check service account permissions, and local firewall logs (if you are using Windows firewall). I have to admit the error is a bit weird. What log file this error shows up in?
- Anonymous8 years agoNot applicable
Thanks for your reply.
I’ve checked via urlacl the registrations. I’ve found 3 registrations which pointed on a wrong url. The other one seems to be correct. I deleted the three wrong registrations. But must be the registrations for the ssrs services pointed to the service account? Currently the registrations are made for a local service account …
Reserved URL : https://powerbi.<domain>.org:443/ReportServer/
User: NT SERVICE\PowerBIReportServer
Listen: Yes
Delegate: No
SDDL: D:(A;;GX;;;S-1-5-80-1730998386-2757299892-37364343-1607169425-3512908663)
Second Error:
Both Server runs under the same service account. If I stop one of the server, I can use the Portal. So I don’t think that the firewall or something else blocks the request.
The Logfile stored under:
"<DRIVE>:\Program Files\Microsoft Power BI Report Server\PBIRS\LogFiles\RSPowerBI_<DATETIME>.log"
- pbx8 years ago
Helper V
NT SERVICE\PowerBIReportServer is an internal group that should contain your domain service account, so you should be good there. I think the idea is that if you switch the service account, the URL reservations do not need to change.
Let's put the database error aside for now. Based on what you are saying that stopping one server works, there must be some misconfiguration. Let's see if we can find that.
First thing would be to provide your URL reservations in the rsreportserver.config file. You don't need to provide the actual urls, but mask them in a way that are consistent.
Second, when you restart the PBIRS service, a few log files are generated. Could you look into those and provide the following info?
- In the RSPowerBI_YYYY_MM_DD_HH_MI_SS.log, there is one or more lines like this: “|INFO|1|CFG : Hosting-url-ReportServerWebApp = [a url here] (env)”. Can you provide the url?
- In the RSPortal_YYYY_MM_DD_HH_MI_SS.log, the is one or more lines like this: “INFO: Web app url: some url binding here”. What does that look like?
- In the ReportingServicesService_YYYY_MM_DD_HH_MI_SS.log, there are three lines like below:
- INFO: Using report server internal url <a url here>.
- INFO: Using report server external url <a url here>.
- INFO: Using url root <a url here>.
By the way, how confident are you in performance of the Windows NLB? How do you know if that is not acting up?