MRCollective / AzureWebFarm

MsDeploy enabled Web Farm using Web Roles in Azure based on Windows Azure Accelerator for Web Roles and including a background worker execution model
Other
19 stars 4 forks source link

"Sync" files using Azure Files? #13

Open mikoskinen opened 10 years ago

mikoskinen commented 10 years ago

I'm not sure if there's any need to improve this project anymore as the AzureWebFarm.OctopusDeploy works nicely. But I remember discussion related to this project about how to keep files in sync between the different web servers. Now that Azure Files has been released ("SMB for Azure Storage"), maybe this project could use that service?

MattDavies commented 10 years ago

I actually had that exact same thought when I saw that announcement :)

Taking this approach means we don't actually need to keep anything in sync. At one stage we looked at creating shares ourselves on blob drives to achieve that, but there's the limitation that only one instance can write at a time so managing availability proved too complex - this feature solves that.

There are still a fair few people using this project so I definitely think it's worthwhile looking into.

robdmoore commented 10 years ago

We still need to keep in sync the IIS settings. We have a nice UI now for that too.

I definitely want to add this in. It takes away all of the hard (and buggy) bits of AzureWebFarm :)

woo!

mikoskinen commented 10 years ago

Maybe IIS "Shared Configuration" feature could be used to keep the IIS settings same between the instances? With Shared Configuration enabled, the IIS configuration file can reside on a network share. If one instance modifies the configuration (changes bindings, adds a new site or anything), all the instances are automatically updated.

This post seems to contain a C# example on how to enable shared configuration: http://www.iis.net/configreference/configurationredirection

robdmoore commented 10 years ago

That's certainly an option. We will still need the bulk of the config code we have since the sites need to be created. Although, the cool thing is with a shared config we could allow people to create the app pool as part of the msdeploy by using a post deploy script :)