What is the most covered way of scripting Azure resources? - azure

I know of ARM, the REST SDK and the CLI Powershell cmdlets.
What I want to know is; which of these has the most extensive support for scripting resources without having to touch the (indeed very slow) Azure Portal?
And I would also really like to know which one of these Microsoft usually ship first with regards to preview features?

Each service in Azure is exposed using a REST API. Most of those APIs are publically supported. Some aren't.
It depends on the team that builds the elements that make up Azure and often their primary customer base. The Windows IaaS and AAD teams have been mostly PowerShell first. Machine learning and AI seem to favor azure-cli, which is built in Python, a very commonly used language in big data scenarios. The Azure Devops team has recently moved from the Visual Studio to the Azure brand (formerly Visual Studio Team Services, Visual Studio Online, Team Foundation Service preview). Their tools are mostly Node and Powershell based. Not everything in Azure is a "Resource", per se. So not all things are created or updated using Azure Resource Manager Templates (ARM).
So, unfortunately, there is no golden hammer when it comes to automating Azure.

Azure REST Api is, obviously, the best way to go, but its the least convenient (there probably is a better word for this). I really like arm templates, they (basically) allow you to define REST api calls you want to do and allow to do some looping\parametrizing\etc. As arm templates are just a proxy for the rest api, they usually work really well.

Related

Azure Logic Apps Enterprise Integration Pack Visual Studio 2015 Problem

To create an enterprise integration solution using Azure Logic Apps I am trying to run the Enterprise Integration Pack in Visual Studio. I see that is supported only for VS2015.
installer
interesting blog EIP
But with many attempts my VS2015 installation for some reason never installs all tools with success (adding Azure SDK, EIP, App Logic Tools, sign to Azure Subscription with MFA..). And it is not supported anymore. Ultimately my target is to test complex XML mapping creating XSLT graphically (because for complex use case make it graphically is strongly easier). Essentially creating graphically what is called in Logic Apps "Maps". So how can I achieve that by passing all issues with VS2015?
Just to show one issue that I get when I try to loging to my Azure Subscription that is MFA:

What other GUI ways to manage Azure cloud services except Management Portal are there?

