A central hub of Azure cloud migration services and tools to discover, assess, and migrate workloads to the cloud.
Hello Ahmed, it sounds like you’ve got server discovery happily reporting AppsAndRoles=True, but the WebApp agent’s getfabriclayout call still shows zero IIS servers. Here’s how it all ties together and what you can try:
- What feeds the getfabriclayout list? • The Azure Migrate backend only includes machines in getfabriclayout when – Server Discovery sees the IIS role in the software inventory, and – The AppsAndRoles flag is pushed successfully. • In other words, it’s not a separate “magic” property – it’s driven by the combination of:
- your software inventory identifying a web-server role
- the Server Discovery agent pushing AppsAndRoles=True
- What about timing/lag? • Web-app discovery is batched on the service side about once every 24 hours by default. • After you enable web-apps in a project or Server Discovery pushes an updatefabriclayout, it can take up to 24 hours for getfabriclayout to start returning results. • In practice you’ll often see it appear within a few minutes, but it’s not instantaneous.
- Can you force an immediate refresh? Yes – two options: a) In the Azure portal:
- Go to Azure Migrate > your project > Migration Goals > Servers, databases, and web apps
- Click the appliance hyperlink under Discovery and assessment
- At the bottom of the table, select Refresh services
- Open Services
- Restart amwebappsvc (the WebApp discovery and assessment service)
- Why did it drop back to 0 after you re-added the source – and how to avoid it? • Deleting & re-adding the discovery source or credential in the appliance UI effectively clears the web-app cache for that source, so the next sync will start from zero. • Supported way to update credentials without losing your web-app inventory: – In the appliance Configuration Manager, Edit the existing credential (rather than Delete + Add), update the password, and save. – Then trigger an on-demand refresh (portal Refresh services or restart amwebappsvc). This retains the existing server-to-web-app mapping in the backend.
Additional tips:
• Check the Notifications under the Azure Migrate: Discovery and assessment tile – it’ll show any web-app discovery errors (40001‒40007, etc.).
• On the appliance, tail the WebApp agent logs under C:\ProgramData\Microsoft Azure\Logs to see if IIS errors (e.g. 40004 “unable to access IIS config”) are cropping up.
• Verify the IIS Management Console feature is still installed and your service account still has full access to %windir%\System32\inetsrv\config.
Hope this helps. and please feel free to reach out if you have any further questions.
Reference documentation
• Resolve common Azure web app discovery issues
• On-demand web app discovery (portal Refresh services / restart amwebappsvc)