I have a windows azure web role that has 2 instances. I would like to web deploy to these instances from VS as to avoid doing a full deployment that takes ~ 10 - 15 minutes.
I know this used to be possible with the [now deprecated] Azure Accelerator for Web Roles. Is this possible now?
Web Deploy still works, but only for single instances and only for testing purposes (ie. you can't use it for a production site where you expect the changes to persist across VM reimages or node movements).
See http://blogs.msdn.com/b/cloud/archive/2011/04/19/enabling-web-deploy-for-windows-azure-web-roles-with-visual-studio.aspx and http://msdn.microsoft.com/en-us/library/windowsazure/ff683672.aspx.
To enable Web Deploy, you must install the Windows Azure Tools and the Windows Azure SDK from the Microsoft Web Installer 3.0 page of the Microsoft website.
But, be aware, you cannot have multiple instances of any web role in your deployment environment. However, multiple web roles each with only one instance are supported.
Related
I have been using Visual Studio to manage and develop an application that runs on a Windows Azure web role. It's an ASP.Net WebApi Application that connects to a backend SQL Azure Database. The code base is hosted on GitHub.
I have read about Monaco and its ability to edit Windows Azure Web Sites but I have not seen any references to the tool being used or able to be used to change a Web Role.
Is this possible with Monaco?
That feature is built into the Azure environment for Websites only. The deployment model for Web and Worker Roles differs substantially from that used for Websites.
I'm working on a project that includes an ASP.NET Web API site to be consumed by an Android and iOS app. The API is connected to a SQL Server database. I'm at a point where I want to publish my project to the Azure Cloud, but am trying to figure out what would be the best configuration.
The configuration needs to be scalable and reliable as the plans for this product will be accessed by many at the consumer level.
API Hosting
What do I use within Azure to host the API? Do I go with the Azure Web Site service? Or the Cloud service? or something else? I know I don't want to go Virtual Machine as I don't want to have a lot of maintenance.
One thing I should add here, I plan on having a Test/Qual environment as well as a Production environment in Azure.
SQL Database
This one seems easy for me, I will need to utilize the SQL Database service through Azure.
Scheduler
I have one final need of various jobs that need to run at night on some form of schedule. Would you agree that utilizing the Azure Scheduler service would be much cheaper than having either a Cloud service or Virtual Machine running scheduled tasks? Instead I could use Scheduler to utilize various web services at set times?
While Azure Web sites and Azure Web roles (cloud services) are very similar, the below are the most notable differences in my opinion:
Web Roles are cheaper than Web sites. There is a free offering for websites, but it has significant drawbacks.
Web sites are easier to manage and operate
You can deploy web sites from git.
You can use remote desktop to connect to Web roles.
You can use Worker Roles for background tasks from Web roles. Recently Websites introduced web roles which lessens the need for worker roles, note that this is as of today still in beta.
I wanted to host my WebApi project on azure. But I am not getting sure which way should i use to run it on azure. Like there are Websites, Cloud Services that contain Web role and Worker role. Then which one should i choose. If cloud service is the option then which one out of Web role and worker role is good?
Any help is appreciated.
For hosting a simple web API (that you can scale according to usage, etc.) you'll want to use Websites. Assuming you're not looking for more complex / heavy-weight features (network configuration, more complex architectures e.g. offloading background processing different instances via queueing mechanisms, RDP into the host machine, etc.), then Websites are becoming the de-facto way to host websites on Azure.
The following page from the Azure documentation will give you a full feature comparison between the two:
http://azure.microsoft.com/en-us/documentation/articles/choose-web-site-cloud-service-vm/, but in short, if you simply have a web API project in VS that you want to host in Azure without worrying about the underlying infrastructure, then use Websites.
If you only want to host a Headless (No Web Interface) Web API, I recommend you using Azure Web Service - Web Role.
For Worker Role, it is like a console application that you want to use it to process background task. Normally, we use it to process from Message Queue (Azure Service Bus - Queue).
Azure create a Optimize VM to run those two type of Roles with no unnecessary junks. So you will get the most of it.
However, I still suggest you to read more detail document from azure website to see what environment which is best fit for your long term plan.
You need to login in Azure (https://manage.windowsazure.com) -> Web Sites -> Create New
After that you will find the Name of the Web Site Under the Web Sites.
Click Web Sites -> Select New Created Web Site -> Go TO -> Deployement
In Deployement -> Find -> Integrate source control
Select Appropriate Option i.e GitHub or Dropbox etc..
Using Dropbox => Now Publish your WebApi Project and Paste that Data into Dropbox Folder With the same name of your New Created Web Site in Azure
After Upload Go To -> Azure -> Select Web Site -> Deployement -> Sync.
It will take all the data from Dropbox and You can run your WebApi Project From Azure
More Details Link, Link2, Link3
i have azure role hosted as cloud service, i am trying to install the application initialization as suggested in below link:
http://fabriccontroller.net/blog/posts/iis-8-0-application-initialization-module-in-a-windows-azure-web-role
but how will all my sites in this single WebRole will remain warmed up?
I have followed up the steps told in above link. But not sure how it will managed with multiple websites in single role.
I have a silverlight based application consisting of charts using silverlight toolkit and connected to database using RIA Services (Domain Service class, ADO.NET entity model). I want to deploy it to my windows azure account online.
I recently encountered
Instance 1 of role Website is busy
Instance 1 of role Website is cycling
I encountered this issue again and again.
Note : My Windows Azure SDK is updated and I already deployed a MVC based application.
This SOF answer guides that i should add these assemblies : https://stackoverflow.com/a/8966859/1319922
But these are for MVC based project and mine is Silverlight based (using C#).
Is there any assemblies left which i need to add ? Also my project works fine in Local Host.
Also do i need to set some assemblies CopyLocal = true ? And if YES which ones ?
Why i am not able to deploy my app (and getting above error), Is there any other issue ?
Please Reply
Thanks
Since you're using RIA Services it's possible that these assemblies are not available on your Web Role. To view all assemblies available on Web Roles, follow this link: http://gacviewer.cloudapp.net/
You should double check with the assemblies in your ASP.NET Web Role (the one hosting the RIA Services application), and change all assemblies that you cant find on the gacviewer website to CopyLocal = true
Besides that, if you activate Remote Desktop on your Web Role, you can (for testing purposes) connect through RDP and take a look at the event viewer to see what assemblies are missing.