Azure Service Fabric

How to Accelerate Engineering Happiness

Mark Fussell 7th September 2018 Lead Program Manager

© Corporation Culture Individualist Predictive Iterative Collaborative Experimental

Decade 60s – 70s 80s – 00s 00s – 10s 10s – 20s 20s – ? Prod/Service Arbitrary Feature driven Functional Market driven Data driven What drives design?

Team No organization Hierarchy Cross functional DevOps & SRE Multi-disciplinary How is the team Single person Teams (dev/test) & decentralized organized? Process Random Waterfall Scrum Adapt and Distributed & What is the collaboration evolve self-organized process like? Architecture Spaghetti Tightly coupled Client/Server Microservices Functions with What is the application Monolith SOA Microservices architecture? Maintenance Users calling to Manual patches Alerting Comprehensive Self healing How is the app monitored complain periodically monitoring & and maintained? telemetry Delivery Manual Monthly releases Continuous Continuous Continuous How are the software and integration delivery deployment updates delivered? Infrastructure Single machine Scripts Automation of Orchestration of Serverless What is the infrastructure that the app is running on? infrastructure processes/ tasks (Chef) containers Cloud application (service) happiness challenge Continue to deliver

Balancing the needs of your business

…and ensuring happy customers

Developer Reliable and cost productivity optimal Developer productivity is essential for business agility applications

Keeping data and applications reliable and cost optimal is critical

While you continue to rapidly deliver value to your customers Digitally And digitally transform your business to innovate and achieve happiness transform Cloud application happiness journey

Gartner Identifies Five Ways to Migrate Applications to the Cloud https://www.gartner.com/newsroom/id/1684114 Cloud application happiness journey

Cloud Native Application AI based apps Modernized microservices serverless modernize to PaaS Why microservices?

• Continually evolving applications • Faster delivery of features and capabilities to respond to customer expectations

• Build and operate a service at scale 1 Plan 4 Monitor + Learn

Development Production

2 Develop + Test 3 Release Microservices: a modern approach for fast delivery and scale Comparing the traditional monolithic application to microservices

Traditional Microservices Large, all-inclusive, monolithic app Small, independent services

APP APP APP Complexity projects What happens in microservice App App one with microservice Deploy Deploy small app with microservices couple couple of microservice deployed microservice Large number of into into production Project approved funding Time based based on prototype Scale and Scale and demand takes off Challenges managing the service, deployments deployments the managing service, Challenges and upgrade. and upgrade. Project becomes overwhelming. Project becomes overwhelming. Operational Operational unhappiness Challenges/needs in building microservice applications

Focusing on business logic Optimizing instead of microservice for microservice .NET platform maintenance development

Monitoring and governance at overarching and granular levels

Running highly secure applications Dealing with the complexity at scale of interactions and network Achieving reliable state communications and data consistency without latency issues

Tracking multiple deployment pipelines while maintaining agile updates Azure Service Fabric A microservices platform for business critical applications

Build Deploy Operate

always-on, highly scalable microservice apps

.NET

Microservice Flexible Lifecycle 24/7 availability Elastic Security & Health & and container infrastructure management & performance scalability compliance monitoring orchestration

Challenges Dealing with the complexity Optimizing Tracking multiple Monitoring and Achieving reliable state Focusing on business logic Running highly of interactions and network for microservice deployment pipelines while governance at overarching and data consistency instead of microservice secure applications communications development maintaining agile updates and granular levels without latency issues platform maintenance at scale Powering Azure and Microsoft services Azure Service Fabric is designed for mission-critical services

Azure Database SQL Database for MySQL

Azure Database Power BI Cosmos DB Azure for PostgreSQL Monitor

Azure Core Azure Dynamics IoT Hub Container Services Registry

Archive Intune Event Hub Storage Event Grid

Cortana Visual Studio Stream Analytics Team Services Create a Platform yourself

Rolling Upgrades Mesos

Availability Guarantees Kubernetes

Scale Out Architecture Zookeeper

Resource Governance Redis

Density Raven

Packaging & Deployment MongoDB

Policy Enforcement Yarn

Granular Versioning Fleet

Stateful Workloads Hadoop

Leader Election Containers Use a hardened platform

Rolling Upgrades

Availability Guarantees

Scale Out Architecture

