The purpose of this GitHub repository is to help startups quickly engage and get up and running on Azure services. You'll find links to key documentation, tutorials and code packets. If you have feedback on the content please submit an issue.
Table of Contents
|- Getting started on Azure Learning paths, tutorials, videos, and all you need to know to get ramped up on Azure
- Migrating to Azure Tools & services, tutorials, and official information on how to move your existing solution to Azure.
- Tools and links Azure price calculator, Azure Trust Center, and other useful additions to help your success on Azure.
|- Infrastructure Services
Compute, Networking, Storage
- Platform Services
Web & Mobile, Data,
Intelligence & Analytics, IoT
- Cloud Architecure patterns, practices, and architecture blueprints.
- Azure Resource Manager overview and availability chart
- Feature highlights Get beyond the basics. Helpful features in Azure for Start-ups
Getting Started on Azure
Get started on Azure – Link to Azure.com Getting Started page.
Interactive Azure Map - Interactive overview of services available on Azure. Click on a service to learn about it.
Azure Learning Paths - Get started with these learning paths for different Azure Services.
Azure on Microsoft Virtual Academy - Virtual courses on cloud development.
Azure on Channel9 - Video tutorials about Azure services.
Startup Offers - Get free cloud credits and offers through Microsoft’s BizSpark program.
Microsoft Azure for Amazon AWS Cloud professionals: Getting Started - Showcase and demo of Microsoft Azure features and comparison to Amazon Web Services to see how they match up.
- Getting started on Azure video seriesGetting Started on Azure: *Overview of the Azure portal*- An introduction to the Azure portal, covering navigation and key elements of the portal including the Azure dashboard, marketplace, and resources.
- Getting Started on Azure: *Resource Groups* - Learn what to consider and how to create and manage a resource group on the Azure portal.
- Getting Started on Azure: *Storage Accounts* - Learn how to create and manage a storage account on the Azure portal and select the storage option that is right for you.
- Getting Started on Azure: *Virtual Networks* - Learn how to set up a virtual network including IP address blocks, DNS settings, security policies, and routing tables on the Azure portal.
- Getting Started on Azure: *Virtual Machines* - Learn how to set up and configure an Ubuntu virtual machine on the Azure portal.
- Additional Getting Started on Azure videos - View additional Getting Started on Azure videos such as Windows Server Virtual Machines, Web Apps, SQL Database on Azure and more.
Azure App Service
More choices and support for developers with the availability of App Service on Linux and Web App for Containers Applications are changing the business landscape—from delivering amazing customer experiences to transforming internal operations. To keep pace, Microsoft Azure offers App Service, which helps your developers quickly build, deploy, and scale applications without having to maintain the underlying web servers or operating system. M With this, App Service now offers built-in image support for ASP.NET Core, Node.js, PHP, and Ruby on Linux. It also gives developers the option to bring their own Docker-formatted container images supporting Java, Python, Go, and more. In other words, it provides a complete development platform to enable your developers to gain high productivity and easy deployment.
Automate the provisioning of devices to Azure IoT Hub Provisioning is an important part of the lifecycle management of an IoT device. Microsoft has announced the preview of Azure IoT Hub Device Provisioning Service to remove the tedium of manually configuring IoT devices. This automated service can be used to provision millions of devices. The IoT Hub Device Provisioning Service is a helper service for your IoT hub that enables zero-touch, just-in-time provisioning to the right IoT hub without human intervention, enabling you to provision IoT devices in a secure and scalable manner. The Device Provisioning Service is the only cloud service that provides complete automated provisioning, including registration of the device to the cloud as well as configuration of the device.
Azure Log Analytics
Get deep insights into containers with the newly announced Container Monitoring Solution on Azure Log Analytics Docker containers is a growing technology for running modern applications. It helps developers and DevOps with easy provisioning and continuous delivery in modern infrastructures. To simplify Docker container monitoring and management, Microsoft has announced the general availability of the Container Monitoring Solution on Azure Log Analytics, available on Azure Marketplace. It provides deep insights into containers supporting Kubernetes, Docker Swarm, Mesos DC/OS, and Service Fabric container orchestrators on multiple OS platforms. It helps you know which containers are running, what image they're running, and where they're running. You can view detailed audit information that shows commands used with containers. And you can troubleshoot containers by viewing and searching centralized logs without having to remotely view Docker or Windows hosts.
Azure Event Grid
Microsoft announces Azure Event Grid, a unique and intelligent event service for modern applications Modern applications—including Internet of Things (IoT), mobile apps, business process applications, and more—are built around events. This drives the need for event-based programming. To support this need, Microsoft recently announced the first-of-its-kind Azure Event Grid, a fully managed, intelligent event-routing service that allows for uniform event consumption using a publish-subscribe model. You can build event-based, serverless applications with a higher level of abstraction, so you don’t need to worry about infrastructure, provisioning, or scaling. You can use Event Grid to react to relevant events across Azure and non-Azure services in near-real time. And you can create richer app scenarios by connecting serverless logic to events from multiple sources.
Azure Web Apps
Deploy your Java app to Azure by using a new Maven Plugin With the release of a new Maven Plugin for Azure Web Apps, developers can now deploy or redeploy Java-based web applications over Linux Azure App Service or Windows App Service in a couple easy steps. The Azure App Service provides a managed web app environment to enable your Java application to run smoothly on Azure. The only thing the developer needs to worry about is the code of the Java app. App Service handles the provisioning, load balancing, auto-scaling, and app health monitoring. You can also customize the settings and create a custom layout for your application.
Azure Batch Rendering
New Azure Batch Rendering to run large-scale rendering workloads seamlessly on Azure Rendering visual effects is one of the most complex aspects of a cinematic production. Major challenges in rendering include finding the right infrastructure, setting up and managing a render farm made up of high-performance computing clusters, and managing associated workflows. To overcome these challenges, Microsoft has announced the public preview of Azure Batch Rendering service, which offers cloud-scale rendering capabilities on a pay-per-use basis. The Batch Rendering service handles job scheduling and queueing, managing failures and retries, and auto-scaling for your rendering jobs. You can submit rendering jobs via client applications like Autodesk Maya, 3ds Max, and Arnold and get easy scaling, monitoring, and asset management. A flexible programming model and an SDK that’s available in various languages allow your developers to integrate their own pipelines and workflows into the solution. Batch Rendering accelerates large-scale rendering jobs to deliver results to your customers faster.
Hyper scale compute
Microsoft brings container orchestration for Windows Server Containers to Azure Service Fabric Running a traditional application inside containers is an easy first step to gain some of the benefits of a microservices architecture, such as improved density and easier application lifecycle management. Azure Service Fabric is the Microsoft microservices platform, and Microsoft has announced the release of Service Fabric 5.6 runtime and 2.6 SDK, which support the orchestration of Windows Server Containers. This release includes many new features targeted at container orchestration, including a DNS service, resource governance, Microsoft Operations Management Suite integration, and more. It also contains support for Docker Compose for deploying containerized apps to Service Fabric with Microsoft Visual Studio 2017 tooling integration.
Azure Video Services
Video Indexer—a cloud service that lets you easily extract insights from your videos When video and audio content lacks human-understandable, time-stamped metadata, it can be difficult to find. Generating such metadata for video and audio is expensive and next to impossible when you have a high volume of this type of content. Microsoft has announced the public preview of a cloud service called Video Indexer as part of Microsoft Cognitive Services. Video Indexer enables organizations with digital video and audio content to automatically extract metadata and use it to build intelligent, innovative applications. It builds upon media AI technologies to make it easier for you to extract insights from video and audio. You can use Video Indexer to power new forms of content discovery, like searching for spoken words, faces, characters, and emotions, and to enrich your apps with embedded video insights to drive user engagement.
Massive-scale cloud rendering with Autodesk on Azure When implementing a rendering project, it’s hard to find the right infrastructure, set up a render farm made up of high-performance compute clusters, and then manage the render farm. Even small projects can take anywhere from days to weeks to complete. The cloud is perfectly suited for variable-length and long-running rendering projects. Microsoft has announced the preview of Azure Batch Rendering and its integration with Autodesk. When used together with Autodesk, Azure opens doors for artists, engineers, designers, and developers. Built on top of Azure Batch, a mature production service, this new rendering platform will allow you to seamlessly submit rendering jobs by using Autodesk’s suite of products—including Autodesk Maya, 3ds Max, and Arnold—together with the agility, flexibility, and scalability of Azure compute.
Microsoft extends Azure managed database services with the introduction of MySQL and PostgreSQL MySQL and PostgreSQL databases are among the popular open-source choices used by developers to build and deploy a variety of applications, including web, mobile, content management system (CMS), and customer relationship management (CRM) apps. Microsoft has announced the preview of managed database services with two additions to the Azure relational database platform: Azure Database for MySQL and Azure Database for PostgreSQL. Your developers can now choose their favorite database engines delivered as managed services on Azure. These services seamlessly integrate with most common open-source programming languages—like PHP, Python, and Node.js—and application development frameworks like WordPress, Magento, Drupal, Django, and Ruby on Rails.
Build fast, scalable, globally distributed applications by using Azure Cosmos DB Microsoft has announced the general availability of Azure Cosmos DB, a globally distributed multimodel database. Azure Cosmos DB is the first globally-distributed data service that lets you elastically scale throughput and storage across any number of geographical regions while guaranteeing low latency, high availability, and consistency—and it’s backed by the most comprehensive SLAs in the industry. Azure Cosmos DB is the right solution for your globally distributed mission-critical applications—including web, mobile, gaming, and IoT applications—when predictable throughput, high availability, low latency, and a schema-free data model are key requirements.
Your Microsoft-managed admin machine in Azure, for Azure Cloud Shell provides an interactive, browser-accessible, pre-configured shell experience for managing Azure resources without the overhead of installing, versioning, and maintaining a machine yourself. The authenticated shell experience is hosted in the cloud and accessible from virtually anywhere. It enables you to use common tools and programming languages in a shell that’s updated and maintained by Microsoft. You can also persist your files across sessions by using attached Azure File storage.
Gain powerful info about your web app by using new tools in Microsoft Azure Application Insights Which features of your web app are most popular and most frequently used? Do your users achieve their goals with your app? Microsoft has released new tools in Application Insights to help you understand user behavior and empower your development team to better understand how customers use your web apps. Every time you update your app, you can assess how well it works for users. You can get rich performance monitoring, powerful alerting, and easy-to-consume dashboards to help ensure your applications are available and performing as you expect.
Storage Service Encryption (SSE) for Azure File Storage. When enabled, SSE automatically encrypts data at rest using a 256-bit encryption key—helping organizations meet organizational security and industry compliance requirements.
Instant File Recovery from Cloud using Azure Backup. Restore as a service (RaaS) enhances your Azure Backup capabilities by instantly restoring files and folders from multiple recovery points in the cloud or on-premises. RaaS enables you to maintain business continuity in addition to high availability.
Easily scale with Kubernetes, now available on Azure Container Service (ACS)
Kubernetes lets you scale without increasing your ops team. Startups that focus on cloud-native application development, mobile application development, gaming, or e-commerce can quickly deploy container-based applications to enable agility, portability, and scalability.
Boost cloud security with Azure Relay Hybrid Connections In the past, this was only available for WCF services. Hybrid Connections removes the dependency upon WCF by using open standards-based protocols. Now you can establish bi-directional connections from any on-premises service, in any language, to your cloud-based clients.
Azure Stream Analytics
Track data with real-time geospatial analytics in Azure Stream Analytics Azure Stream Analytics now offers real-time geospatial analytics, with production-grade quality and just a few lines of code. The new capabilities include native functions to compute geospatial operations (such as overlap between polygons, intersection between paths, and more), as well as the ability to join multiple streams for more complex calculations.
Adapt content for global users with Azure Traffic Manager Geographic Routing Azure Traffic Manager Geographic Routing lets you get the right content to the right users by customizing it for the location of your customer, by country or region. This means you can make your service compliant with local data access or privacy mandates. Your startup will be able to easily maintain a global presence and direct user traffic to specific endpoints based on geographic location.
Azure Resource Manager (ARM)
Simplify VM deployment using custom templates in Azure Resource Manager (ARM)Custom Azure Resource Manager (ARM) templates are a great way to make deploying virtual machines and resources a repeatable, easy-to-automate process. The template reference documentation explains the available resource types you can use to create custom templates for various Azure resources—including what values to use in your template.
Working with Azure
Azure Portal - The best way to get started is with the Azure portal, a web based interface for managing Azure.
Azure SDKs & Tools - SDKs for many common languages such as .NET, Java, Node.js, Python, Ruby and other tools.
Azure PowerShell - Work with PowerShell cmdlets to perform Azure operations.
Azure CLI – Create/manage Azure resources using a set of open-source shell-based commands.
Azure API Reference - Reference for Azure REST and .NET APIs.
Azure Solutions - A listing of top Azure solutions and their brief descriptions
Azure Products and services – A searchable list of all Azure products and services
Migrating to Azure
- AWS to Azure mapping - Map between Azure and AWS services
- AWS to Azure migration - Migrate virtual machines in Amazon Web Services (AWS) to Azure with Azure Site Recovery
- MongoDB to Azure Migration resources
Tutorials and Sample code
AWS VM to Azure VM migration AWS CDN to Azure CDN Migration AWS S3 to Azure Blob Storage migration AWS CDN to Azure CDN Migration ASP.NET Web App migration from AWS to Azure
Tools & Services
- AWCopy - Azure service that provides parallelized copies of S3 files in Amazon Web Services to Azure blobs.
- CloudBerry Cloud Migrator - service to transfer files from one cloud storage to another (Amazon S3 & Glacier, Windows Azure Blob Storage, Rackspace Cloud Files and FTP servers).
- Azure Import/Export Service - Transfer Data to Blob Storage.
Infrastructure Services (IaaS)
Infrastructure as a service (IaaS) refers to the compute, networking and storage building blocks which allow you to build any kind of cloud solution. IaaS allows you to have maximum control on how you manage virtual machines, network configuration but requires you to invest in attaining robustness, availability and scalability in the cloud.
- Learning Path for Azure VMs - Learn how to deploy and manage VMs.
- Linux VM – Get started creating a Linux VM on the Azure Portal and utilize proven practices to run the Linux VM.
- Windows VM – Get started creating a Windows VM on the Azure Portal
- VM Extensions - Gain an overview of extensions to virtual machines such as the Chef, Docker or custom script extensions. Direct link to Docker VM Extension
- VM Scale Sets Overview - Learn about deploying and managing VM scale sets.
- Service Fabric Overview – a distributed systems platform that makes it easy to package, deploy, and manage scalable, reliable microservices.
- Choose between App Services, Service Fabric and VMs - including scenarios and recommendations.
- Docker Documentation - Starting point for documentation on Dockers including Docker for MAC, Windows, Linux, etc.
- Docker VM Extension - Create a Docker environment in Azure using the Docker VM extension.
Tutorials and Sample code
Containers on Azure - Perform heavy computational tasks (for example video or audio encoding, hash calculation, data encryption, etc.) and make the process scalable and cost effective using Docker containers. Deploy to Azure using the Docker VM Extension - use Resource Manager templates to deploy the Docker VM Extension in a custom, production-ready environment that you define AWS S3 to Azure Blob Storage migration Ruby on Rails web app on Azure VM
- Virtual Networks (Vnets) Overview – Learn about Azure Virtual Networks and how to create them.
- Network Security Groups – Learn about Network Security Groups (NSGs) and how to configure them.
- Load-Balancers – Learn about Azure Load Balancer and to configure one.
- Introduction to Azure Storage – Learn the basics of Azure Storage including Blob, Table, Queue, and File storage.
- Azure Backup – Learn about and how to implement Azure Backup to back up (or protect) and restore your data in the Microsoft cloud.
- Azure Site Recovery – Orchestrate your disaster recovery plan.
- Create a storage account – Learn how to create a general purpose or blob storage account with links to getting started on Blob, Table, Queue, and file storage accounts.
Platform Services (PaaS)
Platform as a Service (PaaS) resources are Azure services which are built for most cases and allow you to enjoy high availability, scalability and robustness out of the box. Instead of managing VMs directly, let Azure manage the underlying infrastructure and focus on building your applications and solutions.
Web & Mobile
- Azure App Service overview – Learn about Web Apps, Mobile Apps, API apps.
- Azure Web Apps – Create and deploy mission-critical web apps that scale with your business.
- Azure Mobile Apps – Build engaging iOS, Android, and Windows apps.
- Getting Started with Xamarin - Create cloud-powered mobile apps faster across iOS, Android, and Windows. Overview of Xamarin and how to use it.
- Notification Hub overview - An easy-to-use, multiplatform, scaled-out push infrastructure.
- Azure Search - Ready-to-use service that you can populate with your data and then use to add search to your web or mobile apps.
- Azure Mobile Services REST API Reference MSDN – Documentation on Mobile Services REST API and the available operations.
- Azure Deployment Using Git – Learn the basics and understand available resources to support publishing web applications on Azure using Git workflows.
- Azure Media Services (AMS) Overview – Learn about Azure Media Services and how to build scalable media management and delivery apps.
Tutorials and Sample code
Notification Hub demo - Deliver push notification messages to mobile applications on iOS, Android and Windows Phone platforms using Azure Notification Hub PHP, Node.js, and Python - Deploy PHP, Node.js and Python web apps on Azure and learn how to configure Azure App service
- Azure SQL Overview – Gain an overview on SQL and how to create a SQL DB on Azure.
- Azure SQL (PaaS) vs. SQL Server on Azure VMs (IaaS) - Learn what scenarios are better for an IaaS vs. PaaS SQL solution.
- DocumentDB – Learn about this fully managed NoSQL database service and how to build and manage DocumentDB applications.
- MongoDB on Azure – Learn about MongoDB on Azure and deployment recommendations.
Tutorials and Sample code
Import data to DocumentDB with the Database Migration tool – Learn how to use the open source DocumentDB data migration tool to import data to Azure DocumentDB Install MongoDB on a Windows VM - Learn how to install MongoDB on a Linux VM in Azure. Install MongoDB on Linux - Learn how to install MongoDB on a Linux VM in Azure. Create a web app that connects to MongoDB – Learn how to create a web page in Azure that connects to MongoDB running on a VM. SQL DB and Elastic pool feature tutorials – simple step-by-start tutorial for different SQL feature areas
Intelligence & Analytics (incl. Machine learning and Cognitive services)
Azure HDInsight - An introduction to Hadoop on Azure HDInsight, its ecosystem, and big data. Learn about the Hadoop components, common terminology, and scenarios for big data analysis.
Stream Analytics - Overview of Azure stream analytics, low-cost solutions to gain real-time insights from devices, sensors, infrastructure, and applications
Additional Intelligence and Analytics services – HDInsight, Machine Learning, Data Factory, Log Analytics, Data Catalog, Power BI Embedded, Data Lake store and much more.
Azure Machine Learning Studio - A collaborative, drag-and-drop tool you can use to build, test, and deploy predictive analytics solutions.
Get started with Microsoft Cognitive Services – Learn how to easily add powerful artificial intelligence capabilities to your applications with Microsoft Cognitive Services. See Cognitive Services for more information.
Cognitive Services: Making AI Easy – The rise of machine learning has produced an explosion of APIs to make your applications more intelligent. Learn about more than 20 Cognitive Services APIs. You'll see powerful demos, experience the simplicity of calling this code, and get ideas for adding this functionality to your own applications.
Tutorials and Sample code
Data Science and Machine Learning – Microsoft Imagine course content - learn fundamental concepts of machine learning and use Spark to predict the trend and patterns of massive data sets
Internet of Things
Azure IoT suite documentation - Starting point to learning and using the Azure IoT suite.
Tutorials and Sample code
IoT Microsoft Imagine course content – learn how to collect streaming data from IoT devices and analyze the streaming data MyDriving App IoT sample – MyDriving app uses a wide range of Azure services to process and analyze car telemetry data for both real-time insights and long-term patterns and trends
- Cloud Patterns & Practices - Best practices for building cloud solutions. Including checklists and design patterns.
- Architecture Blueprints - Architectures for an array of different cloud scenarios.
Additional Useful Tools & Links
- Azure Price Calculator - Easily calculate pricing of Azure Services.
- Azure Trust Center - Learn about Azure security, compliance, privacy and transparency.
- Azure Subscription Service Limits - Learn about Azure subscription and service limits, quotas, and constraints.
- Azure Resource Explorer - A very useful web application to explore the Azure REST API.
- Azure Storage Explorer - A client application for Linux, Mac or Windows to easily work with storage accounts on Azure.
Azure Resource Manager (ARM)
The Azure Resource Manager is at the core of the Azure platform and is used to deploy and manage Azure services. Every resource in Azure managed under ARM can be described and managed in a consistent way. It's very helpful to understand the Azure Resource Manager and how to work with Resource Groups.
- ARM Overview - Get an overview of the Azure Resource Manager.
- ARM vs. Classic - Understand the difference between ARM and the Classic (ASM) deployment model.
- Azure portal availability chart – use the availability chart to determine what services are supported by ARM and the Azure portal
ARM templates are JSON descriptions of ARM deployments which can be used for "Infrastructure as Code".
- Deploying ARM Templates – Learn how to deploy ARM templates using PowerShell, Azure CLI or REST API.
- Quick Start Templates - A Github maintained, vast collection of templates for common use cases to help you get started authoring your own templates or deploying simple solutions.
- Template Authoring - How to author custom templates.