All posts by vsupreti

Build Azure Infrastructure using LLD Document

Azure landing zone implementation as an automated process using inputs from Low Level Design will reduce the overall build effort, bring in accuracy and mitigate the risk of duplication or other errors.  Also this will help rebuild the environment from scratch with accuracy and minimal efforts.

The blog will help you create HUB and Spoke Network Azure using Low Level Design configuration details in Excel based LLD document.  Using this example HUB and Spoke setup, you can plan to write similar code to add more functionalities to read required inputs from LLD.

A typical Azure HUB and Spoke looks like below

HUB – Centralized services ( Jumphost, AD VMs, AppGW, Virtual Network Gateway and Azure Firewall )

Spoke – Workload Infrastructure with three their architecture ( Web, App and DB )

Below sample excel document with Network Layout for HUB and Spoke

Use code from below onwards to setup the environment

————————————————————————————

#### Function to login to Azure Portal

Function LogintoAzure()

{

$AzureAccount = Connect-AzAccount

return $AzureAccount

}

####### Function for reading data inputs from LLD file ###################

function ReadNETXLS($xlspath, $xlsfilename, $SheetIndex, [int]$colmsno )

{

    #$Error_workbookOpen     

    $filepath = “$xlspath” + “$xlsfilename”

    $objExcel = New-Object -ComObject Excel.Application

    $wb = $objExcel.workbooks.open(“$filepath”)

    $cellarray = New-Object System.Collections.ArrayList      

    $WorkSheet = $wb.sheets.item([int]$SheetIndex)

    $WorksheetRange = $workSheet.UsedRange

    $RowNum = 0

    $ColNum = 0

    $ColCount = $WorksheetRange.Columns.Count – $colmsno

    $RowCount = $WorksheetRange.Rows.Count

        for ($i=2; $i -le $RowCount ; $i++){                   

                for ( $j=2; $j -le $colCount; $j++ ){

                $celldata=$WorkSheet.Cells.Item($i,$j).text

                $cellinfo =  $cellarray.Add($celldata)                                     

                }

        }

$objExcel.Workbooks.Close()

return $cellarray

}

###### Function for setting up HUB and Spoke Infrastructure

Function SetupHUBSpoke($networkinfo)

