I often heard that it is senseless to run a SharePoint server in a Windows Azure vm role since a vm role loses its state after a reboot.
I have to admit that I only have little knowledge about SharePoint, but in what way does this affect a SharePoint server? What kind of data is stateful? User content could be delegated to a database in order to persist it, couldn’t it? But what kind of data remains that is lost if the vm role reboots?
Even Microsoft says:
This means that programs must be stateless so that data is not lost when a role fails. Applications such as SharePoint, SQL Server, Small Business Server, and Terminal Server are stateful applications that are not supported in the VM Role. The lack of UDP traffic means that a Domain Controller (Active Directory) will not work in a VM Role.
I’m not certain that this is what Microsoft means:
When you install a “feature” in SharePoint, many of the artifacts installed do not live in the content database. Instead, they live in the “14-hive” (or 12-hive, depending on version). This is a series of folders on disk.
I guess that after a reboot, the content database would indicate that the feature was installed, but the disk would only have the original contents, from before the feature was installed.