SlideShare a Scribd company logo
6/7/2016© kCura LLC. All rights reserved.
Infrastructure-less Development
with Azure Service Fabric
Saba Jamalian
Hometown: Shiraz, Iran
Company: kCura
What I do: DevOps Engineer
Fun Fact: I have watched all the
episodes of the TV
series more than 20 times!
Saba Jamalian
© kCura LLC. All rights reserved.
e-Discovery
Used to search, analyze, and act on
data to tell the story of a case quickly
and easily during litigation and
investigation
About Us
Chicago-based
e-discovery software
company
© kCura LLC. All rights reserved.
• Introduction to Microservices
• Exploring "infrastructure-less
development" with Azure
Service Fabric
What You’ll Learn
Google’s search trend for “microservices”
© kCura LLC. All rights reserved.
Microservices
© kCura LLC. All rights reserved.
Traditional Software
Architecture
Services Oriented
Architecture
Microservices
Component Interactions Tightly coupled Loosely coupled Decoupled
Flexibility and Scalability Too difficult High Sky is the limit
DevOps Friendly No
Yes if designed with
DevOps considerations
Yes
Distributed Environment Not considered Supported Born in the Cloud
Communication Synchronous
Asynchronous/
Synchronous
Asynchronous
The Evolution of Software Architecture
1990’s
2000's
Now
© kCura LLC. All rights reserved.
Highly decoupled services with
isolated scope of responsibility
that asynchronously
communicate with each other.
• Components
– Concurrent execution
– Independent upgrades
– Independent scaling
• Services
– Isolated failure
– Resilience
– Isolated all the way to the hardware
– Autonomous
• Distributed environment
Microservices Definition
© kCura LLC. All rights reserved.
on the topic of UNIX philosophy
Douglas McEllroy
“Write programs that
do one thing and do it
well. Write programs
to work together.”
© kCura LLC. All rights reserved.
Scaling Models
Scaling Monolithic Applications Scaling Microservices
© kCura LLC. All rights reserved.
– Shorter time to market
– Modular, therefore:
• Replaceable
• Independent development
• Explicit interfaces for
communication
– Wider variety of technologies
• Independent technology stack
– Isolated Failure & Resiliency
– CD/CI and DevOps
– Legacy applications
– Difficult configuration management
– Who calls who?
– Security risk in communication
– Bottlenecked by network
performance
– Managing transactions
– Compatibility of the services
Microservices Pros and Cons
Advantages Challenges
© kCura LLC. All rights reserved.
Infrastructure-less Development
Replication
Resiliency
Fail-over
Data consistency
Easy
Deployment
Elasticity
Isolation
© kCura LLC. All rights reserved.
Azure Service Fabric
© kCura LLC. All rights reserved.
• Microsoft PaaS
• Provides an abstraction for microservices architecture
• Distributed service platform
Azure Service Fabric
© kCura LLC. All rights reserved.
Azure Service Fabric vs. Azure Cloud Services
Image courtesy of MSDN
© kCura LLC. All rights reserved.
Service Fabric Application Model
Collection of Reliable Actors and Services
© kCura LLC. All rights reserved.
Applications on Azure Service Fabric
Application A
Application B
R B
T P S
Service Fabric Virtual Machines
© kCura LLC. All rights reserved.
Let’s see it in action!
© kCura LLC. All rights reserved.
Demo
© kCura LLC. All rights reserved.
Azure Service Fabric
Deployable everywhere:
Development Machine Physical Cluster Virtual Cluster
© kCura LLC. All rights reserved.
Actors
• Stateless or Stateful
• Internal to fabric
• Messaging model
• Activate/Deactivate as needed
• State per Id
Reliable Actors and Services
• Stateless or Stateful
• Can expose web endpoints
• Linear model
• Constantly available
• Shared state
Services
© kCura LLC. All rights reserved.
• Bring in applications not born in
the Cloud
• Versioned by Service Fabric
• Free fail-over
Guest Executables on Service Fabric
© kCura LLC. All rights reserved.
• Current State:
– Microsoft recently announced General Availability
– You can deploy Service Fabric clusters via Azure Portal and ARM
– Deploy cluster on-premises
• Future State:
– Support for Linux
– Support for Docker & Windows Containers
– Support for Java
Future of Service Fabric
© kCura LLC. All rights reserved.
Our Experience at kCura
• Avoid nanoservices
• Think about dependencies
• Design communication patterns
• Log and monitor
• Document contracts and interfaces
© kCura LLC. All rights reserved.
Conclusion
© kCura LLC. All rights reserved.
Questions?

