In this article we will focus on Microsoft Azure VM from novice to professional in terms of creating, operating and how pricing works for Azure VM

If you want to read Microsoft Azure Fundamentals then please refer Part 1 of the article

What is Azure VM ?

  • With Azure Virtual Machines you can deploy a wide range of computing solutions in fast way
  • Deploy a virtual machine super instantly and pay by the minute
  • With support for Microsoft Windows, Linux, Microsoft SQL Server, Oracle, IBM, SAP and Azure BizTalk Services, you can deploy nearly any operating system with support for custom images
  • In short with Azure VM you can spin up the machine with your choice of OS instantly

Why Azure VM ?

  • With Azure VM you can get more control of your machine for custom scenarios
  • We can run Microsoft Enterprise Application with ease of use
  • Also we can scale virtual machine as per our needs from Azure Portal

How Azure VM ?

  • We will create Azure VM from Azure Portal as follows
  • Login to Azure portal and click New button After selection Virtual Machines

01

  • Once you click on New button then you can two options to create Azure VM, which is “Quick Create” and “From Gallery” as follows
    • Quick Create – We can quickly create virtual machine of respective size and image

02

03

  • From Gallery – We can choose from available images for Virtual machine option as follows

04

  • For now we will create Windows VM as follows

05

  • If you observe you can see “Tier” for VM, that is proportional to different “Size” of VM and has impact on the pricing of VM
  • We can choose different size of VM as follows ( We can also change the size as per our scenarios afterwards )
  • Please refer following sizes for VM for Standard Tier ( Please take care while selecting size because it has significant impact on pricing )

06

  • Next we need to set VM Configuration as follows
    • Cloud service is a container for one or more virtual machines you create. You can create a cloud service for a single virtual machine, or you can load balance multiple virtual machines by placing them in the same cloud service
    • Cloud service act as domain for VM
    • Make sure you select appropriate region VM ( This also has impact on pricing )
    • By default endpoints configured for Remote Desktop

07

  • If you want to configure additional VM options then you can do the same as follows

08

  • After that new VM creation process done, then it will create Cloud Service and Storage Account as follows

09

  • We are done with Azure VM creattion, to connect click on Connect as follows, this will download RDP file
    • You need to use credentials which you have used while creating Azure VM

10

We have created new Azuer VM with few easy steps

Following points we need to consider

  • Cloud Services act as containers for web role, worker role and virtual machine instances
  • For VM perspective, cloud services are referred to as domains now
  • Single VM cannot be a part of 2 different cloud services, however multiple VMs can be a part of a single cloud service
  • Once you delete all the VMs in a cloud service, the cloud service still exists and needs to be deleted exclusively in case you want to reuse the name

Hope this helps

This will be multi part series for Loud with Cloud regarding Microsoft Azure

In this article we will discuss traits about Microsoft Azure Service which will help to take better decisions in terms of adopting Microsoft Azure for Enterprise

  • We will primarily focus on What is Microsoft Azure in this article
  • Prime objective is to provide pointers regarding Azure

What ?

  • Microsoft Azure can be defined as a cloud computing platform and infrastructure for creating, deploying and maintaining applications and services through Microsoft managed Datacenters. It provides services like PaaS, SaaS, IaaS and support different programming languages, tools, frameworks including Microsoft and third-party software and systems for development.
  • Lets visualize different Cloud Models as follows

Cloud Model

  • In the traditional On Premises model where the entire infrastructure is located on-premises, you have full responsibility for managing updates to operating systems, applications, network devices (routers, switches, etc.) and hardware (firmware).
  • In an IaaS scenario, you still have to manage updates for operating systems and applications; however, the entire infrastructure, operating systems and applications is managed by Microsoft. In all these models, customers are still owners of their data and are still responsible for protecting it at the end point level.
  • In a PaaS scenario, you will have even less responsibility for software updates, as update management for the operating system is Microsoft’s responsibility.
  • In a SaaS scenario, the responsibility for software updates for the entire stack is managed by Microsoft.

Azure Services

  • Currently Azure provides following services

Azure-Console

So we have discussed What are different pointers for Microsoft Azuer

Reference : https://azure.microsoft.com/en-us/documentation/infographics/azure/

In next article we will discuss each service in details with use cases

Hope this helps

Challenge

  • Today I have to troubleshoot application hosted at Azure Web App
  • I am receiving error “Internal server error” for the functionality which we are testing
  • For Azure Web App we have less control as we don’t get Remote desktop for the same
  • So we will see how to troubleshoot Azure Web App with Kudu

