Performing Application Upgrades on Azure VM Scale Sets

Virtual Machine Scale Sets (VMSS) are an awesome solution available on Azure, providing autoscale capabilities and elasticity for your application. I was recently working with a customer who was interested in leveraging VMSS on their web tier and one of the points we focused on was how to do an upgrade of an application running…

0

Deploy Java 8 Spring Boot API to Azure App Service

Spring is a popular framework for Java based application development.  Spring Boot makes Spring based application development easier by automate and encapsulate some complexity such as dependency and configuration management.  Recently, I have a customer asking how to deploy a Spring Boot based Java API app to Azure.  While there are several articles on similar topics, I…

0

Deploy Node and MongoDB app to Azure Web App on Linux and DocumentDB

Azure App Service recently added Linux option (in preview) for hosting web application on Linux natively (https://azure.microsoft.com/en-us/documentation/articles/app-service-linux-readme/).  This makes it easier to deploy Linux based solutions such as MEAN (MongoDB, Express, Angular, and Node.js) stack based web applications to Azure app service. On a similar topic, Azure DocumentDB recently included MongoDB API support (https://azure.microsoft.com/en-us/documentation/articles/documentdb-protocol-mongodb/). This…

0

Creating Azure Resources with ARM Templates Step by Step

The files used in this article can be found in GitHub here: https://github.com/ssemyan/BasicAzureLinuxVmArmTemplate There are many ways to script the creation of virtual machines, services, and other resources in Azure. Available tools include PowerShell, cross-platform command line tools, and SDKs for Java, .NET and other languages. These resources can be found here. Azure Resource Manager…

0

Blue/Green Deployments in Service Fabric

The technique of Blue/Green deployments has been around for a long time. The goal is to reduce downtime by provisioning two identical production environments and switch between them during releases. It also enables easy rollbacks in case of a bad upgrade. In the world of Service Fabric, all upgrades are always Rolling Upgrades, which enables…

0

Distributed Tracing in Service Fabric using Application Insights

Logs are critical to any system for monitoring and diagnostics. In the world of microservices, the challenge is not only to collect logs from all the distributed services but also to enable tracing of a request and all its internal dependencies to troubleshoot which service dependency flow had the issue. Service Fabric uses Event Tracing…

4

Create an SSL enabled Web server farm with VM Scale Sets

(from Christoph Schittko) This template illustrates secure deployment of SSL certificates to a VM Scale Set running apache web servers. The SSL certificates are pulled securely from Azure Key Vault and pushed to the VM using secure ARM deployment This sample illustrates how to Store SSL certs from a 3rd party CA securely in Key…

0

Trying out Docker for Azure (Beta)

Docker for Azure lets you quickly setup and configure a working Docker 1.12.1 swarm-mode install on Microsoft Azure. Currently it’s in private beta. You can Sign Up to get access. Once you get the access you would get an email with instructions on how to set it up. It is simply an ARM template which…

2

Use Azure DNS Service (preview) from Azure VMs

Azure DNS service (preview) is a hosted service for DNS domains, providing name resolution using Microsoft Azure infrastructure. Instead of creating your own DNS servers in an Azure environment, you can use Azure DNS service for name resolution in your Azure environment very conveniently. This article walks through how Azure IaaS VMs (windows or Linux)…

0

ARM template enforcing script execution order and timing in a loop

In a recent project we were trying to setup an active-active MariaDB cluster with custom script extension in an ARM template.  The VMs were created in a loop.   The scripts were written to have strict order of execution.  Script for second VM should not start to execute until script for the first VM has completed…

0