Increasing automation opportunities with Azure

Image result for azure automation

Automation (and Orchestration which is succinctly different) is always a hot topic for many organisations, for a variety of reasons. From freeing up time completing repetitive tasks, reducing errors in execution (because we’re human!) to making the environment you manage much more efficient are all key benefits.

But what is Automation (and Orchestration if it differs?) At the highest level automation is the ability to take a task, or procedure that you may execute manually and automate it. This task may involve several stages and automation will perform those stages given an input automatically. Examples may include restarting a service, deleting temporary files or creating accounts. Orchestration takes this a step further and allows you to take a series of “tasks” and orchestrate them into a workflow. Examples may include joiner/leaver/transfers account management, virtual machine, application or service provisioning, etc.

For most IT pros, automation has always been something that we’d like to do but either suffer from lack of time to develop the required script/Runbook, lack of environment from which to build the automation or have a mixed estate for which common automation tools have been difficult to come by.

Since Microsoft acquired Opalis in late 2009, Automation trends have become much more commonplace due to the ease by which automation can be created. System Center Center Orchestrator (the evolution of Opalis) provided a platform from which automation “Runbooks” could be created and executed. Using this technology, Organisations began to expand their automation capabilities to create highly automated, self-service driven  environments. Alternative technologies exist outside of the Microsoft ecosystem, e.g. VMware vRealize or Cisco UCS Director.

Whilst Orchestrator is still an excellent technology it requires a fairly hefty server footprint needing management, Runbook, web and database servers to function. In a highly available configuration (and hey, you’ll want your automation platform HA!) this can be a costly investment that requires on-going management and maintenance even before you start to automate.

Azure has evolved this by providing automation technologies in the cloud. This allows you to automate both on-premises workloads as well as cloud based workloads. The following technologies are relevant to Automation in Azure:

I wanted to focus on some of the capabilities within Azure Automation for this particular blog post, but it is worth giving a quick mention to Azure Functions as a possible automation engine, as I’ve seen several customers using this to date. Azure Functions is one of the serverless technologies within Azure providing an engine that can execute several programming languages (C#, JavaScript, PowerShell, etc.) Since majority of operational based automation is created using PowerShell scripts, then Azure Functions can provide a good option. Functions supports Web Hooks (HTTP) which can act as a trigger to run your code. In addition, Functions can also use timers which can execute at a particular date/time.

Whilst Functions provides a legitimate engine for your code, it lacks some of the Azure Automation features, e.g. Hybrid worker roles for on-premises execution. Azure Automation is essentially the cloud/PaaS equivalent of System Center Orchestrator on-premises. It allows you to create either your own PowerShell workflows or use one of the many available via the gallery. The service can be found under “Automation Accounts” in the portal, and the main functionality concerning this post under “Process Automation” with “Runbooks” (and the gallery) as seen in the figure below:

image

As you can see from the following figure, there are numerous pre-canned Runbooks available. These can either be used as-is, or could form the basis of your own Runbooks:

image

Reviewing one of the options takes you to the PowerShell code for that particular script and provides an option for you to “import” to your own automation account for execution:

image

From here you can then edit the script, configure WebHooks, deploy or publish the script:

image

Azure Automation is not only concerned with automation of bespoke activities via Runbooks, it also contains other great functionality, e.g.

  • Ability to perform update management (similar to traditional WSUS / SCCM technologies),
  • Ensure compliance of your workloads via desired state configuration (DSC) which can track configuration and ensure the machine meets the desired state
  • Perform inventory management of your services, in a similar way that you would use tools such as Configuration or Operations Manager
  • Track and manage change related activities integrated into your existing ITSM processes

It is worth nothing that a recent preview announcement for Azure Automation is the introduction of watcher tasks. This relies on the Hybrid Worker role for on-premises integration and allows automation to be triggered when a specific activity occurs, e.g. new ticket in a helpdesk, new event in a SOC, etc. More information can be here.

From a pricing perspective, Azure Automation is very competitive. Process related automation is priced per job execution minute, whilst configuration management tooling is priced per managed node. Typically you get 500 minutes free, per month and then each additional execution per minute is charged at £0.002. You can wrap pricing into the Operations Management Suite (OMS) technologies for further functionality and value.

In summary, Azure Automation is a mature, well developed and agile platform to satisfy your automation requirements. It provides great features and is continuously evolving. Even better, you can take advantage of pre-canned Runbooks, rather than having to write them from scratch!

Azure Virtual Datacentre – Free eBook

Related image

Governance in Azure is a hot topic and I often find myself talking to customers about Azure Enterprise Scaffold which is a prescriptive approach to subscription governance. I noticed today that a new (free) eBook has been released by the Azure Customer Advisory Team (AzureCAT). This book discusses how hosting on a cloud infrastructure is fundamentally different from hosting on a traditional on-premises infrastructure, and provides detail about how you can use the Azure Virtual Datacentre model to structure your workloads to meet your specific governance policies.

The first part of the eBook discusses three essential components; Identity, Encryption and Software Defined Networking with compliance, logging, auditing and reporting running across all these areas. It goes into detail about the technologies available in Azure that can help you to achieve this, for example Microsoft Compliance Manager, Availability Zones and other features such as Global VNet peering which I’ve discussed in other blog posts. It also talks about new and upcoming features such as confidential computing through TEE as well as virtual machine capabilities such as Secure Boot and Shielded VMs. There are many more areas discussed in the book which is well worth reading.

The second part of the eBook brings this to life using Contoso as an example case study and this helps you to visualise and understand how you could interpret it for your organisation. The final part of the book discusses the cloud datacentre transformation, and how this is an on-going process to modernise an organisations IT infrastructure. It talks about the balance between agility and governance and discusses some common workload patterns.

This looks to be a great read (kudos to the AzureCAT team!) to make what is a difficult area easier to understand, and also provides a great model to pin design considerations against. Look forward to reading it in more detail later! The book can be downloaded at the following link: https://azure.microsoft.com/en-us/resources/azure-virtual-datacenter/en-us/

Recap of key Azure features from Ignite Part 2

… continuation of the Part 1 post which can be found here

The following post summarises the recap of the remaining 5 features that I found interesting from the announcements at the Ignite conference.

Azure Top 10 Ignite Features

5. Global Virtual Network Peering (preview)

Inter-VNet peering is a technology that allows you to connect a VNet directly to another VNet, without having to route that traffic via a gateway of some sort. Bear in mind that VNets are isolated until you connect them via a gateway, this feature allows you to essentially peer the VNet with another VNet thus removing the complexity of routing that traffic via a gateway and/or back on-premises. In addition, it allows you to take advantage the Microsoft backbone with low latency and high bandwidth connectivity. Inter-VNet peering is available to use today, however is constrained to a particular region (I.e. you can only peer VNets that exist within UK South, for instance – not between UK South and UK West).

virtual network peering transit

Source: https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview

Global VNet peering addresses that and allows you to peer between regions thus gaining global connectivity, without having to route via your own WAN. This feature is currently in preview in selected regions (US and Canada)

4. New Azure VM Sizes

Many new virtual machine sizes have been announced recently, factoring in differing workload types (e.g. for databases) as well as more cost effective virtual machines. A large number of organisations see Azure IaaS as a key platform allowing them to scale workloads that still require complete control over the operating system.

The announcements around Ignite were mainly focused around SQL server and Oracle type workloads that require high memory and storage, but are not typically CPU intensive. Some of the latest specifications, e.g. DS, ES, GS and MS provide constrained CPU counts to 1/4 or 1/2 of the original VM Size.

An example of this would be the Standard GS5 which comes with 32vCPU, 448GB memory, 64disks (up to 256TB total), and the new GS5-16 which comes with 16 and 8 active CPU respectively.

Another interesting VM type announced recently would be the B-series (burstable VMs) which allows credits to be recovered and applied back to your monthly totals for unused CPU. One to review!!

3. Planned VM maintenance

Maintenance in Azure has long been a bug bear of many customers. If you are operating a single virtual machine (which to be fair, you should think about architecting differently anyway…Smile) then at any time Microsoft may perform updates on the underlying hypervisors that run the platform. If your virtual machine is in this update domain then it will be restarted… and certain data (i.e. that stored in cache) may be lost.

Planned VM maintenance helps greatly here as it provides better visibility and control into when maintenance windows are occurring. Even allowing you to proactively start maintenance early at a suitable time for your organisation. You can create alerts, and discover which VMs are scheduled for maintenance ahead of time. In addition, you can choose between VM preserving and VM restarting/re-deploy state to better manage the recovery of the VM post maintenance.

As stated above, this problem goes away if you can re-architect your application accordingly with HA in mind. Plan to use Azure Availability Zones (AAZ) when they come out of preview and if not, look into regional availability and/or introduction of traffic manager and load balancers into your application.

2. Azure Migrate (preview)

Another great announcement was the introduction of a new capability called Azure Migrate, which is currently in preview. This service is similar to the Microsoft Assessment and Planning (MAP) kit however is very Azure focused (whereas MAP tended to be all about discovery and then light-weight Azure assessments).

The tool provides visibility into your applications and services and goes one step further to map the dependencies between applications, workloads and data. Historically, those working with Azure for a while will remember using tools like OMS to achieve this inter-dependency, or mapping it out themselves in pain staking fashion. A brief overview of the tool console is provided in the figures below:

Blog1Blur

Source: https://azure.microsoft.com/en-gb/blog/announcing-azure-migrate/

The tool is currently in preview, and is free of charge for Microsoft Azure customers (at time of writing). It is appliance based, and discovers virtual machines and performs intelligence such as “right-sizing” to the correct Azure VM type (thus saving costly IaaS overheads!!). It maps the multi-tier app dependencies and is a much deeper and richer capability set than MAP.

… and finally… drumroll please…

1. Azure Stack

I wrote a lengthy post on Azure Stack recently for the organisation I work for; Insight UK, and that post can be found here. Azure Stack was and is a big announcement from Microsoft and demonstrates their commitment to the Enterprise in my opinion. Microsoft have firmly recognised the need to retain certain workloads on-premises for a variety of reasons, from security/compliance through to performance, etc.

The Azure Stack is Microsoft’s true Hybrid Cloud platform and is provided by four vendors at present in HPe, Dell, Lenovo and Cisco. It provides a consistent management interface from the public Azure Cloud to on-premises, ensuring your DevOps/IT teams can communicate with applications in the same way irrespective of location. It allows for consistent management of both cloud native applications and legacy applications.

Image result for Azure Stack microsoft

Source: https://blogs.technet.microsoft.com/uktechnet/2016/02/23/microsoft-azure-stack-what-is-it/

Provided as either a four, eight or twelve node pre-configured rack, the software is locked down by Microsoft and only they can amend or provide updates. In addition the Stack firmware and drivers and controlled by the manufacturer and remain consistent with the software versions.

The hardware is procured directly from the vendor and then the resources are charged in a similar way to the public Azure cloud. The stack offers either a capacity based model or pay as you go, and can even operate in offline mode (great example with Carnival Cruise Ships)…

.. thanks for reading! – that’s my top 10 summary of Azure related announcements that came out of the Ignite conference in 2017. There is many more announcements and features and I hope to get more time to lab and write about them in the near future!

Protect yourself from disaster with Azure Site Recovery!

cyclone-2100663_1920

Having a robust Disaster Recovery (DR) plan in place is a key foundation of any IT strategy and risk management approach. Ensuring key services are protected, at a minimum through backup, or cost permitting through some form of replication, is of critical importance. This will help to ensure that, in the event of a disaster, be it small or large, the organisations IT systems can be recovered allowing the business to continue functioning from an IT perspective.

This post will focus on the capabilities provided by Azure Site Recovery (ASR), and how this is a perfect solution to bolster an organisations protection. However protecting yourself from disaster involves a much wider set of considerations, e.g. Backup, Plans, RunBooks, Automation and Replication services. Each of these topics has its own unique considerations and is for another post.

A large number of organisations survive with a single datacentre, or perhaps two but at a single location, mainly because of cost constraints. This leaves those organisations susceptible to many disasters, e.g. natural disasters (flooding, earthquake, fire, etc.) as well as man-made, e.g. electrical failure, collapse, etc. A disaster like this could result in the need to recover to a temporary location, perhaps from backup (with finger crossed that the backups work!), with a lengthy lead time to rebuild and recover systems. This lead time can be the difference between an organisation recovering or suffering serious financial loss/reputation damage, etc. Come in ASR…

Image result for azure site recovery

Azure Site Recovery (ASR) provides a great solution to help organisations overcome the risks outlined above. Put short, ASR provides a solution that can provide protection and replication of your on-premises (and cloud) based services to ensure they are protected to the Microsoft datacentres. If you are an organisation that only has a single datacentre then this can provide that much sought after secondary/tertiary location. In addition to replication, ASR can also provide monitoring, recovery plans and testing services. As pointed out earlier, ASR can protect on-premises workloads, as well as workloads already in Azure (to ensure they are replicated to another Azure region). Since the focus is on-premises in this post, how does this part work?

ASR supports the replication of services/virtual machines from all key platforms, including Hyper-V and VMware. If you do not use these virtualisation platforms you can use the “physical” agent option which can be installed on a physical server or as an in-VM agent (if using a differing virtualisation platform, e.g. KVM). If you are using the VMware integration, or Physical option, a configuration server is required. The following link provides more detail around the support matrix for replicating these workloads.

Dependent upon the on-premises capabilities, the following Microsoft links provide the architectural details for each configuration:

Architecture

Source: https://docs.microsoft.com/en-us/azure/site-recovery/concepts-hyper-v-to-azure-architecture

To get started with Hyper-V, you require an Azure subscription, System Center Virtual Machine Manager (VMM) server, Hyper-V hosts, VMs and appropriate networking. A Site Recovery Vault and Storage Account is configured in the Azure Subscription and the Site Recovery provider is installed on to the VMM server  which is then registered into the above vault. The recovery services agent .exe is installed on all Hyper-V hosts (or cluster members). In this configuration, no agent is required on any of the Hyper-V virtual machines as it is proxy’d via the host connection.

Virtual machines can then be replicated as per the associated replication policy (e.g. sync intervals, retention, etc.). Initial sync’s can take time to move the data up to the Azure platform (unless using Import/Export and seeding).

Note: two key questions that come up with clients are as follows:

  1. Do I need Azure Networking / VPN in place
  2. Can replication traffic be forced over the VPN?

1) Strictly speaking no, however if you want to provide client access to private virtual machine IPs then the answer is yes. If you have a client/server application that is internally addressed, then that application will need to support IP address change/DNS update and the client will still need a network route to connect to the application. If the application can be made publically accessible then you may have alternatives.

