azure rev002
DESCRIPTION
AzureTRANSCRIPT
WindowsAzure
Introduction
Rich HeltonMay 7, 2014
Introduction
Azure is Microsoft's cloud service software that provides a Software Development Kit to Web sites, Virtual machines, and Cloud Services for either the cloud, on-premise, or a hybrid between both.It is an Open Source SDK that supports several languages other than ASP.NET, such as Python, PHP and Node.js. http://azure.microsoft.com/
SDKslThe SDKs source code Source can be downloaded from GitHub atlhttps://github.com/AzurelThe SDK and other Azure downloads can be found atlhttp://azure.microsoft.com/en-us/downlad
Competing Products
lFor Google Apps,there is the Google App Engine,https://developers.google.com/appengine/lSalesforce.com, https://www.salesforce.comlFor Amazon, there is Amazon Elastic Compute Cloud EC2,http://aws.amazon.com/ec2/
Platform as a Service
Platform as a Service (PaaS) is a category of cloud computing services that provides a computing platform and a solution stack as a service. The provider provides the web services, database services and other services that are required to host the consumer's application.
Infrastructure as a Service
Infrastructure as a Service (IaaS) is a category of cloud computing services that provides a virtual machine and cloud storage. The provider provides the networks, servers, storage, and other infrastructure pieces that are required to host the consumer's application.
Software as a Service
Software as a service (SaaS) is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet. For example, a CRM framework to design customer service software applications hosted in the cloud.
Azure Cost Calcluator
http://azure.microsoft.com/en-us/pricing/calculator/
Execution Models
There are three ways to create applications through Azure. 1) By creating Websites2) By creating Virtual Machines3) By creating cloud services
AzureWebSites
Creating
We can create websites in the portal console through wizards.There will also be a Web role used for most web functions.
WebMatrixWebMatrix can be used to create the Azure Web Site.
WebMatrixWe can edit live or locally.
WebMatrixWe can edit live or locally.
Editing pages remotely
ASP MVC deployingC# Applications in ASP MVC can be created and deployed to the Azure cloud. This is done by creating the application in Visual Studio with the Azure SDK and publishing to the cloud.
ASP MVC publishingPublish to deploy to the cloud, Package to save it in the cloud packages for deployment later.
Visual StudioVisual Studio, with the Azure SDK, has many built-in tools for Azure, such as the use of Server Explorer to explore your Azure resources that are configured.
AzureVirtual Machines
Creating.....We can create Virtual machines in the portal console through wizards.
Images....Many VM images are supported, including Ubuntu
Sizes....Many VM sizes are supported, including Ubuntu, including 56GB memory
Cloud Services
Cloud Services
When creating your cloud services, a unique URL must be selected that will be appended with “cloudapp.net” to access your services at a later time.lCloud services are background applications living in your cloud partition, such as web services or scheduled tasks.lThe Azure fabric will manage these applications.
CreatingYou can also create a cloud service, which will require a cloud package, or cspkg file, and deployment file, or cscfg file.
PackagesThe Cloud Service Package file is basically a zip file.lIt is created, as well cloud service configuration, or cscfg file, from Visual Studio using the Azure SDK when we “Package” an Windows Azure application.lWe can “Publish” the application to the Azure cloud from Visual Studio.
SQL Databases
SQL Database
lWe can create a SQL database as we normally would on a SQL Server. The wizards and interfaces may be different, but the result is to be the same for the cloud. l
SQL Database DesignlWe can create a SQL database tables and Stored Procedures normally, just through an Azure interface.
SQL Database MonitoringlSince the SQL database is working the same in the cloud as on-premise, working through a cloud connection string, Visual Studio SQL tools, programs and SQL Server Reporting Services (SSRS) can be used to interact with the cloud SQL database to perform normal monitoring, logging, and other actions to check the SQL database.
SQL thru Visual StudiolSince the SQL database is working the same in Visual Studio, we can access the SQL database via Visual Studio to Azure, and create tables, data, etc.
Storage Management
Storage
lBesides the SQL database, there are three other types of storage:l1) Table Storagel2) BLOB Storagel3) Queuesl
CreationlStorage creation begins with creating a Storage account To create a Storage account, simply do “New-> Data Services-> Storage”.
l
Table StoragelIn this configuration piece, we are configuring No-SQL tables that require a key-value pair to access the entity in the row.lThe Account Name and Account Key are used as part of the connection string to access the table.lThe models are entities with getters and setters that match the fields in the table.lThe entities can be inserted, deleted, and have lookup in the table.lIt allows smaller space for quicker lookups.
Table Storage PropertieslPartition Key – A unique key associated with partition as a collection of all associated rows. This is defined to define which partition to access. An example is the name of the table. lRow Key – A unique key to identify the row in the parturition, usually a unique id.lTimestamp – The time the row was updated and is updated by Azure.
BLOB StoragelBLOB storage is for Binary Large Objects (BLOB). lAn example of a BLOB object is a media file for video. lBLOBs are unstructured data that are larger binary files.
Azure QueuesThe main uses of Queues includes:1) Processing messages asynchronously2) Passing messages from an Azure Web role to an Azure Worker role
ManagingStorage Accounts
Azure Storage Explorerhttp://azurestorageexplorer.codeplex.com/
Visual Studio Server Explorer
http://msdn.microsoft.com/en-us/library/ee405484.aspx
Azure DashboardWe can set which types of storage to monitor
Business Analytics
Business Analytics
lWe can report on Business Analytics from:1) SQL Reporting such as SQL Server Reporting Services (SSRS). 2) Hadoop
Hadoop
Hadoop Introduction
Hadoop is Open Source Apache framework found at http://hadoop.apache.org/ lIt is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models.
Hadoop Distributed File SystemThe Hadoop Distributed File System (HDFS) is a distributed file system that provides high-throughput access to application
MapReduceHadoop MapReduce is a software framework for easily writing applications which process vast amounts of data (multi-terabyte data-sets) in-parallel on large clusters (thousands of nodes) of commodity hardware in a reliable, fault-tolerant manner.http://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html
HiveHive is a SQL-like query language for working with big data like Hadoop from Apache, http://hive.apache.org/ .lThe Hive query language is called HiveQL.
PigAnother Apache framework for working with Hadoop is Pig, see http://pig.apache.org/ , which uses a high-level procedural language refereed to as “pig Latin” that is not as SQL-like as Hive.Note, Hive was created by Facebook, Pig was created by Yahoo.
HDInsightHDInsight is Microsoft's 100% Apache compatible Hadoop distribution, supported by Microsoft. HDInsight, available both on Windows Server or as an Windows Azure service.
HDInsight Creation
Azure AppFabric
AppFabricAppFabric is any n-tier .NET application that spans the web, middle, and data tiers, composes with external services, and is inherently written to the cloud architecture for scale and availability.
AppFabric•Adding a caching provider and a monitoring service to WCF and WF creates the Microsoft AppFabric Framework and Architecture.•There is a special version that supports Azure.•The Micrsoft.ServiceBus.dll and namespace will be used to extend Service Bus helper extensions to WCF and WF.
AppFabric•Adding a caching provider and a monitoring service to WCF and WF creates the Microsoft AppFabric Framework and Architecture.•There is a special version that supports Azure.•The Micrsoft.ServiceBus.dll and namespace will be used to extend Service Bus helper extensions to WCF and WF.
Azure AppFabric pieces•Azure AppFabric components:•Enterprise Service Bus•Caching•Application Monitoring•Workflow Persistence•Service Management
Azure ServiceBus
What is the Azure Service Bus?
Windows Azure Service Bus provides a hosted, secure, and widely available infrastructure for widespread communication between different messaging endpoints to include web services.
Service Bus Communications
The Service bus communicates via three methods:1) Queues – one-to-one messaging through queues.2) Topics – one-to-many publish-subscribe messagings.3) Relays – one-to-one requests-replies not queuing
Creation
Access Connection
AzureCaching
What is a Cache? A cache is a storage location or BLOB to hold data.
Creation Normally created through Azure SDK tools, see https://github.com/Azure/azure-sdk-tools/wiki/Managed-Cache PS C:\> help azuremanagedcache
Name Category Module Synopsis---- -------- ------ --------Get-AzureManagedCache Cmdlet Azure Gets the Azure Caches in your Azure account.Get-AzureManagedCacheAccessKey Cmdlet Azure Gets the access keys for an Azure CacheNew-AzureManagedCache Cmdlet Azure Creates an Azure cacheNew-AzureManagedCacheAccessKey Cmdlet Azure Creates new access keys for an Azure Cache.Remove-AzureManagedCache Cmdlet Azure Deletes an Azure CacheSet-AzureManagedCache Cmdlet Azure Changes the properties of an Azure Cache.
Cache Powershell Cmdlets PS C:\> help azuremanagedcacheName Category Module Synopsis---- -------- ------ --------Get-AzureManagedCache Cmdlet Azure Gets the Azure Caches in your Azure account.Get-AzureManagedCacheAccessKey Cmdlet Azure Gets the access keys for an Azure CacheNew-AzureManagedCache Cmdlet Azure Creates an Azure cacheNew-AzureManagedCacheAccessKey Cmdlet Azure Creates new access keys for an Azure Cache.Remove-AzureManagedCache Cmdlet Azure Deletes an Azure CacheSet-AzureManagedCache Cmdlet Azure Changes the properties of an Azure Cache.
WorkflowPersistence
Workflow Persistence Workflow Persistence is the ability to create persistence in Windows Workflow.Persistence can be created through various means of Azure and on-premise storage, including Table storage and the SQL database to save state through the workflow.
ServiceManagementand Monitoring
Service ManagementWe control the services through portal.
AlertsWe can create Alerts on a service to give us notifications.
Alert ConditionsThe notifications are based on defined conditions.
Microsoft Azure Management LibrariesThe Microsoft Azure Management Libraries can be used to automate, deploy, and test cloud infrastructure:lMicrosoft Azure Virtual MachineslHosted and Infrastructure ServiceslSchedulerlStorage AccountslSubscription informationlNetworkslWeb Sites
Azure DiagnosticslWindows Azure Diagnostics enables you to collect diagnostic data from an application running in Windows Azure. You can use diagnostic data for debugging and troubleshooting, measuring performance, monitoring resource usage, traffic analysis and capacity planning, and auditing.
Application TracelTracing is a way for you to monitor the execution of your application while it is running. You can use the System.Diagnostics.Trace, System.Diagnostics.Debug, and System.Diagnostics.TraceSource classes to record information about errors and application execution in logs, text files, or other devices.
AzureScheduler
What is a Scheduler? Azure Scheduler allows you to invoke actions based on a schedule. These actions include:lCalling HTTP/S enpointslPosting a message to a storage queuelCreate a scheduled job to call services both inside and outside Azurelhttp://azure.microsoft.com/en-us/services/scheduler/
Azure Scheduler Wizard
Mobile Services
CreatingYou can also create a mobile services for mobile application deployments.
Media Services
CreatingYou can also create a media services for media deployments.
Media ComponentsThere are several features in Windows Azure to assist the user with working with media files:1) Media ingest – uploading media files into the Azure cloud, storing into BLOBS.2) Encoding – translating into different media formats. 3) Content protection – provides digital rights protection for media4) Ad Insertion – insert ads in video streams5) Streaming6) Additional Add-ons.
IdentityManagement
Access Control
lWindows Azure uses access control in 2 separate means:l1) Using Active Directory inside the Virtual Machinel2) Using Active Directory inside the cloud
lHowever, we can sync Azure Active Directory with the on-premise Active Directory.
l
Azure Active Directory Features
lWe can sync Azure Active Directory with on-premise Active Directory.lCan provide Single Sign On (SSO) for cloud applications.lIntegrate with other cloud providers and services to provide SSO. lManage users and data repositories across the cloud.
Access Control
lWindows Azure uses access control in 2 separate means:l1) Using Active Directory inside the Virtual Machinel2) Using Active Directory inside the cloud
l
Azure Active DirectorylWindows Azure Active Directory is already installed by default. l
Networking
Networks
lThere are three ways to use the networking services from Azure:l1) Virtual Networkl2) Connectl3) Traffic Management
Virtual Networks
lVirtual Networks allow a on-premise network to connect to a cloud network to the Virtual Machines.
Azure Connect
lAzure Connect is to connect certain computers on-premise to certain applications in the cloud. For instance, connecting a DBA's computer to the SQL database in the cloud.
Traffic Management
lAzure Traffic Management is about connecting users or other applications to a cloud region. For instance, focusing Asian customers to the Asian clouds for better local bandwidth.
Questions?