Resource Governance Density Azure Service Fabric Packaging & Deployment

Policy Enforcement

Granular Versioning

Stateful Workloads

Leader Election Build once, deploy and manage anywhere

Dev machine

Any cloud On-premises

Service Fabric Service Fabric Service Fabric Mesh Dedicated Cluster Standalone Fully managed by Azure Dedicated Azure clusters Bring your own infrastructure

Fully managed Full Control

Service Fabric customers The journey application modernization with microservices

1 2 3 4 5 6

Traditional Existing app hosted Existing application + Parts of existing New or transformed Fully-managed app as container or new microservices application microservices microservices executable rearchitected application application

Service Fabric supports any stage you choose… What you can build with Service Fabric? Meet your needs…

Lift & shift to Mission-critical IoT data Low-latency data New cloud-native containers business SaaS processing processing apps apps

Migrate existing B2B solutions in Efficient data Data-centric Apps conceived applications as-is the cloud processing on applications requiring and built with the to the cloud millions of devices fast response times cloud in mind Example: Application Modernization – Refactor .NET applications

Website

Services WCF Web Services

Containers with legacy Legacy Application stack apps on Service fabric © Microsoft Corporation International carrier Alaska Airlines improved performance and reliability, and future-proofed its Shopping Cart service via Azure Service Fabric and custom Windows Server Containers.

Evolve their reservation system to support 40 million customers with minimal recoding

We love the pristine and predictable environments provided by Windows Server Containers. Service Fabric brings us a safe and consistent deployment strategy that maximizes uptime. The marriage of the two in Ralph Feltis Senior Software Engineer gives us unlimited potential. Alaska Airlines TalkTalk TV, the UK’s third largest cable TV provider, embraced Azure Service Fabric to ensure quick delivery of features and content to its customers.

Rearchitected

In a short span of time, Azure Service Fabric and the extended suite of Azure services has boosted agility, allowing the engineering team to implement outstanding Ilario Corna, quality microservices with Head of Infrastructure, Content & a small number of Operations for TalkTalk TV developers.. Citrix is building the workspace of the future by operationalizing the technology that businesses need. Their solutions are in use by more than 400,000 customers

When we started the Citrix Identity Platform, we wanted to try something different and thought a pure microservice model may keep us more honest. The goal was to make the platform truly CI/CD, and that’s exactly what we were Tomas Hrebicek able to do because of Senior Software Developer Honeywell Service Fabric BMW Technology Corporation, a technology development company specializing in connected car services, leveraged Azure Service Fabric to create a set of microservices services they can easily scale to millions of drivers.

Build driver intelligence Connected services that would scale up to millions of drivers and continually update learned behaviors on mobile client that has limitation on battery and background processing.

With Service Fabric, we Azure Service Fabric is a can perform a rolling sophisticated toolbox for upgrade of our system creating a mix of stateless with no downtime. It will and stateful services that roll back to the previous can be scaled and extended version if there is an as our user base grows and error. we add new functionality. Sean Patterson Senior Software Architect BMW Technology Corporation Next Games powers its global augmented reality game in Microsoft Azure

Challenge: Next Games required a lot of back-end processing power—processing power that was sited close to players, wherever they wanted to play in the world. The company also needed database and compute services that could handle massive amounts of geo-distributed data.

Solution: Next Games adopted a microservices-based development and hosting environment that relies on Azure Service Fabric, Azure Functions, and Azure Cosmos DB to provide very fast, very low-overhead support of geo- distributed data services.

Outcome: Azure Service Fabric handles the passage of messages between players, and Azure Cosmos DB provides a geo-distributed database that locates player data geographically close to the player and coordinates player matchups.

In addition to all the new services, Microsoft is constantly improving existing Azure services … This continual improvement enhances our games and makes our lives easier. Kalle Hiitola, Chief Technology Officer and Cofounder, Next Games Solidsoft Reply platform powers e-verification of pharmaceuticals.

medicines.

Service Fabric gave us a true PaaS solution on Microsoft Azure that we could trust to provide the SLAs we had to meet. It took so much less time to move through the software Koen Van Gompel: development life cycle when we cut out the Operations Manager European Medicines Verification infrastructure portion and focused on design Organization Free eBooks

Michael Crump Barry Luijbregts