2) In short, no – ASR is designed (like many Azure services) to be publically accessible via a public URI. This means that data is typically sent via HTTPS to the endpoint over the internet. There is some changes you can make if you have ExpressRoute however that is outside of the scope of this post. This may change soon with the introduction of virtual network service endpoints however this is currently preview feature only supported on storage accounts and Azure SQL.

I hope this helps you to understand how ASR can help your organisation, and provide a brief overview of some of the typical considerations and architectures.

Recap of key Azure features from Ignite Part 1

I started writing a post about some of the Azure features I found interesting from the Ignite event, but then put this on hold as I decided to do a topic on this instead at the Microsoft Cloud User Group (MSCUG) in Manchester last week. Now that’s done, I thought it’d be good to summarise the presentation!

This post will be split into two parts to avoid the article being too lengthy…

Azure Top 10 Ignite Features

First up…
10. Virtual Network Service Endpoints (Preview)

Virtual Network Service Endpoints is a new feature to address situations whereby customers would prefer to access resources (Azure SQL DBs and Storage Accounts in the preview) privately over their virtual network as opposed to accessing them using the public URI.

Typically, when you create a resource in Azure it gets a public facing endpoint. This is the case with storage accounts and Azure SQL. When you connect to these services you do so using this public endpoint which is a concern for some customers who have compliance and regulatory concerns OR just want to optimise the route the traffic takes.