More Related Content

What's hot

DevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft AzureDevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft Azure
gjuljo
 
Enterprise-Ready Private and Hybrid Cloud Computing Today
Enterprise-Ready Private and Hybrid Cloud Computing TodayEnterprise-Ready Private and Hybrid Cloud Computing Today
Enterprise-Ready Private and Hybrid Cloud Computing Today
RightScale
 
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOpsInfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
VMware Tanzu
 
Oracle Cloud With Azure DevOps Pipelines
Oracle Cloud With Azure DevOps PipelinesOracle Cloud With Azure DevOps Pipelines
Oracle Cloud With Azure DevOps Pipelines
Johan Louwers
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
Siva Rama Krishna Chunduru
 
2019 04 Containers - The secret to shipping cloud workloads
2019 04 Containers - The secret to shipping cloud workloads 2019 04 Containers - The secret to shipping cloud workloads
2019 04 Containers - The secret to shipping cloud workloads
Adam Stephensen
 
2019 05 - Exploring Container Offerings in Azure
2019 05 - Exploring Container Offerings in Azure2019 05 - Exploring Container Offerings in Azure
2019 05 - Exploring Container Offerings in Azure
Adam Stephensen
 
Netflix MSA and Pivotal
Netflix MSA and PivotalNetflix MSA and Pivotal
Netflix MSA and Pivotal
VMware Tanzu Korea
 
Azure DevOps for Developers
Azure DevOps for DevelopersAzure DevOps for Developers
Azure DevOps for Developers
Sarah Dutkiewicz
 
Virtual Desktop Infrastructure with Novell Endpoint Management Solutions
Virtual Desktop Infrastructure with Novell Endpoint Management SolutionsVirtual Desktop Infrastructure with Novell Endpoint Management Solutions
Virtual Desktop Infrastructure with Novell Endpoint Management Solutions
Novell
 
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision APIUsing Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
VMware Tanzu
 
Enable DevSecOps using JIRA Software
Enable DevSecOps using JIRA SoftwareEnable DevSecOps using JIRA Software
Enable DevSecOps using JIRA Software
AUGNYC
 
Cncf checkov and bridgecrew
Cncf checkov and bridgecrewCncf checkov and bridgecrew
Cncf checkov and bridgecrew
LibbySchulze
 
Microservices architecture overview v3
Microservices architecture overview v3Microservices architecture overview v3
Microservices architecture overview v3
Dmitry Skaredov
 
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureAccelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
VMware Tanzu
 
Four considerations when monitoring microservices
Four considerations when monitoring microservicesFour considerations when monitoring microservices
Four considerations when monitoring microservices
Jason Bloomberg
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!
Jules Pierre-Louis
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
Daniel Bryant
 
Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0
VMware Tanzu
 
Achieving a Serverless Development Experience
Achieving a Serverless Development ExperienceAchieving a Serverless Development Experience
Achieving a Serverless Development Experience
Ivan Dwyer
 

What's hot (20)

DevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft AzureDevOps in the Cloud with Microsoft Azure
DevOps in the Cloud with Microsoft Azure
 
Enterprise-Ready Private and Hybrid Cloud Computing Today
Enterprise-Ready Private and Hybrid Cloud Computing TodayEnterprise-Ready Private and Hybrid Cloud Computing Today
Enterprise-Ready Private and Hybrid Cloud Computing Today
 
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOpsInfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
InfoSec: Evolve Thyself to Keep Pace in the Age of DevOps
 
Oracle Cloud With Azure DevOps Pipelines
Oracle Cloud With Azure DevOps PipelinesOracle Cloud With Azure DevOps Pipelines
Oracle Cloud With Azure DevOps Pipelines
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
2019 04 Containers - The secret to shipping cloud workloads
2019 04 Containers - The secret to shipping cloud workloads 2019 04 Containers - The secret to shipping cloud workloads
2019 04 Containers - The secret to shipping cloud workloads
 