http://aka.ms/azuredevebook https://aka.ms/modernizeappebook http://aka.ms/MicroservicesEbook © Copyright Microsoft Corporation. All rights reserved. Service Fabric in under 4 minutes (video) Azure Service Fabric Customer stories

http://aka.ms/sfcustomers Customer success Financial Services The Tax and Accounting division of Wolters Kluwer, a global information services company, utilized Azure Service Fabric to modernize its legacy tax preparation platform and provide scalability during tax season.

We needed a distributed clustering technology that would deliver a microservice transformation at massive scale, as in multimillions of concurrent jobs. The high- availability guarantees from Service Fabric gave us our Jason Hamilton Chief Architect answer. Wolters Kluwer Customer success Manufacturing & IoT BMW Technology Corporation, a technology development company specializing in connected car services, leveraged Azure Service Fabric to create a mix of stateless and stateful services they can easily scale to millions of drivers.

With Service Fabric, we can perform a rolling upgrade of our system with no downtime. It will roll back to the previous version if there is an error. Sean Patterson Senior Software Architect BMW Technology Corporation Honeywell, a global technology manufacturer, seamlessly migrated its IoT smart home system to Service Fabric to gain scalability and cost savings.

The deployment automation and upgrade process with Azure Cloud Services was a huge improvement from previous on-premises deployments. Service Fabric and the Resource Manager deployment model pushed this even further and helped Tomas Hrebicek us greatly to have a fully Senior Software Developer Honeywell mastered CI/CD pipeline. Mesh Systems, an IoT software and services company, created a microservices architecture of their once monolithic IoT application to reduce complexity, improve scalability, and reduce costs via Service Fabric.

Service Fabric has enabled us to take a big step forward in providing timely and reliable managed cloud services for our customers. Service Fabric is a perfect fit to our building blocks, decoupling the Uriel Kluk responsibilities into very Chief Technology Officer well-defined tasks. Mesh Systems Customer success Oil & Gas Quorum Business Solutions, a software company for the oil and gas industry, adopted Azure Service Fabric to upgrade and future-proof its field-operations platform, developing a simpler and more scalable design.

Service Fabric allowed us to leapfrog over our original cloud platform in a way that ultimately simplifies the architecture by eliminating the overhead of handling cache, state, and compute Shawn Cutter independently. Vice President Quorum Business Solutions Customer success Professional Services & ISV Proactima Solutions, a supplier of risk management services, leveraged Azure Service Fabric to build the structure for its UX web app, providing flexibility, scalability, integration, high- performance, and ease in both deployment and updates.

Building microservices on Service Fabric makes it easier for our developers to reason about a piece of code. The SOLID principles can be implemented not just on code level, but also Jarle Nygård from an architectural level. Solution Architect Proactima Solutions P2ware, a developer of project, program and portfolio management software, utilized Azure Service Fabric to design a more comprehensible and easily migratable project planning and portfolio management system for its customers.

A stateful microservices- based architecture (which includes reliable actors) is much more predictable and far less error prone. We can focus on the value added instead of dealing with problems Marcin Kosieradzki Chief Technology Officer like cache invalidation. P2ware Customer success Hospitality International carrier Alaska Airlines improved performance and reliability, and future-proofed its Shopping Cart service via Azure Service Fabric and custom Windows Server Containers.

We love the pristine and predictable environments provided by Windows Server Containers. Service Fabric brings us a safe and consistent deployment strategy that maximizes uptime. The marriage of Ralph Feltis the two in Microsoft Azure Senior Software Engineer gives us unlimited potential. Alaska Airlines Customer success Entertainment & Media Digamore Entertainment GmbH, a game-development company, utilized Azure Service Fabric to create a highly- scalable backend architecture to implement game design requirements quickly and seamlessly.

Upgrade management of Service Fabric provides us a fast and user-friendly way to update small game- balancing changes. With Service Fabric, was can focus on implementing game design feature instead of investing a lot Marko Flod Software Engineer of time setting up the Digamore infrastructure. TalkTalk TV, the UK’s third largest cable TV provider, embraced Azure Service Fabric to ensure quick delivery of features and content to its customers.

The one-box development experience with the full Service Fabric services available locally increased our productivity and enabled us to deliver more features faster. Mike Goatly Development Lead TalkTalk TV