Friday, April 21, 2017

Implementing 70-533 - Objective 3 - Design and Implement a Storage Strategy (20-25%)

Implement Azure storage blobs and Azure files
  1. Steps to implement CDN - create CNAME with domain registrar, map to CDN endpoint and create a CNAME for custom domain and subdomain
  2. ZRS stores three copies of your data across two or three datacenters 
  3. LRS three copies in same datacenter
  4. GRS is six copies, three in one region and three in another but is more expensive
  5. RA-GRS is six copies but three in the second region are read only
  6. Blob container names can only contain lowercase letters, numbers and dashes
  7. Azure Files allow you to access your documents as if they existed on a network share
  8. AzCopy lets you copy blobs between containers or between a source computer and a container
  9. AzCopy /Source:https://xx.blob.core.windows.net/movies /Dest:C:\/Pattern:Lego.mpg
  10. Shared Access Signatures to created signed links returned to users
  11. CacheControl property determines the TTL of a Blob

  1.  Blobs are addressable through a URL, which has the following format: https://[storage account name]/blob.core.windows.net/[container]/[blob name]
  2.  You also can assign a custom domain to the storage account, which changes the root of the URL, http://[storage.companyname.com]/[container]/[blobname]

  • Manage access

  1. Stored access policies allow you to modify access based on permissions or expiry time
  2. Set access level to Private to prevent anonymous users from accessing Blobs
  3. A shared access signature is a URI that contains access rights along with a time signature 

  • Configure diagnostics, monitoring, and analytics

  1. Minimal Blob monitoring does not provide detailed metrics, only an aggregate total billing metric
  2. Verbose Blob monitoring gives detailed billing request metrics - accessed from the Configure tab
  3. The maximum analytics log data that can be stored is 20 TB
  4. Retention policies determine the number of days logging should be maintained
  5. Get-AzureStorageBlob to retrieve all blobs in the $logs container
  6. Remove-AzureStorageBlob to delete the log files

  • Implement Azure SQL Databases

  1. Basic tier only supports up to 2 GB max database
  2. Standard service tier 14 days retention and 250GB SQL storage
  3. Standard tier S0 provides the lowest cost performance level and supports 60 concurrent requests
  4. Premium tier support 500 GB database
  5. To import data from a BACPAC file to a new SQL database use the Start-AzureSqlDatabaseImport cmdlet
  6. Active Geo-Replication is a business continuity option to replicate data to four different nodes in different regions

  • Implement recovery services

  1. Azure Site Recovery Services coordinates the replication and recovery of VMs
  2. Azure backup is for backing up files and folders but is not a DR solution
  3. StorSimple is a hardware device that is loctated on-premise and uses Azure storage as a second tier
  4. Same backup vault and passphrase needed to restore an Azure backup to an alternate server
  5. Data Protection Manager server allows you to back up data locally or to Azure. DPM server is installed on premise and is a product of System Center 2012 that provided enterpise backup solution
  6. When network performance or bandwidth is a concern use offline backups and ship the hard drive to an Azure data center
  7. How to back up date to Azure? Protection group>Run Azure Import>Create import job>Ship drive to Azure

Wednesday, April 19, 2017

Implementing 70-533 - Objective 2 - Create and Manage RM VM's (20-25%)


Deploy workloads on Azure Resource Manager (ARM) virtual machines (VMs)
  1. Only VHD's are supported in Azure, VHDX must be converted first
  2. Azure Linux agent is used to prep the VM to be used as an image
  3. To connect to a VM look at the Endpoints. Endpoints lists public and private ports exposed by VM
  4. Sharepoint workloads are supported in Azure; Hyper-V and Windows Deploy Service are not 
  5. Convert-VHD>Add-AzureVHD>Add-AzureVMImage>New-AzureVM to recreate an on premise VM in Azure
Perform configuration management
  1. Publish-AzureVMDscConfiguration for desired state configuration 
  2. Chef configuration extension allows configuration of VM's and gives the ability to amend the configuration at a later date 
  3. Chef client can be installed only when a VM is created 
  4. Use PowerShell to add Chef client to an existing maching 
  5. Chef allows you to use Ruby and Erlang to perform configuration tasks 
  6. Puppet uses proprietary OO language with JSON like features 
  7. Use Update-AzureVM to update a VM's configuration after applying a DSC script 
  8. Puppet can connect by PowerShell and RDP by default but not over the internet unless you create an Endpoint 
  9. Enable the VM Agent and allow the VM to run custom script extensions to execute PowerShell cmdlets against your VM. 
  10. Powershell cmdlets execute from your storage account 
  11. Get-AzureVM to retrieve an instance of a VM configuration 
  12. Set-AzureVMCustomScriptExtension to set a custom script that can be downloaded from your storage account when provisioning the VM 
  13. Set-AzureVMExtension 'VMAccessAgent' to reset a password 
  14. Set-AzureVMExtension 'CustomScriptExtension' to allow a custom script 
  15. Set-AzureVMExtension 'Bginfo' to allow custom BGInfo desktop background 
  16. Know the sections of a Powershell DSC script block - Configuration, Resource, Name 
  17. Use Azure Virtual Machine Extensions to troubleshoot DSC configurations locally 
