I have an Azure App Service that contains 1 Web App with 1 slot. I have 2 instances assigned to the App Service. This week, the App Service shows about 60% CPU usage, and its usually about 10-15%. Upon further investigation, it looks like 1 of the two instances is maxed out. When opening up the Site Metrics per Instance, I can see that HTTP Response times are in the 1000s of milliseconds for one instance, and less than 200ms for the other. I have tried restarting the W3P process on the offending instance, but that doesn't seem to help. I have also tried scaling up to additional instances. The new instances look good, but when I scale back down, the fabric won't kill the offending instance.
How can I force the fabric controller to kill off a specific instance?
I found the AzureRestartRole powershell command here (https://msdn.microsoft.com/en-us/library/azure/dn495202.aspx), but my Azure Powershell Command Prompt doesn't seem to recognize the command, so I tried upgrading to Azure SDK 1.3 with the install-module command, but the 'AzureRestartRole' command isn't found.
I recently encounter a similar issue (one bad instance always read null from ConfigurationManager.AppSettings
while the other instance was fine). I found that restarting a particular instance of a Azure App service (web app) is do-able from the Azure portal. :D
Updated Aug 16th, 2019:
The short version is that if you go in the portal for your web app under Diagnose and Solve Problems, search for Advanced Application Restart and you will get an option that allows you to pick just the instance you want.
Hope that helps.