Presentation is loading. Please wait.

Presentation is loading. Please wait.

MANAGE CLOUD EASILY WITH AZURE RESOURCE MANAGER

Similar presentations


Presentation on theme: "MANAGE CLOUD EASILY WITH AZURE RESOURCE MANAGER"— Presentation transcript:

1 MANAGE CLOUD EASILY WITH AZURE RESOURCE MANAGER
THE NEXT BIG THING IN MICROSOFT AZURE AUGUST 6, 2015

2 SERGII KRYSHTOP SOFTWARE ENGINEERING MANAGER
MEMBER OF CLOUD CC / AZURE

3 Agenda Why businesses move to Cloud? 1
Azure Resource Management Concepts 2 IaaS+ 3 Tags 4 Role Based Access Control 5 Automation and Scheduler 6

4

5 SAVING ON INFRASTRUCTURE FAST SELF-PROVISIONING
WHY BUSINESSES MOVE TO CLOUD OPERATION COST SAVING SAVING ON INFRASTRUCTURE ELASTIC SCALABILITY FAST SELF-PROVISIONING USER ACCESS CONTROL MARKETPLACE

6 OPERATION COST SAVING Less efforts on infrastructure and OS maintenance. Less complexity for building infrastructure. Self-management service for Administrators, DevOps and Development Teams.

7 FAST SELF-PROVISIONING
Provisioning new resources is matter of hours and minutes rather than days. Development team can manage their environments w/o external dependencies on IT department. Fast spin-in and spin-out allows to save compute time on non-working hours and days.

8 ACCESS CONTROL Control who has access and to which environments.
Granular access control to each development environment: Development, QA, Staging and Production.

9 AZURE RESOURCE MANAGEMENT (ARM) API
CONCEPTS Resource Group – logically grouped collection of entities that usually share a common lifecycle Resource Manager Template - declarative JSON file that defines the goal state of a deployment Deployment - operation which tracks execution of a Resource Manager template Parameters - values provided by the user executing the deployment to customize deployed resources API Version – used for versioning and backward compatibility You can clarify billing for your organization by viewing the rolled-up costs for the entire group. Azure Resource Manager enables you to work with the resources in your application as a group. You can deploy, update or delete all of the resources for your application in a single, coordinated operation. You use a template for deployment and that template can work for different environments such as testing, staging and production. You can clarify billing for your organization by viewing the rolled-up costs for the entire group.

10 AZURE RESOURCE MANAGEMENT (ARM) API
CLOUD SERVICES AS REST RESOURCE Resources can be organized in a Resource Group, a logical container. Resource can belong to only one Resource Group. Nested resource groups are not supported. All Azure Services belongs to certain Resource Type. Resource has common fields and provider specific properties. Work with Azure Services as with REST Web Services Resources (CRUD). Azure Resource Manager enables you to work with the resources in your application as a group. You can deploy, update or delete all of the resources for your application in a single, coordinated operation. You use a template for deployment and that template can work for different environments such as testing, staging and production. You can clarify billing for your organization by viewing the rolled-up costs for the entire group.

11 Application Resources
RESOURCE GROUP PATTERNS - APPLICATION Backend Resource Group Frontend Resource Group Resource Group as Container for Application Resources Backend Server 01 Backend Server 02 Frontend Server 01 Frontend Server 02 VHD VHD VHD VHD Frontend Subnet Azure Resource Manager enables you to work with the resources in your application as a group. You can deploy, update or delete all of the resources for your application in a single, coordinated operation. You use a template for deployment and that template can work for different environments such as testing, staging and production. You can clarify billing for your organization by viewing the rolled-up costs for the entire group. Backend Subnet

12 RESOURCE GROUP PATTERNS - ENVIRONMENT
Development Environment QA Environment Backend Servers Frontend Servers Resource Group as Container for System Environment Backend Servers Frontend Servers VHD VHD VHD VHD Virtual Network Azure Resource Manager enables you to work with the resources in your application as a group. You can deploy, update or delete all of the resources for your application in a single, coordinated operation. You use a template for deployment and that template can work for different environments such as testing, staging and production. You can clarify billing for your organization by viewing the rolled-up costs for the entire group. Virtual Network

13 RESOURCE TEMPLATE FORMAT
{ "$schema": " / /deploymentTemplate.json#", "contentVersion": "", "parameters": { }, "variables": { }, "resources": [ ], "outputs": { } }

14 EASY PROVISIONING - RESOURCE TEMPLATE
Element Required Description $schema Yes Location of the JSON schema file. contentVersion Version of the template. parameters No Values provided during deployment execution. variables Internal variables resources Azure services deployed or updated in a resource group outputs Values that are returned after deployment

15 TEMPLATE EXPRESSION AND FUNCTIONS - STRINGS
Syntax concat concat (arg1, arg2, arg3, ...) replace replace(originalString, oldCharacter, newCharacter) base64 base64 (inputString) padLeft padLeft(stringToPad, totalLength, paddingCharacter) toLower toLower(stringToChange) toUpper toUpper(stringToChange)