Design and implement VM storage
  1. The default replication scheme for an Azure storage account is Geo-Redundant which replicates data six times 
  2. Locally redundant storage replicates storage three times 
  3. ZRS is only available to store block blobs not page blobs, VHD's use page blobs 
  4. To create a share with PowerShell first set the account and key with New-AzureStorageContext, then the share can be created with New-AzureStorageShare 
  5. When deoploying a domain controller to Azure set the cache preference to none 
  6. Azure Files is an SMB 2.1 compliant 60 MS/sec throughput and max file size 1 TB 
  7. Azure BLOB only supports 200 GB / block BLOB 
  8. Azure data disk can only connect to 1 VM not multiple 
  9. Host disk caching for attached disks can be set to None, ReadOnly, ReadWrite adn is set to None by default 
  10. Set-AzureDataDisk is used to configure the host-cache mode 
  11. VHD's must be stored as page blobs in Azure to be listed as a custom image 
  12. You configre an Azure Site Recovery vault in Azure portal, you configure Azure Site Recovery Provider on the servers 
  13. Know the Get-AzureVM parameters, use Get-AzureVM to Add-AzureDataDisk. This is then followed by Update-AzureVM to commmit the changes 
  14. Use Set-AzureDataDisk to modify the data disk attached to a VM 
  15. Use Set-AsureDataDisk with HostCaching parameter = ReadWrite to cache data that is frequently written 
  16. Use the File service option with a new storage account to share network volumes on the network 
  17. Table service and DocumentDB are both NoSQL options 
Monitor ARM VMs
  1. Azure alert rules can be used to send email alerts 
  2. Endpoints can be used to monitor a cloud service from up to 3 locations 
  3. Metrics allow you to choose what to monitor 
  4. Rules are used to generate a notification when a monitored metric exceeds a threshold 
  5. When you Configure endpoint monitoring you specify two endpoints and up to two test locations for each endpoint 
  6. An IaasDiagnostics resource is added to the Virtual Machine ARM template file 
  7. Connect to VMDiagnoseStorageAccount to browse tables to see Windoes event logs 
  8. VMStorageAccount is where the VHD is stored 
Monitor ARM VM availability
  1. All VM's in the same availability set participate in failover 
  2. Each availability set contains five upgrade domains and two fault domains 
  3. An upgrade domain is a logical group of instances for upgrading a VM 
  4. A fault domain groups VMs by hardware 
  5. Azure places VM's in upgrade and fault domains automatically 
  6. In a scale set VM's will automatically be assigned to seperate fault domains so they will have seperate power sources 
  7. Availability sets have 99.95 percent SLA 
  8. Traffic manager supports round robin load balancing across data centers 
Scale ARM VMs
  1. VM Scale Sets are used to deploy identical virtual machines 
  2. Azure automation framework can be used to vertically scale VMs in response to workload 
  3. VM Scale Sets are deployed with ARM templates 
  4. The ARM teamplate capacity property is used to add or remove VMs in a scale set, threshold metric to trigger a CPU scale action 
  5. When resizing VM's in an availability set you need to stop and restart all servers in the availability set 




Implementing 70-533 - Objective 1 App Service Apps (15-20%)

Deploy Web Apps
  1. App_Data/jobs/continuous
  2. App_Data/jobs/triggered
  3. Web jobs can be uploaded as zip files but must be < 100mb
  4. Powershell New-AzureWebSite CarsToGo -Slot Test creates a deployemnt slot named Test, use Publish-AzureWebSiteProject -Name -Slot Test to publish to an existing slot
  5. Set-AzureResource to set propoerties on Azure resources
  6. New-AzureResource allows you to create a new resource but does not allow you to update existing resources
  7. A Standard pricing tier must be used to have a deployment slot. Basic plans do not allow deployment slots
  8. Powershell can be used to create resource groups and deploy new versions
  9. Web Deploy will just let you deploy a new version of the code but not create the RG
  10. Clone App can be used to recreate an app in another App Service Plan in a different region
  11. Azure Blob storage is used by ARM template deployment
  12. AzCopy utility is used when building an ARM template in Visual Studio

Configure Web Apps
  1. Basic plans allow the hosting of up to 10 web apps with custom domains 
  2. SSL certificates need to be converted to .pfx format before uploaded to Azure 
  3. Publish-WebApplication -Configuration parameter can specify a JSON file with resource configuration 
  4. Use CPU metrics to auto scale your instance count
Configure diagnostics, monitoring, and analytics
  1. Get-AzureWebSiteLog command produces a continuous stream of log data for viewing but you can not download locally
  2. Save-AzureWebSiteLog command is used to gather Azure logs and download them locally
  3. Monitoring endpoints allow you to monitor your web app requests from test locations you specify
  4. Too Many Requests rule displays Not active means metric has not exceeded its threshold within the evaluation window
  5. Use Uptime to monitor availabitliy of a Web App
  6. Requests metric shows average requests to a Web App in a specific timeframe
Configure Web Apps for scale and resilience
  1. Standard mode can auto-scale while Basic can not
  2. Only standard mode supports auto scaling, basic and shared do not
  3. Traffic manager is used to distribute web app traffic across multiple geographic locations based on  web app load
  4. Auto scaling is used to increase the number of instances
  5. Scale by none allows the web app to scale exactly to the number of instances that you specify
  6. Priority traffic routing is used to support DR scenarios
  7. Performamce traffic routing will allow traffic to go to the closest endpoint
  8. Weighted traffic distributes traffic evenly between endpoints