What's up Azure? (July 2020)


With all the partners heading to Microsoft Inspire (Virtual), the last 30 days have been a bit quiet with the extravagant updates, which is most likely to be released in the next 30 days.

As usual the updates were pleanty, with key updates for this month skewed towards;

  • Azure Storage
  • Azure Arc
  • Azure Functions
  • KeyVaults
  • Data Lake

Let’s dig in, What’s Up Azure?

Customer-initiated Storage account failover is now generally available

  • For GRS and RA-GRS Storage you can now trigger the failover manually without Microsoft having to detect an issue with the primary region. At the point of writing this post the feature is broken and Australia doesn’t yet support it.

Storage Account in Australia

Public Preview for Azure Monitor for VMs on Arc Enabled Servers

  • Azure Arc allows you to manage your on-premises infrastucutre the same we as you would manage resource on Azure. This includes your Servers, Kubernetes Clusters and Azure Data Services Running on Arc. As announced at Inspire, Azure Arc is getting closer to GA. Arc will provide number of operational benefits to end-users and partners alike.

  • This feature addition effectively extends Azure Monitor for VMs to Azure Arc Instances.

Azure Arc

Learn more about Azure Arc

Durable Functions support for Python

Might not make everyone excited. But,I am. Durable functions allow you to extend the capabilities of Azure Functions to new heights.

  • Function Chaining
  • Fan out/fan in
  • Async HTTP APIs
  • Monitor
  • Human interaction

E.g. Fan out/in

Fan out/in

import azure.functions as func
import azure.durable_functions as df

def orchestrator_function(context: df.DurableOrchestrationContext):
    parallel_tasks = []

    # Get a list of N work items to process in parallel.
    work_batch = yield context.call_activity("F1", None)

    for i in range(0, len(work_batch)):
        parallel_tasks.append(context.call_activity("F2", work_batch[i]))
    outputs = yield context.task_all(parallel_tasks)

    # Aggregate all N outputs and send the result to F3.
    total = sum(outputs)
    yield context.call_activity("F3", total)

main = df.Orchestrator.create(orchestrator_function)

Read More about Durable Functions

Azure Monitor for KeyVaults in Preview

New Section introduced in Azure Monitor. Also, avaialble under insights of individual instances. Azure Monitor KeyVaults

Azure Data Lake Storage

Few new additions to the capability set;


  • Static website
  • File snapshots
  • Immutable storage


  • Archive tier

Azure Well Architected Framework

  • Rings a bell!? - yup yup » https://aws.amazon.com/architecture/well-architected/


Azure Pipelines Sprint 171

  • Pipeline resources get additional filter with the the support for ‘Tags’
  • The hosted agents how support Linux/ARM64
  • The allowed list of tasks for pipelines now can be configured at: https://dev.azure.com/<your_org>/_settings/pipelinessettings adding more meat to the goverenece of Azure DevOps.

Azure Pipelines Sprint 172

  • Exclusive deployment lock policy - only one pipeline can can deploy to an environment at a given point of time.
  • Pipeline resources get additional filter with the the support for ‘Stages’
  • Generic webhook based triggers for YAML pipelines - Trigger deployment based on external events via webhooks. Syntax now supports a resource called webhooks
  • YAML resource trigger issues support and traceability - You can now find out as to why a pipeline was not triggered.
  • Banner for live site incidents impacting pipelines - No comments!