Azure and Linux deploying via Azure Resource Manager

image

 

The Azure platform SLA applies to virtual machines running the Linux OS only when one of the endorsed distributions is used. All Linux distributions that are provided in the Azure image gallery are endorsed distributions with the required configuration

 

image

See: /en-us/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=/azure/virtual-machines/linux/toc.json

Azure Endorsed Linux Distributions Images on Azure Marketplace - https://azuremarketplace.microsoft.com

Azure MarketPlace has a collection of Published, maintained and supported Linux images produced by partners

All images provided on the Azure MarketPlace are curated & tested by Microsoft to ensure that a

Most endorsed distros maintain repos in each Azure region for fast updating

There are selection of imaged available

Standard Images

Premium Images

image

Using Scripting for Deployments

“Life is already really complicated, so we insist on making it even more complicated.”

The infrastructure for your application is typically made up of many components – maybe a virtual machine, storage account, and virtual network, or a web app, database, database server, and 3rd party services.

You do not see these components as separate entities, instead you see them as related and interdependent parts of a single entity. You want to deploy, manage, and monitor them as a group.

DevOps Deployment Automation - Requires a faster, more flexible deployment approach than the old ASM gateway and powershell could provide – ASM PowerShell can be very complex to define and troubleshoot. https://msdn.microsoft.com/en-us/powershell/dsc/LnxGettingStarted

Resources for Powershell & Linux Hands on Labs

https://github.com/Microsoft/TechnicalCommunityContent/tree/master/Open%20Dev%20Framework/PowerShell%20for%20Linux

Resources for Devops and Hands on Labs

https://github.com/Microsoft/TechnicalCommunityContent/tree/master/DevOps/DevOps

Azure Resource Manager

An Azure Resource Manager template is a JSON formatted document that can be deployed to create a ring-fenced group of resources

Azure Resource Manager provides a new way for you to deploy and manage the services that make up your applications, most, but not all, services support Resource Manager, and some services support Resource Manager only partially. Microsoft will enable Resource Manager for every service that is important for future solutions, but until the support is consistent, you need to know the current status for each service.

https://azure.microsoft.com/en-us/documentation/articles/resource-manager-supported-services/

 https://azure.microsoft.com/en-gb/features/resource-manager/

•Azure Resource Manager enables you to work with the resources in your solution as a group. You can deploy, update or delete all of the resources for your solution in a single, coordinated operation.

•You can repeatedly deploy your application throughout the app lifecycle and have confidence your resources are deployed in a consistent state.

•You can use declarative templates to define your deployment and you can define the dependencies between resources so they are deployed in the correct order.

•You can apply access control to all resources in your resource group because Role-Based Access Control (RBAC) is natively integrated into the management platform.

•You can apply tags to resources to logically organize all of the resources in your subscription

•When using Resource Groups, limits that once were global become managed at a regional level with the Azure Resource Manager.

•It is important to emphasize that quotas for resources in Azure Resource Groups are per-region accessible by your subscription, and are not per-subscription, as the service management quotas are.

https://azure.microsoft.com/en-gb/documentation/articles/azure-subscription-service-limits/

ARM Template

Written in JSON, describes entities

Template execution engine can interpret dependencies and relationships and orchestrate the deployment of the resources for you

Resources at the bottom of the stack are deployed first

Parameterized input and output – reuse template in different environments

Templates are represented in the gallery https://azure.microsoft.com/en-us/resources/templates/

image

Role Based Access Control

Azure Role-Based Access Control (RBAC) enables fine-grained access management for Azure for example you would only give students contributor access to Azure resources whilist academics and RA would have owner rights.

Azure allows you to utilise RBAC, you can segregate duties within your students projects and teach DevOps, RBAC simply allow you to grant only the amount of access to users that they need to perform their roles and taks which are required .

https://azure.microsoft.com/en-us/documentation/articles/role-based-access-control-configure/

Resources

Azure QuickStarts

https://azure.microsoft.com/en-us/documentation/templates/

https://azure.microsoft.com/en-us/documentation/articles/resource-group-authoring-templates/

https://download.microsoft.com/download/8/E/1/8E1DBEFA-CECE-4DC9-A813-93520A5D7CFE/World%20Class%20ARM%20Templates%20-%20Considerations%20and%20Proven%20Practices.pdf

https://azure.microsoft.com/en-us/documentation/articles/resource-group-template-functions/

https://github.com/Azure/azure-quickstart-templates