Azure Management Tools

Azure Management Tools

There is a myriad of ways to manage and control resources in the Azure cloud. The most common way to do this is by simply visiting the Azure Portal which can be found at https://portal.azure.com. In addition to the graphical user interface offered at the Azure Portal, we have the ability to manage and interact with Azure via Azure Powershell, Azure Command Line Interface (CLI), Azure Cloud Shell, and the Azure Mobile Application available on iOS and Android platforms. In this article, we’ll take a look at these various options for managing Azure and how best to use them for day-to-day tasks.


Azure Portal

Azure Portal
The easiest and most common way to manage Azure is via the Azure Portal where you can manage subscriptions using the friendly graphical user interface. The Azure Portal is located at https://portal.azure.com via your favorite web browser like Microsoft Edge, Mozilla Firefox, Google Chrome, and Apple Safari.

Azure Portal Customization

azure portal settings options

If you select the settings gear in the upper right of the Azure Portal, you are provided with many options regarding the entire Azure experience. The top-level settings include:

  • Directories + subscriptions
  • Appearance + startup views
  • Language + region
  • My information
  • Signing out + notifications

Within each top-level are many additional settings. A nice feature in the Appearance section of settings is that the look and feel of the Azure Portal can be entirely customized. Menus can flyout, or be docked. The color theme options include Azure, Blue, Light, and Dark. If you like high contrast, that is available in a Black or White appearance. Lastly, the startup view can be selected so that the initial experience is the same each time the Azure Portal is accessed.


Azure Cloud Shell

Azure Cloud Shell
The Azure Cloud Shell is an interactive shell that you can access in a web browser right from the Azure Portal. Many Microsoft Azure Labs tutorials make use of the Azure Cloud shell to quickly manage resources in Azure. In the Azure Portal, you can click the icon shown below and you are offered the option to work with Bash or Powershell.

how to access azure cloud shell

  • Azure cloud shell is an interactive, authenticated, browser-accessible shell for managing Azure resources.
  • It provides the flexibility of choosing the shell experience that best suits the way you work, either Bash or Powershell.

Azure Powershell

Azure Powershell
Azure Powershell is a collection of Powershell cmdlets for managing Azure resources from Powershell on a Windows PC or a MacOS that supports Powershell.

  • Powershell is a task automation and configuration management framework. A command line shell and a scripting language.
  • Powershell is built on top of the .NET Common Language Runtime, (CLR), and accepts and returns .NET objects.
  • Azure Powershell is a set of cmdlets for managing Azure resources directly from the PowerShell command line.

Azure Mobile App

azure moble application
The Azure Mobile App is available on both Apple iOS and Android devices. It’s not the preferred method to for most folks to interact with Azure, yet it is an impressive application for a mobile and you can still get resources set up and monitored with it.


Azure CLI

Azure CLI
Azure CLI is used for bash style interaction with Azure. It is popular with open source developers and is available on Windows, macOS, Linux, Docker, and Azure Cloud Shell.

  • A command-line interface processes commands to a computer program in the form of lines of text. Operating systems implement a command-line interface in a shell or terminal.
  • The Azure CLI can be installed on Windows, Mac, and Linux. Once installed you can type “az” followed by other commands to create, update, delete, view, and manage Azure resources.

Example Azure CLI Bash Code to Create a resource group

#!/bin/bash

# Create a resource group.
az group create --name myResourceGroup --location westeurope

# Create a new virtual machine, this creates SSH keys if not present.
az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --generate-ssh-keys

# Open port 80 to allow web traffic to host.
az vm open-port --port 80 --resource-group myResourceGroup --name myVM 

# Use CustomScript extension to install NGINX.
az vm extension set \
  --publisher Microsoft.Azure.Extensions \
  --version 2.0 \
  --name CustomScript \
  --vm-name myVM \
  --resource-group myResourceGroup \
  --settings '{"commandToExecute":"apt-get -y update && apt-get -y install nginx"}'

Azure Advisor

Azure Advisor
Azure Advisor is a tool that scans Azure configurations and recommends changes that can help optimize deployments, increase security, and save money. This tool is used for existing resources in Azure subscriptions. It is not used on new deployments. Azure Advisor focuses on the areas of high availability, security, performance, and cost of resources that are already deployed.

  • Azure Advisor is a personalized cloud consultant that helps you follow best practices to optimize your Azure deployments
  • The advisor dashboard displays personalized recommendations for all subscriptions for the following 5 categories:
    • High Availability
    • Security
    • Performance
    • Cost
    • Operational Excellence

ARM Templates

Azure ARM Templates
ARM templates are written in JSON and define the infrastructure and configuration of an Azure project. These templates use a declarative syntax and are idempotent. Idempotent means that you can deploy the template any number of times and the resources and state will be exactly the same. Therefore ARM templates are considered best practice, and reliable when building out Azure environments. Microsoft offers over one thousand quickstart templates. ARM Templates are also sometimes referred to as Infrastructure as Code.

  • Azure Quickstart is a libray of pre made ARM templates provided by the community and partners to help you quickly launch new projects for a variety of stack scenarios.
  • Some examples include:
    • Deploy a Django App
    • Deploy an Ubuntu VM with Docker Engine
    • CI/CD Containerized App Deploy with Docker and Jenkins
    • Web App on Linux with PostgreSQL
  • Ensure deployments of like Azure resources are the same for every deployment

Azure Monitor

Azure Monitor
Azure Monitor collects monitoring telemetry from various on premise and Azure sources. Other management tools like Azure Security Center push log data to Azure Monitor. Azure Monitor then aggregates and stores this telemetry in an Azure Log Analytics instance. A backend data store provides the plumbing for Azure Log Analytics.

  • Azure Log Analytics is used to correlate events from multiple Azure resources in a central repository.
    • Azure Monitor is a comprehensive solution for collecting, analyzing, and acting on telemetry from the cloud and on prem environments.
    • Create Visual Dashboards
    • Smart Alerts
    • Automated Actions
    • Log Monitoring

    Application Insights is a part of Azure Monitor. It is an extensible Application Performance Management (APM) service for developers and DevOps professionals. AAI is good for monitoring customer-facing web apps for performance anomalies.


    Azure Service Health

    Azure Service Health
    Azure Service Health notifies customers about Azure service incidents and planned maintenance so action can be taken to mitigate downtime.

    Information about current and upcoming issues such as:

    • service impacting events
    • planned maintenance
    • other changes that may affect availability
    • Azure Status – informs of service outages in Azure
    • Azure Service Health – personalized view of health of Azure services in use
    • Azure Resource health – information about the health of individual cloud resources

    Azure Automation

    Azure Automation offers a cloud-based automation and configuration service that supports management in Azure and non-Azure environments. It consists of process automation, configuration management, update management, shared capabilities, and other features. Automation provides complete control during deployment, operations, and decommissioning of workloads and resources.

  • Azure Automation can be used to automate and centrally manage various processes in VMs hosted both in Azure and on-premises