{

$prevnet = “”

Foreach ($row in $networkinfo ) {

$arow=$row -split ‘,’

$vname = $arow[0]

$vaddr = $arow[1]

$sname = $arow[2]

$saddr = $arow[3]

$regn = $arow[4]

    # If Virtual Network Name is same as Previously created Virtual Network Name

    If ($vname -eq $prevnet) {

        #Create subnets within same vNET once created”

        $subnetConfig = Add-AzVirtualNetworkSubnetConfig `

        -Name $sname `

        -AddressPrefix $saddr `

        -VirtualNetwork $vnetinfo

        #Associate the subnet to the virtual network

        $vnetinfo | Set-AzVirtualNetwork

        $snetsuffix = $sname.Substring(0,6)

            $nsgsuffix=$sname.Replace(“$snetsuffix”,”NSG”)

            $nsgconfirm = Read-Host “Continue with creating default NSG rules for $sname ? [y/n]”

            if ( $nsgconfirm -eq ‘y’ -or $nsgconfirm -eq ”){

                $rdprule = New-AzNetworkSecurityRuleConfig -Name $nsgsuffix -Description “Allow RDP” `

    -Access Allow -Protocol Tcp -Direction Inbound -Priority 3000 -SourceAddressPrefix `

    * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389

                $nsgrule = New-AzNetworkSecurityGroup -ResourceGroupName $rgname -Location $regn -Name `    

 “$nsgsuffix” -SecurityRules $rdprule

                Set-AzVirtualNetworkSubnetConfig -Name $sname -VirtualNetwork $virtualNetwork -AddressPrefix $saddr -NetworkSecurityGroup $nsgrule               

            }

    } Else {                 

       # Else Create new Resource group, Virtual Network and first Subnet

        $rgprefix=”RG-“

        $rgsuffix=$vname.Replace(“VNET0″,”NET”)

        $rgname = “$rgprefix$rgsuffix”

        $addprefix = $vaddr.Trim(“`r?`n”)      

        #Create Azure Resource Group

        $netrg= New-AzResourceGroup -Name $rgname -Location $regn

        #Create vNET

        $virtualNetwork = New-AzVirtualNetwork `

        -ResourceGroupName $rgname `

        -Location $regn `

        -Name $vname `

        -AddressPrefix $vaddr

        #Create sNET

        $subnetConfig = Add-AzVirtualNetworkSubnetConfig `

        -Name $sname `

        -AddressPrefix $saddr `

        -VirtualNetwork $virtualNetwork

        #Associate the subnet to the virtual network

        $virtualNetwork | Set-AzVirtualNetwork          

            if ( $vname -like ‘*HUB*’ ){

                 $hubvnet = $vname

                 $hubnetwork = $virtualNetwork

             }            

             else{

            $snetsuffix = $sname.Substring(0,6)

            $nsgsuffix=$sname.Replace(“$snetsuffix”,”NSG”)

            $nsgconfirm = Read-Host “Continue with creating default NSG rules for $sname ? [y/n]”

            if ( $nsgconfirm -eq ‘y’ -or $nsgconfirm -eq ”){

            $rdprule = New-AzNetworkSecurityRuleConfig -Name $nsgsuffix -Description “Allow RDP” `

    -Access Allow -Protocol Tcp -Direction Inbound -Priority 3000 -SourceAddressPrefix     * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389

            $nsgrule = New-AzNetworkSecurityGroup -ResourceGroupName $rgname -Location $regn -Name    “$nsgsuffix” -SecurityRules $rdprule

            Set-AzVirtualNetworkSubnetConfig -Name $sname -VirtualNetwork $virtualNetwork -AddressPrefix $saddr -NetworkSecurityGroup $nsgrule                

            }

            # Setting up VNET PEERING between HUB and Spoke Network

            $confirmation = Read-Host “Continue with creating vnet peering from $hubvnet to $vname ? [y/n]”

            if ($confirmation -eq ‘y’ -or $confirmation -eq ”){

                $peername1 = “$hubvnet”+”-TO-“+”$vname”

                $peername2 = “$vname”+”-TO-“+”$hubvnet”

                $peer1 = Add-AzVirtualNetworkPeering -Name $peername1 -VirtualNetwork $hubnetwork -RemoteVirtualNetworkId $virtualNetwork.Id

                $peer2 = Add-AzVirtualNetworkPeering -Name $peername2 -VirtualNetwork $virtualNetwork -RemoteVirtualNetworkId $hubnetwork.Id

                # Change the UseRemoteGateways property

                $peer1.AllowGatewayTransit = $True

                # Update the virtual network peering

                Set-AzVirtualNetworkPeering -VirtualNetworkPeering $peer1

                $peer2.UseRemoteGateways = $True

                Set-AzVirtualNetworkPeering -VirtualNetworkPeering $peer2

            }

        }

      }

     $prevnet = $vname

     $vnetinfo = $virtualNetwork

     read-host “Press ENTER to continue…”    

}

}

#Main Code

#

#############################################################################

#

Do

{

Write-Host “

———-MENU DXC Infrastructure Builds ———-

1 = Build HUB and Spoke setup

2 = Build Load Balancer

3 = Build Application Gateway

————————–“

$choice1 = read-host -prompt “Select number & press enter”

} until ($choice1 -eq “1” -or $choice1 -eq “2” -or $choice1 -eq “3” )

Switch ($choice1)