Microsoft promises to discontinue the old (Silverlight) Management Portal "this summer" so we now have to use the new (HTML 5) portal.
I personally and several people I've talked to find the new portal awful because it doesn't provide as fine control as the old one did. We find it so bad that maybe even consider writing our own tools.
Yes, I'm well aware about cmdlets, Management API, but I'd prefer something with GUI more or less like the old portal.
What other ways are there to manage Azure cloud services that provide GUI and fine control?
Do take a look at Cerebrata tools especially Azure Management Studio: http://www.cerebrata.com.
If you aren't ready for all the features of Azure Management Studio then try the free Blob manipulation tool, Azure Explorer, which is robust and very easy to use:
http://www.cerebrata.com/labs/azure-explorer
(Short video review here: http://www.youtube.com/watch?v=NO7g7XCDEIg)
For what it's worth, I think the Azure team have done a really excellent job with the Portal, including just the right amount of functionality for the majority of users.

Drawbacks to Team Foundation Service and TFS on Azure

I'm an MSDN subscriber beginning a personal project that will involve WPF, Web Services, and SQL Server. I'm planning on using my MSDN benefits to host the Web Services on Azure and the database on SQL Azure.
I was going to run TFS on my own dev machine, but then heard about Microsoft's Team Foundation Service cloud offering. Also, it appears that I could run my own instance of TFS on Azure. At this point I'm thinking that Team Foundation Service is the best option because:
I'd prefer to have TFS in the cloud over my main dev machine so that I can access it anywhere and not have to worry about having to back it up.
I'd rather not have to worry about setting up and administrating TFS on Azure if I'm not getting anything extra out of it.
I'm not exactly sure if setting up and using TFS on Azure will be free (or continue to be free) with my MSDN Subscription.
Has anyone experienced any major drawbacks to using Team Foundation Service, like a major loss of flexibility or functionality?
I've been using TFS Services since it has been in preview for my personal work - and I haven't had any limitations in terms of source control/build services. The service is fairly comparable to the full TFS server; but doesn't include the more advanced features such as test automation.
The pricing page also states that service will continue to remain free for MSDN subscribers: https://tfs.visualstudio.com/en-us/pricing/information/
Before TFSPreview existed, I asked some people in the know at MS about running TFS in Azure and I was told that there are some non-trivial problems with running TFS on a virtual machine on Azure. I believe this is why MS are offering TFS as a service rather than as a template for a virtual machine. As such, if you want to use TFS and you want it to be in the cloud, I'd definitely use the TFS Preview.

Is azure for big applications only?

I've recently been asked to redevelop an .Net 2.0 WinForms application with a back end SQL Server Express DB.
One of the requirements is to allow remote users access to the application, so I've been considering hosted options to avoid VPN setup. The data is not sensitive and does not fall under data protection act, so a basic security approach for the web will cover me.
I like the idea of using Azure for a few reasons, but I'm not sure if a good fit for a users base of 5 or 6 with no real scope to grow. I've never used Azure and I plan to develop using MVC and a SQL backend as this is my main skillset.
A few points in favour of Azure in my mind are:
Tight integration with the TFS preview that I'm using for this project
Easy to setup a sandpit and a live version
Easy maintenance as I expect other hosted options will require more knowledge of underlying OS
Sticking to a full Microsoft stack should hopefully make things simpler
From what I find on the Azure site the message is all about scalability, which is great if you need it.
My question is simply, do you need a large user base, or plans to grow quickly, to use azure or is it how we should be hosting apps now?
What you're asking here is the perfect case for Windows Azure Web Sites:
You get 10 web sites for free (no custom DNS, but this is perfect for your 'sandpit'/test version). The shared mode supports custom DNS and is very cheap.
Tight integration with TFS preview and GitHub
You don't need to worry about the underlying OS, you simply publish from Visual Studio or with TFS Preview.
Sticking to the Microsoft stack is the easiest solution, but other technologies work great aswell. Since you're talking about MVC I'm assuming you are considering ASP.NET MVC, which is a perfect match with Windows Azure. Take a look at the training kit for some good examples.
The day you'll need a solution which more scalable (meaning you'll have more users and more income) you can easily upgrade to a reserved instance or to a Cloud Service (Web/Worker Role).
About your question: "My question is simply, do you need a large user base, or plans to grow quickly, to use azure or is it how we should be hosting apps now?"
Windows Azure is a cloud service platform (includes PaaS as Cloud Services, IaaS as Windows Azure Virtual Machines and also Websites suggest by Sandrino above), and with cloud services you have ability to start very small and grow as much and as quickly as your user requirement is, so you can use Azure with both cases. On the other hand there are some advantages using certain offering depend on your which service you are going to use to run your application.
I think article (Section: "What Should I Use? Making a Choice") will explain the strategy about how you make a selection among various services.
This SO discussion does talks about the difference between cloud Services and Azure WebSites as well.

Enterprise LIbrary and MS Azure Articles?

Just wondering if anyone has had any experience using MS Azure and the Enterprise Library? I can't seem to find any articles on this and hoping (really hoping) someone has some?
Enterprise Library is big... which part were you particularly interested in?
In general, you won't have any problems, since Azure now supports full trust. However, some parts won't really make sense... for example, you can't use Enterprise Logging to log to a "C:\MyLog.txt", since you won't be able to log anything to a "local drive" in the cloud. Perhaps you could write a logging provider to Azure table storage however, for example.
See this whitepaper "Using classic Enterprise Library 5.0 in Windows Azure".
Also, check out the specially designed Enterprise Library Integration Pack for Windows Azure which introduced 2 new application blocks - the Autoscaling Application Block ("Wasabi") and the Transient Fault Handling Application Block ("Topaz".

Resources