Top Five Azure Announcements at Microsoft Build 2017

Microsoft’s annual Build developer conference was held May 10-12 2017 in Redmond, and included a number of exciting announcements about the Azure cloud and surrounding ecosystem of services and tools. What follows here is my short take on the most interesting of those.

Azure IoT Edge

Azure’s IoT capabilities have steadily progressed over the last few years to enable many kinds of semi-connected devices to integrate with Azure’s securing and reliable messaging infrastructure so that cloud-based processing and analytics can act on data from the field and then push decisions and updated data back to those devices.

One obvious hole in the strategy has now been addressed, further enhancing the capabilities of the Azure IoT solution. Azure IoT Edge now allows computation, data filtering, and analytics capabilities to run not only in the Azure cloud but on the edge, at each individual device. This enables a whole range of new scenarios not easily achievable with Azure’s prior IoT offerings: disconnected data processing, data flow and latency optimization for low bandwidth scenarios, secure processing for sensitive data, highly distributed analytics processing to take advantage of increasingly capable edge CPUs, and more.
For further details on Azure IoT Edge and to enroll in the product preview, see the main Azure IoT Edge product page

And to see Cloud Academy’s Azure IoT Learning Path (featured in the Build keynote!) check us out here:
Learning Path Azure Internet of Things

Cosmos DB

One of the most exciting announcements at Build was the formal rebranding of Azure’s NoSQL DocumentDB database into Cosmos DB. Cosmos DB provides geo-scale, low-latency JSON-backed data storage with support for SQL queries, MongoDB API compatibility, Javascript-based stored procs and triggers, and much much more, all in a fully managed service offering that frees you from administrative details and lets you focus on your business need. New features in Cosmos DB are support for graph-based queries as well as API compatibility with the Azure Tables NoSQL store, as well as additional options for configuring data consistency and scalability.

Here’s a brief demo of the geo-replication capabilities of Cosmos and DocumentDB, from my recent Cloud Academy course

Azure Functions Runtime and Visual Studio Tools

Azure Functions have been around for a little while now, and have started to gain real traction for uses like lightweight microservices implementations and glue code within DevOps workflows (you have seen my Azure Functions course, right?).

One problem they’ve had from the outset, however, is a relative lack of good tooling for development and debugging. This isn’t all bad since an advantage of serverless compute like Functions lies in its simplicity and browser-based authoring and deployment model. Still, those of us comfortable in full-fledged editor environments like Visual Studio do enjoy our comforts… and Azure Functions has seemed like a bit of a backward step in that regard. But no more.

At Build, Microsoft released two preview tooling features for Functions… the ability to host and run the Azure Function runtime locally in your own environment, and Visual Studio integration for local testing and debugging of function code, and easy deployment up into your Azure subscription. These capabilities start to round out the DevOps and testing story for Functions and will help make serverless compute more palatable for Microsoft’s traditional developer base.

Read more about the local Runtime support here
And find more info on the Visual Studio tooling here:

Azure Cloud Shell

Those of you paying close attention to the Azure Portal UI in early May 2017 (during the week leading up to Build 2017) will have noticed a familiar looking icon in the upper corner of the screen:
Azure Cloud Shell
Many folks speculated that this would be a portal-based command line interface of some sort… and they were right!

The Azure Cloud Shell is now available for all Azure users. It’s a full-fledged Bash shell running on a cloud-based VM, with durable storage on an Azure file share (created on first use). It comes pre-configured with the latest version of the Azure CLI, reducing or eliminating the need for you to install it on your local machine. It also auto-authenticates to your Azure account and subscriptions, eliminating the Azure CLI “Authentication Dance of Love” we all know so well.

The Cloud Shell is likely most relevant to developers and other folks working interactively with Azure resources on a regular basis; it’s probably less immediately relevant for tasks like automated DevOps pipelines. And I did have some minor difficulties configuring things like the Kubernetes CLI, though those are likely temporary issues (or pilot error 🙂 ). Long-term, this is definitely a tool you want to keep handy in your Azure developer toolbox.

Check out this short video tour I made of the new shell here:

Azure Portal App for Android and iOS

Another long-overdue addition to the Azure developer and DevOps toolkit are full-featured mobile apps for extending Azure administrative capabilities to your phone. Azure apps for both Android and iOS were launched at Build 2017, and promise to make it even easier for you to spend too much time staring at your phone, and not enough time in the real world. 🙂
You can download the freely available apps from Google Play
Or you can download it from the App Store

Cloud Academy