{

“1”

{

write “Building HUB and Spoke Network”

#############################################################################

##Setting Global Paramaters##

$ErrorActionPreference = “Stop”

$date = Get-Date -UFormat “%Y-%m-%d-%H-%M”

$workfolder = Split-Path $script:MyInvocation.MyCommand.Path

$logFile = $workfolder+’\’+$date+’.log’

Write-Output “Steps will be tracked on the log file : [ $logFile ]”

##Login to Azure##

$Description = “Connecting to Azure”

$Command = {LogintoAzure}

$AzureAccount = RunLog-Command -Description $Description -Command $Command -LogFile $LogFile

##Select the Subscription##

#

$Description = “Selecting the Subscription : $Subscription”

$Command = {Get-AzSubscription | Out-GridView -PassThru | Select-AzSubscription}

RunLog-Command -Description $Description -Command $Command -LogFile $LogFile

#############################################################################

#Set defaults

$netarray = ”

$netarray = New-Object System.Collections.ArrayList

#Reading inputs required for HUB and Spoke Network and adding to comma separated array

$xlspath = Read-Host “Enter the location of the PATH for input file”

$xlsfilename = Read-Host “Enter XLXS filename as inputs file”

$SheetIndex = Read-Host “Enter the cell number in the XLSX file”

$colmsno = Read-Host “Enter starting column of XLSX”

$data = ReadNETXLS $xlspath $xlsfilename $SheetIndex $colmsno

# Example below

#$data = ReadNETXLS ‘<PATH-TO-XLSS FILE’ ‘XLSX File NAME’ 4 2

$acount=$data.Length – 1

for ($k=0; $k -lt $acount ; $k++){

    $vnetname = $data[$k]

    $vnetaddress = $data[$k+1]

    $snetname = $data[$k+2]

    $snetaddress = $data[$k+3]

    $netlocation = $data[$k+4]

    $k = $k + 4      

    if ( $vnetaddress -eq ”  -or $vnetname -eq ” ) {

        $vnetaddress = $prevnetaddress

        $vnetname = $prevnetname       

    }

        $vnetaddress = $vnetaddress -replace “`n”, ” -replace “`r”,”

        $vnetname = $vnetname -replace “`n”, ” -replace “`r”,”

        $snetaddress = $snetaddress -replace “`n”, ” -replace “`r”,”

        $snetname = $snetname -replace “`n”, ” -replace “`r”,”

        $netlocation = $netlocation -replace “`n”, ” -replace “`r”,”

        #SetupHUBSpoke Array with $vnetname $vnetaddress $snetname $snetaddress $netlocation

        $netrow = $vnetname + “,” + $vnetaddress + “,” + $snetname + “,” + $snetaddress + “,” + $netlocation

        $netinfo =  $netarray.Add($netrow)

    $prevnetaddress = $vnetaddress

    $prevnetname = $vnetname

}

## Pass array to the function for creating HUB and Spokes

SetupHUBSpoke $netarray

#############################################################################

}

}

Cloud Billing and predictive analysis tools

The Cloud Billing report gives full cost analysis for cloud services consumed. Different reports such as Daily, Monthly and Yearly helps in analyzing consumption trends and helps in cost optimization. You can plan and assess the monthly, quarterly or annual budgeting requirement on cloud spend.

Multiple tools are available to help provide cross platform billing solutions for cloud