2019 05 - Exploring Container Offerings in Azure
2019 05 - Exploring Container Offerings in Azure2019 05 - Exploring Container Offerings in Azure
2019 05 - Exploring Container Offerings in Azure
 
Netflix MSA and Pivotal
Netflix MSA and PivotalNetflix MSA and Pivotal
Netflix MSA and Pivotal
 
Azure DevOps for Developers
Azure DevOps for DevelopersAzure DevOps for Developers
Azure DevOps for Developers
 
Virtual Desktop Infrastructure with Novell Endpoint Management Solutions
Virtual Desktop Infrastructure with Novell Endpoint Management SolutionsVirtual Desktop Infrastructure with Novell Endpoint Management Solutions
Virtual Desktop Infrastructure with Novell Endpoint Management Solutions
 
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision APIUsing Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
Using Pivotal Cloud Foundry with Google’s BigQuery and Cloud Vision API
 
Enable DevSecOps using JIRA Software
Enable DevSecOps using JIRA SoftwareEnable DevSecOps using JIRA Software
Enable DevSecOps using JIRA Software
 
Cncf checkov and bridgecrew
Cncf checkov and bridgecrewCncf checkov and bridgecrew
Cncf checkov and bridgecrew
 
Microservices architecture overview v3
Microservices architecture overview v3Microservices architecture overview v3
Microservices architecture overview v3
 
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureAccelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
 
Four considerations when monitoring microservices
Four considerations when monitoring microservicesFour considerations when monitoring microservices
Four considerations when monitoring microservices
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
 
Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0
 
Achieving a Serverless Development Experience
Achieving a Serverless Development ExperienceAchieving a Serverless Development Experience
Achieving a Serverless Development Experience
 

Viewers also liked

Devops architecture
Devops architectureDevops architecture
Devops architecture
Ojasvi Jagtap
 
Usage of Reliable Actors in Azure Service Fabric
Usage of Reliable Actors in Azure Service FabricUsage of Reliable Actors in Azure Service Fabric
Usage of Reliable Actors in Azure Service Fabric
Alexander Laysha
 
Azure Service Fabric
Azure Service FabricAzure Service Fabric
Azure Service Fabric
WinWire Technologies Inc
 
DevOps with Fabric
DevOps with FabricDevOps with Fabric
DevOps with Fabric
Simone Federici
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
Publicis Sapient Engineering
 
Azure Service Fabric Overview
Azure Service Fabric OverviewAzure Service Fabric Overview
Azure Service Fabric Overview
João Pedro Martins
 
DevOps and Continuous Delivery Reference Architectures - Volume 2
DevOps and Continuous Delivery Reference Architectures - Volume 2DevOps and Continuous Delivery Reference Architectures - Volume 2
DevOps and Continuous Delivery Reference Architectures - Volume 2
Sonatype
 

Viewers also liked (7)

Devops architecture
Devops architectureDevops architecture
Devops architecture
 
Usage of Reliable Actors in Azure Service Fabric
Usage of Reliable Actors in Azure Service FabricUsage of Reliable Actors in Azure Service Fabric
Usage of Reliable Actors in Azure Service Fabric
 
Azure Service Fabric
Azure Service FabricAzure Service Fabric
Azure Service Fabric
 
DevOps with Fabric
DevOps with FabricDevOps with Fabric
DevOps with Fabric
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
 
Azure Service Fabric Overview
Azure Service Fabric OverviewAzure Service Fabric Overview
Azure Service Fabric Overview
 
DevOps and Continuous Delivery Reference Architectures - Volume 2
DevOps and Continuous Delivery Reference Architectures - Volume 2DevOps and Continuous Delivery Reference Architectures - Volume 2
DevOps and Continuous Delivery Reference Architectures - Volume 2
 

Similar to Infrastructure less development with Azure Service Fabric

Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
ArchitectNow - Migrating Legacy .NET Apps to Azure
ArchitectNow - Migrating Legacy .NET Apps to AzureArchitectNow - Migrating Legacy .NET Apps to Azure
ArchitectNow - Migrating Legacy .NET Apps to Azure
Kevin Grossnicklaus
 
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture ITProposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
Jürgen Ambrosi
 