Configuring VNSE is fairly simple – it’s setup on the virtual network first and foremost – and then when you configure the resource you select the VNet that you would like to attach it to. The resource then does not get a public URI and instead is accessible via that VNet.

This feature is currently only available as a preview in the US and Australian regions… be interested in knowing when this is looking at being publically launched and rolled out across regions, as it looks to be a great Enterprise feature!

9. Azure File Sync (Preview)

Azure File Sync is a new tool that complements Azure Files. Azure Files has been around for some time and essentially provides the capability to create an SMB 3.0 file share in Azure, running on Azure Storage. This is a great solution, however can suffer from performance considerations when users who are on-premises, or connecting via the internet try and access large files due to the latency and bandwidth considerations.

mysyncgroup

Step up Azure File Sync, which is currently in preview at the moment. Azure File Sync aims to provide a solution to the performance concerns noted above by allowing you to synchronise files hosted in Azure to a local file server you host on-premises. This sounds fairly trivial, and perhaps unimpressive as surely the whole point of an Azure File Share is to… host the files in Azure? Why duplicate the storage? Well this is where Azure File Sync impresses as it has the capability to tier the files and only hold the most frequently accessed files on premises, whilst still providing the capability to view all the other files through cloud recall.

More details on this feature can be found here… https://azure.microsoft.com/en-gb/blog/announcing-the-public-preview-for-azure-file-sync/?cdn=disable