Solution

  • In manage azure portal please open your Azure Web App >> Then go to Configure Section as follow

  • We need to set application diagnostics and site diagnostics settings as follows
  • Please make sure you set Detailed error message as follows

  • After that save the settings
  • Now we have to analyse the logs for that purpose we need to use Kudu which is analysis and troubleshooting tools for Azure Web Apps
  • Kudu is useful to capture and review memory dumps, deployment logs and detailed error message
  • To use Kudu we need to browse following Web App
  • To access your KUDU console, using your DEPLOYMENT credentials, then browse to https://YOURWebApp.scm.azurewebsites.net we will see following Web App

Kudu

  • In above you can review lot of logs for your application however to diagnose the issues we need to go to Tools >> Diagnostic dump
  • This will provide you the zip file
  • From the zip file browse the LogFiles >> DetailedErrors to review and troubleshoot errors
  • If you don’t have manage azure credentials then you can also review log from your FTP folder in logs folder

Hope this helps

Challenge

  • Recently we have implemented functionality to export PDF from ASP.Net Web Application
  • We don’t want to render report in Report Viewer we only want to export PDF
  • When we deployed the application on Azure VM ( IaaS ) then everything was working fine
  • However when we have published the application on Azure Web App ( PaaS ) we are getting exceptions and issues
  • Please refer following code for reference ( which we have used to export PDF )

//list testReportModel
List<TestReportModel> testReportModel = GetReportData();

//get report bytes
Byte[] reportBytes = Common.GetReportByte(“~/Report/TestReport.rdlc”, testReportModel, “dsTestReport”, “PDF”);

//instantiate memory steram
MemoryStream reportStream = new MemoryStream(reportBytes);
reportStream.Seek(0, SeekOrigin.Begin);

Response.Buffer = true;
Response.ContentType = “application/pdf”;
Response.AddHeader(“content-disposition”, “attachment; filename=TestReport.pdf”);
Response.BinaryWrite(reportBytes);
Response.Flush(); // send it to the client to download
Response.Clear();

Solution

  • Please verify that following report viewer dll assemblies has copy local true in your solution explorer as follows

  • In your deployment package in bin folder please make sure you have following dll assemblies

  • If you want to use ReportViewer control then there is no support to render in Azure Web App then you have to either use Azure Web Role or Azure VM

Hope this helps

Just attended Microsoft DevCamp: Azure Essentials on 28 Jan 2015. It was awesome event to get advance Azure details from Microsoft experts
We have drafted the pointers which could be helpful to understand keep up to date with terms related to Azure

  • We opt Cloud for following chief reasons
  1. Speed
  2. Scalability
  3. Economy
  • Azure is Operating System with Fabric Controller
  • To understand azure security we need to refer “Microsoft Azure Trust Centre”
  • Availability sets for VM act as Load balancer
  • Azure Tables are NoSql database
  • Storage account has following important concepts
  • Partition Keys
  • Row Keys
  • Timestamps
  • Scalability has two types
  • Vertical Scalability
  • For e.g. we can increase the RAM of machine from 8 GB to 16 GB
  • It has limitation because the machine will support up to certain limit to increase in respective component
  • Horizontal Scalability
  • Azure support Horizontal Scalability
  • For e.g. we can add multiple machine of 8 GB RAM. There is no limit for the same
  • For Azure Tables we have one partition per server
  • Partitions are vital to fetch data along with performance consideration
  • We can Azure Storage with following types
  • LRS – Locally redundant storage
  • ZRS – Zone redundant storage
  • GRS – Geo Redundant storage
  • RA – GRS – Read access Geo redundant storage
  • LRS is cost effective option for development environment
  • DocumentDB is JSON storage file system database
  • Azure Files are required to created Shared location in Cloud
  • For e.g. we can create Shared Location between two VM’s
  • We can use HDInsight for Hadoop if the data is in TB or more
  • We can achieve caching in Azure with Azure Redis Cache
  • Azure Search feature allows option to search from Persistent storage for filtered data
  • Service Bus
  • Queues – It has following options to process the message
  • Receive and Delete
  • PeekLock – which wait for 3 events
  • Topics – We can send multiple messages depending upon filter and conditions
  • We use Subscription to achieve the same
  • Event Hubs – Log data from multiple sources
  • Hybrid Connection is the fastest way to expose on premises apps to cloud
  • Remote App is used to create remote desktop across the platforms

WP_20150128_002 WP_20150128_003