CloudCheckr ( https://cloudcheckr.com ):

CloudCheckr is a comprehensive cloud management solution, helping businesses manage and automate cost as well as security for their Azure, AWS and Google based public cloud environments . Below are the core functionalities

  • Cost and Expense Management – CloudCheckr provides cost allocation, spend optimization, invoicing and charge backs. Custom reports and alerts ensure governance and accountability as environments scale.
  • Security and Compliance – Total visibility across cloud infrastructure enables protection for state and activity monitoring, turning insight to action while meeting compliance demands.
  • Asset Management – Cross-account dashboards provide sophisticated reporting for enterprise-wide inventory based on tags, geography, function and more to proactively optimize workloads.
  • Resource Utilization – CloudCheckr provides summary and detailed usage statistics for resources across AWS, Azure, and Google Cloud, offering actionable intelligence to right-size and scale services efficiently.
  • Self-Healing Automation – CloudCheckr enables users to save money, time, and effort to increase operational efficiencies with automated actions for your cloud.

Cloudyn ( https://www.cloudyn.com/ ) :

Cloudyn, a Microsoft subsidiary ( https://docs.microsoft.com/en-us/azure/cost-management/overview ), allows you to track cloud usage and expenditures for your Azure resources and other cloud providers including AWS and Google. Easy-to-understand dashboard reports help with cost allocation and showbacks/chargebacks as well. Cloudyn helps optimize your cloud spending by identifying underutilized resources that you can then manage and adjust . Cloudyn provides following cost management reporting

  • Monitor usage and spending : Reports help you monitor spending to analyze and track cloud usage, costs, and trends. Using Over Time reports, you can detect anomalies that differ from normal trends. Inefficiencies in your cloud deployment are visible in optimization reports
  • Manage costs: Cost allocation manages costs by analyzing your costs based on your tagging policy. You can use tags on your custom accounts, resources, and entities to refine cost allocation. Alerting helps manage costs by notifying you automatically when unusual spending or overspending occurs
  • Improve efficiency: You can determine optimal VM usage and identify idle VMs or remove idle VMs and unattached disks with Cloudyn. Using information in Sizing Optimization and Inefficiency reports, you can create a plan to down-size or remove idle VMs

Embotics® vCommander® https://www.embotics.com/

vCommander is Cloud Management Platform (CMP) that enables cloud automation by integrating seamlessly with on-premise datacenters and public cloud infrastructure. vCommander orchestrates hybrid cloud provisioning and provides governance and cost optimization for both legacy and cloud-native applications. vCommander provides a single pane of glass by working in parallel with your existing public and private cloud infrastructure, including VMware vSphere, Amazon Web Services (AWS), Microsoft® Azure, Google Cloud Platform, Kubernetes and Microsoft® Hyper-V SCVMM. Core functionalities of vCommander are

  • Service Request Automation – Self-service provisioning and management allow users to view and manage VMs, including the ability to request new VMs or request changes to existing VMs
  • Chargeback and IT Costing – vCommander assigns and tracks virtual asset costs in real time, with comprehensive reporting on virtual infrastructure costs and growth trends
  • Capacity and Performance – vCommander predicts and identifies constraining resources so that you can address bottlenecks before they happen
  • Lifecycle and Policy Management – vCommander’s robust policy engine automates VM lifecycle management, ensuring that VMs are decommissioned within set time limits. Flexible notification and expiry extension options ensure that users are well informed and able to keep VMs active for as long as they are needed
  • Search and Reports – vCommander delivers immediate value with best-practice virtual infrastructure reports, VM sprawl information, and capacity and growth indicators.

ORBITERA ( https://www.orbitera.com/billing/ )

The leading multi-cloud commerce solution, and see how it enables simple, seamless, and scalable buying and selling of software and services in the cloud. The core competencies are

  • Consumption or Subscription Billing: Quickly generate accurate, easy-to-read bills across public, private, and hybrid clouds.
  • Custom Pricebooks: Optimize margins with flexible payment models and customer-specific pricebooks. Define prices from single line items to entire pricebooks for each customer or customer tier with a single click.
  • Integrated Dashboard: Aggregate billing data across clouds and providers into a single-pane dashboard. Easily access and analyze detailed, user-level behavior and cloud cost information.
  • Third Party Cloud Integration: Accurately parse customer-level billing reports with complete integration of cloud infrastructure provider billing data. Orbitera supports Google Cloud Platform, Amazon Web Services, Microsoft Azure, CenturyLink, IBM SoftLayer, Acronis, SingleHop, Intermedia and more.
  • Channel Management: Empower channel partners to manage and bill across multiple tiers of sellers

APPTIO ( https://www.apptio.com/ )

Provides cost optimization tools for Hybrid and Public Cloud. Apptio’s software uses machine learning to translate technology costs across the entire IT portfolio (including on-premises systems, vendors, projects, and cloud systems) into a holistic, business-centric view. Customers leverage this view to set future targets, measure business results and drive investment decisions.

  • Through a range of software-as-a-service (SaaS) tools, Apptio gives IT access to the tools and dashboards needed to monitor various IT resources across increasingly complex cloud estates. This includes IT financial management, cloud cost management and vendor insights.
  • Get a single view of Hybrid IT and compare on-premise against cost in multiple cloud platforms
  • Take action on optimization recommendations across public cloud, private cost and on premises
  • Understand public cloud cost and usage to avoid surprises and avoid accountability
  • Manage IaaS and PaaS consumption by infra, app and business units to make better decisions

IT Security Compliance – HIPAA

Health Insurance Portability and Accountability Act of 1996 (HIPAA)

DEFINITION: The Health Insurance Portability and Accountability Act of 1996 (HIPAA) allows persons to qualify immediately for comparable health insurance coverage when they change their employment or relationships. It also creates the authority to mandate the use of standards for the electronic exchange of health care data; to specify what medical and administrative code sets should be used within those standards; to require the use of national identification systems for health care patients, providers, payers (or plans), and employers (or sponsors); and to specify the types of measures required to protect the security and privacy of personally identifiable health care.

HIPAA Compliance

Title I of HIPAA regulates the availability and breadth of group health plans and certain individual health insurance policies. It amended the Employee Retirement Income Security Act, the Public Health Service Act, and the Internal Revenue Code.

Title II of HIPAA defines policies, procedures and guidelines for maintaining the privacy and security of individually identifiable health information as well as outlining numerous offenses relating to health care and sets civil and criminal penalties for violations. It also creates several programs to control fraud and abuse within the health care system. However, the most significant provisions of Title II are its Administrative Simplification rules.

HIPAA stands for the Health Insurance Portability and Accountability Act.  HIPAA does the following:

  • Provides the ability to transfer and continue health insurance coverage for millions of American workers and their families when they change or lose their jobs;
  • Reduces health care fraud and abuse;
  • Mandates industry-wide standards for health care information on electronic billing and other processes; and
  • Requires the protection and confidential handling of protected health information

The HIPAA language uses the terms ‘required’ and ‘addressable’. Required (R) means that the given standard is mandatory and, therefore, must be complied with. Addressable (A) means that the given standards must be implemented by the organization unless assessments and in depth risk analysis conclude that implementation is not reasonable and appropriate specific to a given business setting. Important Note: Addressable does not mean optional.

HIPAA applies to “PHI” (Protected Health Information).  This is information that identifies who the health-related information belongs to  i.e. names, email addresses, phone numbers, medical record numbers, photos, drivers license numbers, etc.

There are 4 rules that you will need to dissect.

  • HIPAA Privacy Rule
  • HIPAA Security Rule
  • HIPAA Enforcement Rule
  • HIPAA Breach Notification Rule

The Privacy Rule requires Business Associates to do the following:

  • Do not allow any impermissible uses or disclosures of PHI.
  • Provide breach notification to the Covered Entity.
  • Provide either the individual or the Covered Entity access to PHI.
  • Disclose PHI to the Secretary of HHS, if compelled to do so.
    Provide an accounting of disclosures.
  • Comply with the requirements of the HIPAA Security Rule.

The Security Rule is made up of 3 parts.

  • Technical Safeguards
  • Physical Safeguards
  • Administrative Safeguards

There are 5 standards listed under the Technical Safeguards section.

  1. Access Control
  2. Audit Controls
  3. Integrity
  4. Authentication
  5. Transmission Security

There are 4 standards in the Physical Safeguards section.

  1. Facility Access Controls
  2. Workstation Use
  3. Workstation Security
  4. Device and Media Controls

There are 9 standards under the Administrative Safeguards section.

  1. Security Management Process
  2. Assigned Security Responsibility
  3. Workforce Security
  4. Information Access Management
  5. Security Awareness and Training
  6. Security Incident Procedures
  7. Contingency Plan
  8. Evaluation
  9. Business Associate Contracts and Other Arrangements

The Enforcement Rule sets civil money penalties for violating HIPAA rules and establishes procedures for investigations and hearings for HIPAA violations

According to the HHS website (www.hhs.gov), the following lists the issues that have been reported according to frequency:

  • Misuse and disclosures of PHI
  • No protection in place of health information
  • Patient unable to access their health information
  • Using or disclosing more than the minimum necessary protected health information
  • No safeguards of electronic protected health information. (www.hhs.gov/enforcement, 2013)

The most common entities found to be required to take corrective action in order to be in voluntary compliance according to HHS are listed by frequency:

  • Private Practices
  • Hospitals
  • Outpatient Facilities
  • Group plans such as insurance groups
  • Pharmacies (hhs.gov/enforcement, 2013)

 Breach Notification Rule

The HIPAA Breach Notification Rule, 45 CFR §§ 164.400-414, requires HIPAA covered entities and their business associates to provide notification following a breach of unsecured protected health information. Similar breach notification provisions implemented and enforced by the Federal Trade Commission (FTC), apply to vendors of personal health records and their third party service providers, pursuant to section 13407 of the HITECH Act.

As a part of breach notification requirements business associates must notify covered entities if a breach occurs at or by the business associate

  • Individual Notice
  • Media Notice
  • Notice to Secretary

 References – Sources 

 

News Updates Dec 2015

Gartner Says the Future of the Data Center Is Software-Defined

IBM Strikes More Direct Cloud Connectivity Deals with Data Center Providers

Understanding the Economics of HPC in the Cloud

Microsoft to follow Amazon into UK with cloud hosting service

The Problem of Inefficient Cooling in Smaller Data Centers

Sensors designed to detect overloaded cables, prevent fires

After IBM And Microsoft, Amazon To Build India Datacenter

Microsoft opens Indian data centers ahead of schedule

Emerson Network Power Identifies Four Emerging Data Center Models

IAAS PUBLIC Cloud Price comparison

Recently I was suggested to provide information on the comparative cloud pricing mainly for the cloud as virtual host.  Its a tedious effort to obtain the similar cloud configuration as almost all cloud provider have different cloud configuration techniques for defining cloud resources in terms of CPU, Memory and Storage.  So I chose to go with the most common and bare minimum cloud configuration available across most of the cloud providers. ( excluded other factors as Load Balancer, Network Rate, Security, I/O Rate, VPN etc)

The below comparison is classified as cloud providers in US,  and Cloud Providers in India. For some of the known cloud providers it was not possible to obtain the cloud pricing for the common cloud configuration so have been excluded from the comparison. Also in some cases, some approximated pricing calculated ( like for IBM cloud, there is no SSD storage as a configuration available).

Public Cloud Comparison
Public Cloud Comparison

The source of calculation is obtained from the below cloud provider price calculator links.

Cloud Price Calculation Resources
Cloud Price Calculation Resources

 

News Update Nov 2015

Cloud Computing

Datacenter 

Tools for Cloud Monitoring and Management

As an add on services on top of Cloud services, Cloud vendors are coming up with tools to help enterprise IT for managing, monitoring, application deployment, orchestrate and track cloud services. These tools are built to help IT experts and business to automate the cloud management process and reduce the cost of Cloud ownership.

Below are the list of some cloud management and DevOps tools  for cloud management and monitoring

Chef

Chef turns infrastructure into code. With Chef, you can automate how you build, deploy, and manage your infrastructure. Your infrastructure becomes as versionable, testable, and repeatable as application code. Chef server stores your recipes as well as other configuration data. The Chef client is installed on each server, virtual machine, container, or networking device you manage. The client periodically polls Chef server latest policy and state of your network. If anything on the node is out of date, the client brings it up to date.

Chef is a company & configuration management tool written in Ruby and Erlang. Chef is used to streamline the task of configuring and maintaining a company’s servers, and can integrate with cloud-based platforms such as Rackspace,Internap, Amazon EC2, Google Cloud Platform, OpenStack, SoftLayer, and Microsoft Azure to automatically provision and configure new machines.

Puppet

Puppet Labs helps sysadmins automate configuration and management of machines and the software running on them. With our puppet , businesses can make rapid, repeatable changes and automatically enforce the consistency of systems and devices, across physical and virtual machines, on prem or in the cloud.

Puppet Enterprise helps automate every stage of the application delivery cycle, from initial provisioning of compute resources to storage, network, security, application and middleware provisioning to automated deployment across your data centers or availability zones. Because your infrastructure is defined as code, you can easily move workloads from the data center to the cloud.

You can use Puppet Enterprise for all of the major cloud service providers: Amazon Web ServicesMicrosoft Azure,  VMware,  OpenStackGoogle Compute Engine

AmazonCloudWatch

Amazon CloudWatch is a monitoring service for AWS cloud resources and the applications you run on AWS. It monitors EC2 for resource matrix like CPU, memory, data transfer, AWS components like RDS DB, EBS volumes, LB, Map Reduce flow. It also allows to use customer matrix for monitoring. set alarms for setting threshold and sending automated alerts. CloudWatch Dashboards enable you to create re-usable graphs of AWS resources and custom metrics so you can quickly monitor operational status and identify issues at a glance

Google Cloud Monitoring Tool

Gain insight into the performance and availability of your cloud-powered applications. Review performance metrics and logs for Google Cloud Platform services and VMs, and create custom dashboards.

Azure Management Studio

One tool to manage your Microsoft Azure cloud storage, diagnostics data and application workflows.   It takes control of your Microsoft Azure cloud storage, monitors Microsoft Azure diagnostics data and streamline Microsoft Azure workflow for cloud provisioning.

ManageEngine – Azure Performance Monitoring Tool

ManageEngine Free Azure Performance Monitor tool helps system administrator or developer to monitor resource utilization of Web/Worker Role instances. This tool can connect to the Windows Azure environment, monitor live feed data and historical data of Web/Worker Role Instances. The list of components as  a part of monitoring include Dashboard ViewGraphs for Performance CountersHistorical DataLive DataEvent Logs

IBM Cloud Monitoring

IBM® SmartCloud Monitoring provides holistic cloud availability, performance and capacity monitoring, broad health dashboards, and granular, detail views of virtual infrastructure components, as well as the virtual machine instances running in the cloud.

Rackspace Cloud Monitoring ( Integrated part of cloud )

Monitoring tool integrated with every cloud provides events processing  and sending notifications,  Customize data collection, threshold criteria, and notification alerts so that monitoring is tailored for workload and organization needs.

BMC Cloud Operation Management Tool

BMC Cloud Lifecycle Management integrates with TrueSight Capacity Optimization and TrueSight Operations Management to help IT deliver fast, reliable cloud services. Intelligent analytics offer you better visibility and control—improving performance, optimizing your resource usage, and reducing your cloud costs.

Apprenda

Apprenda is a full-service enterprise PaaS stack for .NET and Java applications. Specifically, Apprenda is a “PaaS engine” that can be layered atop any arbitrary infrastructure composed of Windows and Linux OS instances. Developers upload apps to a Apprenda PaaS and, in a few button clicks, deploy the application. The Apprenda PaaS takes care of all of the mission-critical heavy lifting of allocating resources, configuring the app, and deploying it to the infrastructure. All management workflows are provided by the platform and “wrapped” around guest applications.

Cloudability

Cloudability is a financial management tool for monitoring and analyzing all cloud expenses across an organization.  It Track critical trends and spikes with customizable dashboards, reports and email, right-size your spending with usage analytics and Reserved Instance portfolio management and regulate your spending with enterprise-wide reporting for ops, finance and management

Monitis

Independently monitor  cloud providers including: Amazon®, Rackspace® and GoGrid®.  It Track virtual server instances, trigger event and notifications in case of server failures, oversee web servers, databases, mail servers, TCP ports and SSH access all based on user rules for existing and automatically launched new server instances. It also allows to add monitors and notifications automatically for newly launched servers based on user defined rules.

Boundary

It provides  early warnings about cloud problems and outages over at Amazon Web Services and Windows Azure. Customers are impressed and rivals are taking note. The secret sauce: Boundary looks at aggregate cloud data from multiple customers, then determines if there are any red alerts in the data

RightScale

RightScale provides configuration, monitoring, automation, and governance of cloud computing infrastructure and applications.  It provides on-demand access to cloud and accelerate application development,  balance agility and control with lifecycle automation and governance and derive insights from past cloud spend to forecast and optimize cloud costs.

Cloud Computing Reference Books

Some reference to cloud computing books are

Cloud Design and Architecture


Cloud Solutions ( AWS, Google Cloud, Azure, Openstack, Vmware )