Cisco integrated system for microsoft azure stack
Cisco integrated system for microsoft azure stackCisco integrated system for microsoft azure stack
Cisco integrated system for microsoft azure stack
Aymen Mami
 
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
ArchitectNow  -  Designing Cloud-Native apps in Microsoft AzureArchitectNow  -  Designing Cloud-Native apps in Microsoft Azure
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
Kevin Grossnicklaus
 
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
Yoichi Kawasaki
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
Amazon Web Services
 
Cloud Computing101 Azure, updated june 2017
Cloud Computing101 Azure, updated june 2017Cloud Computing101 Azure, updated june 2017
Cloud Computing101 Azure, updated june 2017
Fernando Mejía
 
cloud computting
cloud computtingcloud computting
cloud computting
Avinash Ram
 
Level-up Your Cloud Visibility Into AWS With ThousandEyes
Level-up Your Cloud Visibility Into AWS With ThousandEyesLevel-up Your Cloud Visibility Into AWS With ThousandEyes
Level-up Your Cloud Visibility Into AWS With ThousandEyes
ThousandEyes
 
Blazor & Azure App Service
Blazor & Azure App ServiceBlazor & Azure App Service
Blazor & Azure App Service
Jose Javier Columbie
 
XCloudLabs- AWS Overview
XCloudLabs- AWS Overview XCloudLabs- AWS Overview
XCloudLabs- AWS Overview
sangam biradar
 
OpenStack and the Future of Application Centric Infrastructure
OpenStack and the Future of Application Centric InfrastructureOpenStack and the Future of Application Centric Infrastructure
OpenStack and the Future of Application Centric Infrastructure
Lew Tucker
 
Top 20 azure interview questions
Top 20 azure interview questionsTop 20 azure interview questions
Top 20 azure interview questions
ShivamSharma909
 
Kubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOpsKubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOps
Ofir Makmal
 
Azure Fundamentals Part 2
Azure Fundamentals Part 2Azure Fundamentals Part 2
Azure Fundamentals Part 2
CCG
 
Get your head in the clouds! - Swansea Con 2016
Get your head in the clouds! - Swansea Con 2016Get your head in the clouds! - Swansea Con 2016
Get your head in the clouds! - Swansea Con 2016
Christopher Cundill
 
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Araf Karsh Hamid
 
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
kreuzwerker GmbH
 
USAREUR Cloud Computing Training Class Heidelberg 3
USAREUR Cloud Computing Training Class Heidelberg 3USAREUR Cloud Computing Training Class Heidelberg 3
USAREUR Cloud Computing Training Class Heidelberg 3
GovCloud Network
 

Similar to Infrastructure less development with Azure Service Fabric (20)

Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
ArchitectNow - Migrating Legacy .NET Apps to Azure
ArchitectNow - Migrating Legacy .NET Apps to AzureArchitectNow - Migrating Legacy .NET Apps to Azure
ArchitectNow - Migrating Legacy .NET Apps to Azure
 
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture ITProposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
Proposte ORACLE per la modernizzazione del Datacenter e delle infrastrutture IT
 
