This course is designed to introduce students to developing cloud based applications using Microsoft Azure. This course lays a foundation by covering Azure fundamentals and key compute technologies with virtual machines. It then moves on to SQL Database, identity management, and then to developer platform-as-a-service options within Azure App Services. From there it rounds out the material by covering the range of Azure storage solutions, NoSQL with CosmoDB, and then finally on to advanced topics with Azure Service Bus messaging and micro-services with Azure Service Fabric. This course can be taught using .NET or Java developer tools.
MODULE 1: Introduction to Microsoft Azure
In this module, attendees are introduced to cloud computing with the Microsoft Azure platform. It defines key terms and computing models, demonstrates the difference between traditional hosting and cloud hosting from a cost and resource allocation perspective, and covers the difference in responsibilities between a cloud provider and a cloud consumer.
MODULE 2: Azure Virtual Machines
In this module, attendees are introduced to the Infrastructure-as-a-Service (IaaS) offerings within Microsoft Azure. The lessons and labs cover a wide range of important virtual machine concepts including sizing and performance, configuration, deployment, availability, automation, and configuring OS and data disks. It also covers a broad range of IaaS concepts including managing resource groups, virtual machine scale sets, virtual networks, deployment tools, network security groups, network load balancers, and some additional advanced networking features.
MODULE 3: Introduction to Azure SQL Database
In this module, attendees are introduced to Azure SQL Database. They will learn about the features of this service including information about performance, scalability, security, configuration, backups, disaster recovery, and elastic database pools.
MODULE 4: Managing Identity in the Cloud
In this module, attendees will learn about managing identities for web applications leveraging social identity providers (Facebook, Google, Twitter, and Microsoft) as well as Azure Active Directory. Students will also gain hands-on knowledge in setting up web apps with Azure Active Directory authentication.
MODULE 5: Developing and Deploying Azure Web Apps
In this module, attendees are introduced to web apps hosted on the Azure App Service platform. Students will learn about how to develop, deploy and configure web applications in Microsoft Azure as well as learn about web jobs, custom domains, SSL, and hybrid connectivity. Students will also gain hands-on experience including enabling Azure Active Directory authentication for a web application.
MODULE 6: Architecting Global Solutions
In this module, attendees will learn how to take their web applications in Azure and architect them to go global. This module explores critical scalability and performance technologies such as Traffic Manager, Redis Cache, and Content Deployment Network (CDN) to scale out a web app to meet the demands of a global user base.
Whiteboard Design Session: Modern Cloud Apps
In this architecture session, students will work as a team and learn how to deploy a highly scalable web application using Azure Platform as a Service services.
MODULE 7: Developing Azure Mobile Apps
In this module, attendees are introduced to the Mobile Apps feature of the Azure App Services platform. They will learn how the mobile apps backend system works, how to build API controllers to host mobile API functionality, how to enable authentication, offline sync, and push notifications. In the hands-on lab, students will be able to practice building and testing a mobile app database and a mobile app backend API.
MODULE 8: Azure API Management
In this module, attendees will learn how to implement the API Management system in Microsoft Azure which includes features such as protecting APIs using rate limits and quotas. Students will also learn how to monitor API usage, and to improve API performance using caching and multi-region deployments.
MODULE 9: Choosing the Right Storage
In this module, students will be taken through the architectural strengths, features, and differences between a range of storage options inside of the Microsoft Azure cloud platform. These storage solutions include Azure storage accounts, Azure SQL Database, DocumentDB (NoSQL-as-a-service), messaging with the Azure Service Bus, and a few others.
MODULE 10: Azure Storage for Developers
In this module, students will learn about Azure Storage from the perspective of a developer. This module focuses on how and when to use blobs, tables, queues, and Azure files to build new or extend existing applications. It will also instruct students on the use the SDK, security, and encryption.
MODULE 11: Introduction to Cosmos DB
In this module, students will be introduced to NoSQL databases, document databases and the concept and usefulness of different consistency options. The students will also be taught the specifics of DocumentDB, a document database provided as part of the Azure platform, and will be shown how to use this technology effectively in their own solutions.
MODULE 12: Introduction to Azure Service Bus
In this module, the student will be introduced to some of the core capabilities for building distributed solutions using Azure Service Bus. Services will include Notification and Event Hubs, Service Bus relay, as well as Queues, Topics and Hybrid Connections.
Module 13: Developing Serverless Solutions
In this module, attendees will learn how to build highly efficient and scalable solutions using serverless and microservice based architectures. Topics will include Azure Logic Apps, Functions, and Service Fabric.
Module 14: Introduction to Azure DevOps
In this module, attendees will learn the fundamentals of DevOps in Microsoft Azure. This module will introduce core process topics as well as discuss some of the technologies commonly used to implement a CI/CD pipeline and automate resources in Azure.;