8. Cost Management and Billing

This is an massive announcement, in my opinion, and if I’d ordered my top ten correctly it would be nearer to number one! Several customer concerns over the last 12-18 months have primarily being around controlling, understanding and forecasting cost across their cloud platforms. Partners have typically innovated in this space, and a number of third party solutions have come to market, e.g. Cloud Cruiser which can perform this functionality across multiple public cloud vendors (e.g. AWS, Azure and Google)

In response to customer concerns (in my opinion) and to also increase the feature set on Azure, Microsoft acquired Cloudyn to help organisations manage their cloud spend. It provides tools to monitor, allocate, and optimise cloud costs so you can further your cloud investments with greater confidence.

The tool is currently free for customers of Azure, and can be accessed directly from the Azure Portal, under Cost Management in the Billing section. Looking forward to talking to customers about this to help remove a potential (simple) barrier to cloud usage.

Cloudyn - Cost Management and Billing

7. Azure Availability Zones (Preview)

This feature is intended to provide parity with other vendors, such as AWS by allowing organisations to select a specific “zone” to deploy their resource to within a region. Currently when deploying resources in Azure, the only option you have is regional. For example, when deploying a virtual machine you get to choose “North Europe”, or “UK South”. This means that if you want to plan DR / BCP for a specific application you typically need to plan this cross region which can lead to key considerations around latency and bandwidth.

This feature allows you to stipulate a specific “zone” when deploying a supported resource. Supported resources include Virtual Machines, Scale Sets, Disks and Load Balancers. When you deploy one of these resources you can choose an “instance”, identified by a number. The instance corresponds to a zone. If you then deploy a secondary resource and select a different zone, this will be in a differing datacentre. Generally the round trip time between such datacentres is very low (as part of the design considerations Microsoft have when designing their regions). This allows you to plan true DR for your applications without having to worry about regional latency.

Availability Zone visual representation

Source: https://azure.microsoft.com/en-gb/updates/azure-availability-zones/

This is a great feature and is currently in preview in a selected number of locations; US East 2 and West Europe. For a region to qualify for AAZ, it must have 3 or more localised datacentres. For more information about this feature, please look here.

… and finally for Part 1:

6. Azure Gateway – 6x faster!

This was a raw feature increasing the potential throughput an Azure Gateway by up to 6x faster! The gateways now come in four flavours:

  • Basic – which is suitable for test or development workloads, supporting up to 100Mbps and a 3 9s SLA (99.9%)
  • VpnGw1 – suitable for Production workloads, with speeds up to 650Mpbs and a 99.95% SLA
  • VpnGw2 – suitable for production workloads, with speeds up to 1Gbps and a 99.95% SLA
  • VpnGw3 – suitable for production workloads, with speeds up to 1.25Gbps and a 99.95% SLA!!!!