Cisco integrated system for microsoft azure stack
Cisco integrated system for microsoft azure stackCisco integrated system for microsoft azure stack
Cisco integrated system for microsoft azure stack
 
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
ArchitectNow  -  Designing Cloud-Native apps in Microsoft AzureArchitectNow  -  Designing Cloud-Native apps in Microsoft Azure
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
 
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
Azure Containers & Serverless Technology Options (After-Tech-Summit-2018 Edit...
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
 
Cloud Computing101 Azure, updated june 2017
Cloud Computing101 Azure, updated june 2017Cloud Computing101 Azure, updated june 2017
Cloud Computing101 Azure, updated june 2017
 
cloud computting
cloud computtingcloud computting
cloud computting
 
Level-up Your Cloud Visibility Into AWS With ThousandEyes
Level-up Your Cloud Visibility Into AWS With ThousandEyesLevel-up Your Cloud Visibility Into AWS With ThousandEyes
Level-up Your Cloud Visibility Into AWS With ThousandEyes
 
Blazor & Azure App Service
Blazor & Azure App ServiceBlazor & Azure App Service
Blazor & Azure App Service
 
XCloudLabs- AWS Overview
XCloudLabs- AWS Overview XCloudLabs- AWS Overview
XCloudLabs- AWS Overview
 
OpenStack and the Future of Application Centric Infrastructure
OpenStack and the Future of Application Centric InfrastructureOpenStack and the Future of Application Centric Infrastructure
OpenStack and the Future of Application Centric Infrastructure
 
Top 20 azure interview questions
Top 20 azure interview questionsTop 20 azure interview questions
Top 20 azure interview questions
 
Kubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOpsKubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOps
 
Azure Fundamentals Part 2
Azure Fundamentals Part 2Azure Fundamentals Part 2
Azure Fundamentals Part 2
 
Get your head in the clouds! - Swansea Con 2016
Get your head in the clouds! - Swansea Con 2016Get your head in the clouds! - Swansea Con 2016
Get your head in the clouds! - Swansea Con 2016
 
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SRE
 
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
kreuzwerker AWS Modernizing Legacy Operations with Containerized Solutions 20...
 
USAREUR Cloud Computing Training Class Heidelberg 3
USAREUR Cloud Computing Training Class Heidelberg 3USAREUR Cloud Computing Training Class Heidelberg 3
USAREUR Cloud Computing Training Class Heidelberg 3
 

Recently uploaded

SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 

Recently uploaded (20)

SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 

Infrastructure less development with Azure Service Fabric

  • 1. 6/7/2016© kCura LLC. All rights reserved. Infrastructure-less Development with Azure Service Fabric Saba Jamalian
  • 2. Hometown: Shiraz, Iran Company: kCura What I do: DevOps Engineer Fun Fact: I have watched all the episodes of the TV series more than 20 times! Saba Jamalian
  • 3. © kCura LLC. All rights reserved. e-Discovery Used to search, analyze, and act on data to tell the story of a case quickly and easily during litigation and investigation About Us Chicago-based e-discovery software company
  • 4. © kCura LLC. All rights reserved. • Introduction to Microservices • Exploring "infrastructure-less development" with Azure Service Fabric What You’ll Learn Google’s search trend for “microservices”
  • 5. © kCura LLC. All rights reserved. Microservices
  • 6. © kCura LLC. All rights reserved. Traditional Software Architecture Services Oriented Architecture Microservices Component Interactions Tightly coupled Loosely coupled Decoupled Flexibility and Scalability Too difficult High Sky is the limit DevOps Friendly No Yes if designed with DevOps considerations Yes Distributed Environment Not considered Supported Born in the Cloud Communication Synchronous Asynchronous/ Synchronous Asynchronous The Evolution of Software Architecture 1990’s 2000's Now
  • 7. © kCura LLC. All rights reserved. Highly decoupled services with isolated scope of responsibility that asynchronously communicate with each other. • Components – Concurrent execution – Independent upgrades – Independent scaling • Services – Isolated failure – Resilience – Isolated all the way to the hardware – Autonomous • Distributed environment Microservices Definition
  • 8. © kCura LLC. All rights reserved. on the topic of UNIX philosophy Douglas McEllroy “Write programs that do one thing and do it well. Write programs to work together.”
  • 9. © kCura LLC. All rights reserved. Scaling Models Scaling Monolithic Applications Scaling Microservices
  • 10. © kCura LLC. All rights reserved. – Shorter time to market – Modular, therefore: • Replaceable • Independent development • Explicit interfaces for communication – Wider variety of technologies • Independent technology stack – Isolated Failure & Resiliency – CD/CI and DevOps – Legacy applications – Difficult configuration management – Who calls who? – Security risk in communication – Bottlenecked by network performance – Managing transactions – Compatibility of the services Microservices Pros and Cons Advantages Challenges
  • 11. © kCura LLC. All rights reserved. Infrastructure-less Development Replication Resiliency Fail-over Data consistency Easy Deployment Elasticity Isolation
  • 12. © kCura LLC. All rights reserved. Azure Service Fabric
  • 13. © kCura LLC. All rights reserved. • Microsoft PaaS • Provides an abstraction for microservices architecture • Distributed service platform Azure Service Fabric
  • 14. © kCura LLC. All rights reserved. Azure Service Fabric vs. Azure Cloud Services Image courtesy of MSDN
  • 15. © kCura LLC. All rights reserved. Service Fabric Application Model Collection of Reliable Actors and Services
  • 16. © kCura LLC. All rights reserved. Applications on Azure Service Fabric Application A Application B R B T P S Service Fabric Virtual Machines
  • 17. © kCura LLC. All rights reserved. Let’s see it in action!
  • 18. © kCura LLC. All rights reserved. Demo
  • 19. © kCura LLC. All rights reserved. Azure Service Fabric Deployable everywhere: Development Machine Physical Cluster Virtual Cluster
  • 20. © kCura LLC. All rights reserved. Actors • Stateless or Stateful • Internal to fabric • Messaging model • Activate/Deactivate as needed • State per Id Reliable Actors and Services • Stateless or Stateful • Can expose web endpoints • Linear model • Constantly available • Shared state Services
  • 21. © kCura LLC. All rights reserved. • Bring in applications not born in the Cloud • Versioned by Service Fabric • Free fail-over Guest Executables on Service Fabric
  • 22. © kCura LLC. All rights reserved. • Current State: – Microsoft recently announced General Availability – You can deploy Service Fabric clusters via Azure Portal and ARM – Deploy cluster on-premises • Future State: – Support for Linux – Support for Docker & Windows Containers – Support for Java Future of Service Fabric
  • 23. © kCura LLC. All rights reserved. Our Experience at kCura • Avoid nanoservices • Think about dependencies • Design communication patterns • Log and monitor • Document contracts and interfaces
  • 24. © kCura LLC. All rights reserved. Conclusion
  • 25. © kCura LLC. All rights reserved. Questions?

Editor's Notes

  1. Who is kCura? We’re a fast-growing Chicago-based software company, tackling big data challenges for users spanning the globe. What do we do? We’re the developers of the e-discovery software, Relativity, which is used for managing large volumes of electronic evidence during litigation and investigations. Statistics to use: If you’d like to speak about the size of the Relativity Community: More than 130,000 active users More than 11,000 unique organizations using Relativity 218 enterprise clients 127 channel partners Used by 99 of the Am Law 100 and 197 of the Am Law 200. Used by 70 of the Fortune 100 If you’d like to speak about the large volumes of electronic data managed in Relativity: There are 67 billion files under management in Relativity. Largest case to date involves 750 million documents.   If you’d like to speak about the international growth of Relativity: 127 of our clients are international. Relativity is being used in 43 countries.
  2. Microservices… with Microsoft’s perspective, aka Azure Service Fabric Development on top of Azure Service Fabric without worrying about a reliable and scalable infrastructure A live demo of how Azure Service Fabric provides resiliency and scalablity
  3. Traditional Software Architecture (Lasagna) Monolithic Tightly coupled components Not flexible Difficult to change Requires extensive integration test Not scalable Distributed environment? Services Oriented Architecture (Pie) Autonomous components Loosely coupled components To some extend scalable Yet: Highly dependable components Synchronous communication Distributed environment? Cloud? Microservices (Cupcakes) Decoupled components Asynchronous Communication Scalable and flexible For distributed environments Built for the Cloud, Born in the Cloud Continuous delivery
  4. Concurrent execution of all components Runs on a distributed environment Each component can upgrade independently Each component can scale up or out independently Failure is isolated in each service Services can become resilient Services are isolated all the way to the hardware (virtualization, containers) Services act on their own; autonomous
  5. The concept of Reliability Resiliency: Service stays on even when its environment fails Availability: Service is replicated in the cluster Consistency: Data integration between replicas are guaranteed Concurrency: Services run together yet independently (turn based) Asynchronous communication –> Decoupled Compute is separate from Data (State) Stateful: keeps data using Reliable Collections – As much as memory permits Stateless: No data storage
  6. Actors Stateless or Stateful Internal to fabric Messaging model Activate/Deactivate as needed State per Id Services Stateless or Stateful Can expose web endpoints Linear model Constantly available Shared state
  7. Applications that are not born in the Cloud Bring them onto the Service Fabric Service Fabric versions them You get failover for free
  8. Nanoservices are too fine-grained. The overhead (communication, maintenance, test, etc) is more than its utility
  9. The concept of Reliability Resiliency: Service stays on even when its environment fails Availability: Service is replicated in the cluster Consistency: Data integration between replicas are guaranteed Concurrency: Services run together yet independently (turn based) Asynchronous communication –> Decoupled Compute is separate from Data (State) Stateful: keeps data using Reliable Collections – As much as memory permits Stateless: No data storage