Upload
others
View
10
Download
0
Embed Size (px)
Citation preview
Microsoft Azure
Tomáš Herceg
Microsoft MVP (ASP.NET)
Microsoft Regional Director
What Is Azure
https://www.azure.com
SaaS, IaaS, PaaS
Windows, .NET, MS SQL, ale i Linux, Java, PHP, Python, Oracle, Redis...
Pricing
DreamSpark
BizSpark – MSDN Subscription
Pay-as-You-Go
Enterprise Agreement
Management & Tools
Management
Management Portal (old & new)
https://portal.azure.com
PowerShell
https://azure.microsoft.com/cs-cz/documentation/articles/powershell-install-configure/
Azure CLI (multi-platform)
https://azure.microsoft.com/cs-cz/documentation/articles/xplat-cli-install/
REST API
Developer Tools
Visual Studio
Community Edition (FREE)
Azure SDK
https://azure.microsoft.com/cs-cz/downloads/
Introduction
Azure Portal
Subscriptions
Resource Groups & Resources
Old Portal
Billing Portal
Pricing Calculator
Spending Limit
Azure App Service
Web App
Classic web app hosting (.NET, Java, PHP, Python, Ruby...)
(Auto)scale, deployment slots, A/B testing
API App
REST API
(Auto)scale, authorization, SDK generation
Mobile App
Social Network Authentication
Data Sync
Logic App
Workflow Creation
Integration with SalesForce, Office365, Twilio...
Web App
Manual / Auto Scale
Continuous Delivery
Deploy from a Git branch
Deployment Slots
Immediate switching between staging and production slots
Configuration Rewrites
Connection Strings
Application Settings
Diagnostics portal
nameoftheapp.scm.azurewebsites.net
Storage Options in Azure
Relational Data
SQL Azure
Key-Value Data
Redis
Table Storage
Document DB
Blobs
Blob Storage
Other
Storage Queue
Search
SQL Azure
Server (virtual group of databases)
1 or more databases
Shared user name & password
Shared firewall rules
Database
DTU (number of average database transactions / second)
Elastic Database Pool
SQL Azure
Data Migration
*.BACPAC (schema + data)
SQL Management Studio
Tasks > Import/Export Data-Tier Application
Limitations
SQL Server authentication & TCP/IP connections only
No multi-database & multi-server queries
No system table access
Requires clustered indexes
No SQL CLR support
Database engine only (no Reporting, Integration, Analysis services)
Azure Document DB
Collections
Indexing Policy
Default: hash for strings, ordering for numbers
Hash
Querying
SQL dialect
https://www.documentdb.com/sql/demo
Azure Storage
Blob / Table / Queue
Storage Account
Name
Access Key
Max. 500 TB / storage account
Table Storage
Non-relational storage
Schema-free (max 255 columns)
Max. row size 1MB
Very slow filtering, ordering & search
Very fast access by primary key
Scalable
Partition Key, Row Key, Timestamp
Blob Storage
Containers
Access Levels
Shared Access Signature
Blob Types
Block Blob
4 MB blocks, max. 50000 blocks
Page Blob
512 B blocks, max 1TB
Optimized for read/write access
Storage Types
Standard Storage
Premium Storage
Better performance
Optimized for virtual machines
Queue Storage
Multiple writers, multiple readers
Order of messages not guaranteed (if you need, use Service Bus)
Enqueue waiting Dequeue process message Delete
If not processed within specified timeout (default 30), the message is
enqueued again
Use DequeueCount property to get rid of poisoned messages
Virtual Machines & Resource Manager
Supports both Windows and Linux
Resource Manager Deployment
JSON template
Deployment via PowerShell, Azure CLI or REST API
https://azure.microsoft.com/en-us/documentation/templates/
https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-create-windows-powershell-resource-manager-template/
https://github.com/Azure/azure-content/blob/master/articles/virtual-machines/virtual-machines-extensions-customscript-with-template.md
Prepare Custom VM Image
Windows: sysprep
Linux: sudo waagent –deprovision
https://resources.azure.com/
Service Bus
Topics vs Subscriptions
Cloud and On-Premise Solution
More robust than Azure Storage Queue
https://azure.microsoft.com/cs-cz/documentation/articles/service-bus-
azure-and-service-bus-queues-compared-contrasted/
Application Insights
Advanced Application Monitoring
Trace Events & Exceptions with custom metadata
Server Performance, Page Load Times, App Availability...
Correlation ID & Search Events by User
Azure Functions
Micro-service Architecture
Uses C# Script language (.csx files)
#ref directives to load packages and assemblies
Connectors for input and output
Blob / Queue storage
Service Bus
HTTP request
Webhook
Docker Basics
Dockerfile
A script used to build a single container
Docker-compose
Compose several containers and deploy them together
docker run
docker-compose up
Azure Container Service
Hosting and Orchestration of Containers
Docker Swarm
Cubernetes
DC/OS
Master – manages the farm of agents
Agents – hosts containers
Load balancer – seting up port forwarding and health probes
Connect using SSH to Master
tunneling of port 2375 to localhost:23750
Set DOCKER_HOST environment variable to localhost:23750
Use Docker CLI commands to work with containers
Azure Machine Learning
Algorithms
Classification: Is this A or B (or C)?
Regression: How Much?
Clustering: How it is organized?
Anomaly Detection: Is this weird?
Reinforcement Learning: What should I do next?
Sample project with data (Handwritten digit recognition)
http://www.riganti.cz/download/mff_ml_exercise.zip
Azure Machine Learning