16 TEMPLATE EXPRESSION AND FUNCTIONS - OTHER
Description Syntax listKeys Returns the keys of a storage account. listKeys (resourceName or resourceIdentifier, [apiVersion]) reference Used in depends on section of resource reference (resourceName or resourceIdentifier, [apiVersion]) resourceGroup Returns current resource group resourceGroup() resourceId Returns the unique identifier of a resource resourceId ([resourceGroupName], resourceType, resourceName1, [resourceName2]...) subscription Returns subscription details subscription()

17 ADVANCED TEMPLATE FEATURES
Description copy Enables iterate a specified number of times when deploying a resource. Nested template Used in depends on section of resource

18 DEMO Provisioning using Azure Resource Deployment Template

19 RESOURCE PROVIDERS Microsoft.ClassicStorage/storageAccounts
Microsoft.Storage/storageAccounts Microsoft.ClassicCompute/virtualMachines Microsoft.Compute/virtualMachines Microsoft.ClassicCompute/domainNames Microsoft.ClassicNetworking/virtualNetworks Microsoft.Networking/virtualNetworks Microsoft.Web/webSites Microsoft.Sql/servers

20 IAAS+ vs. CLASSIC RESOURCES
Storage Accounts, Networks and Virtual Machines Classic corresponds to the current resources in Production. Classic visible and manageable from both portals. Limited in functionality. Last version of the API (June ). No template gallery. REGULAR (IAAS+) RESOURCES Storage Accounts, Networks, Virtual Machines, Network Interfaces Integration with GitHub Public Repository. Growing template gallery. Not compatible with Classic, uses different Cmdlets. In Preview. No release date so far. In active development. New features on monthly basis. Breaking changes happens.

21 RESOURCE TEMPLATE REPOSITORY

22 ARM API (POWERSHELL) SWITCH TO ARM MODE
PS C:\> Switch-AzureMode -Name AzureResourceManager CREATE RESOURCE GROUP FROM TEMPLATE PS C:\> New-AzureResourceGroup ADD RESOURCE TO GROUP PS C:\> New-AzureResource MODIFY EXISTING RESOURCE GROUP PS C:\> New-AzureResourceGroupDeployment GET RESOURCE LIST OR DETAILS PS C:\> Get-AzureResource

23 Making Changes into VM Using ARM Template
DEMO

24 TAGS Tags are key/value pairs assigned to the Azure Resources.
Most all Azure resource support tagging, except Classic resources. Tags extends the taxonomy and allows group resources across subscription. Tags can be used for grouping billing data. Update affects all collection, must supply the full list In the full Azure portal, subscriptions are the only way to organize and group resources. In the Azure Preview portal, Resource groups allow you to manage related resources as a single unit, which became even more valuable with role-based access control. Now, you can tag resources with name/value pairs to categorize and view resources across resource groups and, within the portal, across subscriptions.

25 Filtering Resources by Resource Group Name and Tags
DEMO

26 ROLE BASES ACCESS CONTROL (RBAC)
FINE GRAINED CONTROL Users Groups Permissions Subscription Level Resource Group Level Resource Level

27 RBAC BUILT IN ROLES Role name Permissions Owner Full management rights
CORE ROLES Role name Permissions Owner Full management rights Contributor Full management rights except for user management Reader View resources and their settings None Does not see resources RESOURCE TYPE SPECIFIC ROLES Role name Permissions *** Contributor Full management rights except for user management on specific types of resources. Examples: Virtual Machine Contributor, SQL DB Contributor

28 JOB SCHEDULE OPTIONS Service Capabilities Azure Automation
Run PowerShell Workbooks on schedule. Scheduler is very basic. Azure Scheduler Cron-like reach scheduler functionality. Can make HTTP request or push message into the Storage Queue Web Jobs The part of the Application Services

29 AZURE AUTOMATION Provides the interface to upload PowerShell Runbooks.
Configure Runbook parameters (assets). Upload standard and custom modules. Debug. History and detailed logs. Optimal solution for regular maintenance jobs: start/stop environments

30 Provisioning and De-provisioning Environment
DEMO

31 WRAP UP Azure Resource Manager concept significantly simplifies provisioning and configuration of cloud environment using declarative desired state approach. Knowledge of JSON and understanding REST principles are enough to effectively work with ARM API. Resource Groups allows grouping cloud services into development environments (dev, qa, staging, production) Tags allows grouping cloud services by key/value pairs. Resource Groups and Tags helps to track costs of cloud environments. Azure RBAC helps configure fine grained permissions for each environment. Azure Automation Runbooks helps to build cost-effective solutions and release development resources when they are not in use.

32 thank you

33 CONTACT ME KEEP LEARNING AZURE sergii_kryshtop@epam.com skryshtop
Preview Portal - Azure Friday -


Download ppt "MANAGE CLOUD EASILY WITH AZURE RESOURCE MANAGER"

Similar presentations


Ads by Google