This is important as for some organisations an ExpressRoute connection does not provide the best-fit nor is it cost feasible therefore by placing further investment in the standard gateways opens up more performance which allows even more organisations to fully leverage the power of the Azure Cloud!

And that’s it for this post – I’ll summarise the remaining features I found interesting shortly in Part 2.

Azure Compute goes supernova…

Yesterday saw two key announcements on the Azure platform, with the launch of the new Fv2 VM series (officially the fastest on Azure) as well Microsoft sharing details on a partnership being formed with Cray to provide supercomputing capabilities in Azure.

Sun, Explosion, Planet, Moon, Orbit, Solar System

The Fv2 virtual machine addresses the need for large scale computation and runs on the fastest Intel Xeon processors (codenamed Skylake). The specification comes in seven sizes, from 2 vCPU/4Gb through to 72vCPU and 144Gb! The CPUs are hyper-threaded and operate at 2.7Ghz base with a turbo frequency of 3.7Ghz. These types of machines are generally targeted at organisations performing large scale analysis that requires massive compute power. For more details see: https://azure.microsoft.com/en-gb/blog/fv2-vms-are-now-available-the-fastest-vms-on-azure/ Note, at this time the Fv2 is only available in specific regions (West US 2, West Europe and East US)

The more eye-catching announcement was with regards to the partnership with Cray to bring supercomputing capabilities to Azure. A supercomputer is defined as:

A supercomputer is a computer with a high level of computing performance compared to a general-purpose computer. Performance of a supercomputer is measured in floating-point operations per second (FLOPS) instead of million instructions per second (MIPS). As of 2017, there are supercomputers which can perform up to nearly a hundred quadrillions of FLOPS[3], measured in P(eta)FLOPS.[4] The majority of supercomputers today run Linux-based operating systems. (Source: https://en.wikipedia.org/wiki/History_of_supercomputing)

Supercomputers have always felt like a bit of a mythical to me – as they have always been out of reach of the general public and the vast majority of organisations. The raw speed of the worlds fastest supercomputers (with China currently leading the road with the Sunway, operating at an insane 93 PFLOPS!) will still be something that is mythical in a sense, however Microsoft Azure is going a long way to bringing some of these capabilities to the Microsoft Azure platform, through their exclusive partnership with Cray.

This partnership is intended to provide access to supercomputing capabilities in Azure for key challenges such as climate modelling, scientific research, etc. It will allow customers to leverage these capabilities as they leverage any other type of Microsoft Azure resource, to help to transform their businesses by harnessing the power of the cloud. Microsoft are hoping this will lead to significant breakthroughs for many organisations as it opens the doors to supercomputing capabilities which will have previously been out of reach.

To read more, please refer to the Microsoft Announcement: https://azure.microsoft.com/en-gb/blog/cray-supercomputers-are-coming-to-azure/

On a closing note, the other key advantage, and one of the key tenets of any cloud computing platform is that these resources are available on a consumption basis – you can use them for as long as you need to use them – without having any up-front capital investment, or having to pay for the time and effort required to build the capability on-premises! This is one of many compelling reasons you should be looking to build a platform like Microsoft Azure into your overall Cloud or IT strategy moving forwards.

Azure ‘Just in time’ VM access

When I first saw “’Just in time…(JIT)” as a new preview announcement for Azure VMs, my mind was cast back to one of my first roles in IT, working for an automotive firm who supplied parts for car manufacturers. JIT was (or is!) a supply chain strategy whereby the parts or products arrive at a specific point only when required. Although I wasn’t directly involved, it used to fill me with dread as some of the penalties for holding up the supply chain were eye watering Smile with tongue out Anyway, I digress…

In relation to the Azure announcement, JIT is a security process currently in preview in Azure, whereby access is granted to a virtual machine only when required. It is simple in it’s architecture, in that it uses ACLs/NSGs to lock down access to specific inbound ports until a request by an authorised user is made. This drastically reduces the attack surface of your virtual and reduces any potential attacks through basic port scanning and brute force.

Licensing wise, JIT is part of the standard tier of Azure Security. Azure Security Center comes in two tiers:

  1. Free tier – this is enabled by default on your subscription and provides access to key security recommendations to help protect your infrastructure
  2. Standard Tier – extends the cloud and on-premises capabilities of Azure Security Center. Additional features are noted below:
    • Hybrid Security
    • Advanced Threat Detection
    • JIT VM access
    • Adaptive application controls

The following link provides pricing details: https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing (Note: the standard tier is free for the first 60 days to allow you to evaluate the components!)

Over the next few weeks I’ll aim to create blog posts for each of these areas to provide a rounded picture of what the standard security tier can provide for your organisation.

The preview of JIT can be found within the Azure Security Center pane, on the home page as seen in the below screenshot. As it is a preview you need to activate it:

image

An overview of some of the alert types and an activation link can be found on the next page:

image

If you click through the following page you will receive information around pricing and have the ability to “on-board” into the standard tier:

image

Once you click through, you need to apply the plan to your resources, select upgrade and then save the applicable settings:

image

If you navigate back to Security Center homepage – you will now see all of the new features activated within your subscription:

image

Enabling JIT is very simple. Click within the JIT context in the screenshot above, and you’ll be presented with the JIT pane. From within here, click the “Recommended” option, and you should see any VMs you have in your subscription not currently enabled for JIT:

image

From here simply click on the VM on the left hand side, review the current state/severity and then click “Enable JIT on x VMs”… A pane will appear recommending key ports that should be locked down. It is important to note from here you can add any additional ports, and also specific key things like source IPs that will be allowed access upon request, and the duration for which access will be granted.

image

image

Following this your VM will now go into a “resolved state” and you will be able to head back to the main JIT screen, navigate to the “configured” tab, and hit request access…

image

The request access screen will allow you to permit access to specific ports from either “MyIP” (which will detect the current IP you are accessing from) or a specific IP range. You can also specific a time frame, up to the maximum limit configured in an earlier step.

Note: the ability to request access will depend upon your user role and any configured RBAC settings in the Resource Group or Virtual Machine.

image

In summary? I think JIT is a great feature and another measure of the investment Microsoft are making in security on the Azure platform. It is a feature I will be talking about with clients and in conjunction with the other features of Security Center I think it is an investment many organisations will look to make.

Visibility and increasing your Azure Subscription limits and quotas

Azure contains a number of default subscription limits that should be considered as part of any Azure design phase. Majority of these limits are soft and you can raise a support case to have them raised. To avoid delays to any project I always recommend this is one of the first areas of consultation as there can be a lag between the request and it being actioned. The limitations are there for a number of reasons, primarily to help Microsoft control and capacity plan the environment whilst also ensuring usage is limited to protect the platform.

There is a very handy  view in the Azure Portal from which you can view by going to the new, preview “Cost Management + Billing” blade. From here go to “Subscriptions” and click the subscription you would like to view. From here you get some great statistics, e.g. spending rate, credit remaining, forecast, etc. all of which holds great value to assist you in planning and controlling your cost. If you navigate to “Usage and quotas” under the “Settings” menu you will see the following view:

image

There are other ways to view your usage quotas via PowerShell, however these are individual commands per resource. It wouldn’t take much to create a quick script that you can run regularly to expose this however the above view deals with it nicely I think. One of the example commands include “Get-AzureRmVmUsage –location <location>”

image

The bottom part of the page shows your current usage against your limits. It is now also very easy to “Request an Increase” – if you click this link you will be taken through a guided wizard to increase your limits.

image

Bear in mind this is resource and type specific, e.g. you will be asked to demonstrate the model you are using (Classic/ARM) , the impact on your business so they can set a priority, the location you need a request in and also the SKU family.

image

The final screen asks you to supply contact details and who should be notified throughout the ticket.

image

.. and there you go! – limits raised. Evidently this can take some time and it asks you to be pretty specific about what you are requesting therefore I highly recommend you take time to plan your deployments correctly to avoid any frustration.

Azure Portal–Ability to Quick Delete Resources

Very minor, and very finicky but one thing that’s always frustrated me in the Azure Portal is the inability to clear up my test subscriptions without having to resort to PowerShell. Occasionally I’ll spend some time spinning new services up directly in the portal rather than using PowerShell and when I’ve finished I like to clear things down to avoid costs which usually involves just deleting any resource groups I’ve spun up.

Now, the PowerShell to do this is pretty straight forward… can just use Get-AzureRmResourceGroup and Remove-AzureRmResourceGroup with a –force flag and a for-loop if you don’t want to iterate through, so why complain? Smile well sometimes launching a script or PowerShell is just too much which invariably means I’ll leave stuff running and then incur costs.

I’m not sure when this feature change came about (either last week during Ignite, or sooner, or has it been there all along and I’ve missed it?!) – however you can now do a select on all your resources (rather than individually), enter the word delete and then it’ll attempt to remove. This doesn’t always work as sometimes you’ll have nested resources that will block the deletion, however it’s a quick way to delete resources if you don’t want to resort to PowerShell.

image

Servicing in a Cloud World

To kick things off on this rather derelict looking blog ;-), I wanted to start with a topic that I’ve been discussing with several customers recently, namely ‘Servicing in a Cloud World’. Why? Because it’s super important and requires a step change in the way IT organisations react to change, and communicate/engage this with their end-users.

