Microsoft's cloud service, Azure, provides a plethora of services to choose from when it comes to running your solutions on the cloud. By now, most of us are aware of the PaaS, IaaS and SaaS variances. The image below provides a good summary, in case you're new to this. The trick with the cloud is how to choose the right service or combination of services to make your solution as flexible, scalable and performant as possible while cutting down on costs. However, if there's one thing you need to be careful about is that you should avoid the "lift and …[read more]
Showing all posts tagged: 'devops'
A 10-post collection
DevOps, micro-services, containers, Agile etc. All these terms are widely (ab)used in the developer circles and for many developers they are the norm. There's no tech conference today that doesn't have a track on at least one of these and for a good reason. They are the new and, almost, established way of working with code. Some of them have been around for a while, so they are well established. Others are just getting into the enterprise world - think of containers here. DevOps is definitely not new. If you're a developer, you've been doing DevOps for a long …[read more]
Last week I started a mini-series that focused on [Azure Functions and DevOps. The tooling is still being worked and in the interim we need a solution in order to do proper CI/CD with Azure Functions. In this post we're looking into how to deploy Azure Functions using ARM Templates only. That's correct. This is a one stop solution but requires that you include your function code inline to the ARM JSON template. This is somewhat undocumented and I had to figure out how do it with help from the Azure PG (product group). The good parts Obviously this …[read more]
This approach is by far my preferred and favourite. Ok, it's not perfect but I believe that it provides the most open source, versatile and flexible way to deploy your functions using any tool and any platform. This one does not require you to install any special tools other than the Azure CLI on your build server. In this step, rather than trying to do everything from one file, i.e. the ARM template, I decided to go with the 2 step approach: Deploy the ARM template with the Application Service and Function(s) structure Deploy the Function(s) code. …[read more]
Azure Functions is Microsoft's answer the serverless architecture. They are very popular due to the incredible integration they provide with Azure Services, SaaS providers and on-premise application. It definitely drives the whole microservice architecture design which is built on top of Azure's established Platform-as-a-Service. And enables developers to think about APIs and integration in a totally different way - serverless (even though there are still servers under the hood). It's even more exciting seeing so many organisations embarking in larger scale projects that take advantage of Functions and LogicApps. If you want to know more about the whole serverless design, …[read more]
What is a service principal? Azure has a notion of a Service Principal which, in simple terms, is a service account. On Windows and Linux, this is equivalent to a service account. These accounts are frequently used to run a specific scheduled task, web application pool or even SQL Server service. In a cloud context, Service Principals are the new paradigm. They are great because they allow you to provision an account that only has enough permissions and scope to run a task within a predefined set of Azure resource. It is vital that you don’t use your own …[read more]