Widespread adoption of Cloud technologies is almost old news now, organisations have been, and are currently, actively migrating services to a variety of cloud models. This includes anything from IaaS to PaaS to SaaS and they are therefore handing responsibilities over to the provider on a sliding scale. The most extreme end of this scale is any SaaS based solution as the provider not only manages/administers the solution for you, but also owns the roadmap which includes both feature additions and deprecations.

The following diagram taken from the “Change Management for Office 365 clients” guide by Microsoft, illustrates the difference between a traditional release model vs a servicing release model:

clip_image001

In a traditional release model with infrastructure/platform or services managed and administered by the organisation, typically releases happen after several months of planning, developing and testing. The actual “release” is then usually governed through change/release management processes which would generally involve some form of impact assessment as well as a mechanism by which to alert the target user base that the release is coming. This may then be supported by engagement through training / user guides, etc.

clip_image002

In a servicing release model where the infrastructure/platform or service is managed and administered by the provider, releases typically happen much faster and much more aggressively. This is due to the provider being incentivised (generally through a PAYG subscription approach) to be innovative on the platform to retain or attract new custom. As illustrated in the figure, this means the each stage of the lifecycle of the release is generally much smaller. This model is advantageous for organisations as it means they can leverage capability much sooner rather than having to invest in the planning/development and testing themselves. A well-understood benefit of Cloud, right?!

Onto the point of this post; organisations typically have well-defined and robust change and release management processes grown through many years of managing and delivering services out to their userbase (as discussed earlier in reference to the traditional release model). They are experts at managing changes and releases that are under their own control. However, it is crucial that organisations adapt these processes in reaction to the “servicing world”. These include gaining a full understanding of the providers roadmap in the following areas:

  • Minor / Major Changes
  • Feature additions
  • Feature modifications
  • Feature deprecations
  • New product releases (in the same portfolio)
  • Servicing (which can include downtime)
  • Maintenance

As noted earlier, these releases are typically much more frequent than previous, and will require roles and responsibilities across the IT org to adapt – making sure that they not only focus on the actual release but to understand how this will impact end users as well, who will likely require support as the frequency of change and adoption of new features/technologies will be unfamiliar.

To provide some support to this post, Office 365 Message Centre averages about 12-15 “notifications” per week (note, this changes frequently!) – anything from a new product, a feature change or a service announcement. Ultimately, as more services move to Cloud – the roles and responsibilities within IT need to adapt accordingly as IT professionals work to support their organisations operating in a cloud servicing world.