SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
Deploy microservices architecture through
containers.
6th June 2016, Software Craftsmanship SouthTyrol
Bozen
Alessandro Martellone @a_martellone
Hello!I am Alessandro Martellone
Senior Software Engineer@Wurth Phoenix.
Technical Advisor@Elastico.
Trentino Cloud Computing Meetup Organizer.
Italian Red Cross volunteer. Husband and father.
I love soccer and the 4-3-3 module.
Summary
▪ What are microservices?
▪ Benefits and challenges
▪ Deploy microservices through containers
Building microservices - Sam
Newman - OReilly
▪ Author: technologist at
ThoughtWorks
▪ http://samnewman.
io/books/building_microservice
s/
Software architecture evolution
Note: MSA = Micro Service Architecture
A monolithic application as an house of cards
“ Microservices are small,
autonomous services which
communicate by APIs. Each one
implements a specific business
goal.
Monolithic vs service-oriented architecture
Single Responsibility Principle
▪ A class should have one, and only one, reason to change.
▪ Gather together those things that change for the same
reason, and separate those things that change for different
reasons.
▪ http://butunclebob.com/ArticleS.UncleBob.
PrinciplesOfOod
▪ How small is small?
Key benefits
▪ Technology heterogeneity;
▪ resilience
▫ if a component fails but it does not cascade, the
problem can be isolated whereas the rest of the
system still runs;
▪ scaling;
▪ ease of deployment and updating
▫ Apply a change with a small impact;
▪ composability.
Main challenges
▪ Distributed systems
▫ harder to program and remote calls are always at
risk of failure;
▪ eventually consistency
▫ maintaining strong consistency is extremely
difficult for a distributed system;
▫ CAP Theorem;
▪ operational complexity
▫ services orchestrator;
▫ health checks;
▫ services monitoring.
From virtualization to containerization
From virtualization to containerization
▪ Containers are tools/components/blocks for
delivering software.
▪ Focused on portability, distribution and
interoperability.
▪ Whereas, VMs are focused on infrastructure
resources virtualisation.
▪ Containers as VMs provide an isolated, discrete
and separate space for applications (memory,
storage, network resources) .
▪ Unlike a VM, in a container you are not running a
complete instance or image of an operating
system, with kernels, drivers, and shared libraries.
▪ “Deploy one service per container”
The complexity must be managed
Services orchestrator
▪ Kubernetes (by Google)
▫ an open-source system for automating
deployment, scaling, and management of
containerized applications.
▫ It groups containers that make up an application
into logical units for easy management and
discovery.
▪ Kubernetes can schedule and run application containers
on clusters of physical or virtual machines.
Kubernetes key functionalities
▪ Application health checking;
▪ replicating application instances
▫ A replication controller ensures that a specified
number of pod “replicas” are running at any one
time. In other words, a replication controller makes
sure that a pod or homogeneous set of pods are
always up and available;
▪ horizontal auto-scaling;
▪ naming and discovery;
▪ load balancing;
▪ rolling updates;
▪ …...
“ … this is a journey, not a
destination. Go incrementally.
Break your system apart piece by
piece...change is inevitable.
Embrace it.
Sam Newman
Thanks!
Any questions?
You can find me at @a_martellone & a.
martellone@gmail.com

Weitere ähnliche Inhalte

Ähnlich wie Deploy microservices architecture through containers

modern-guide-to-container-monitoring-and-orchestration.pdf
modern-guide-to-container-monitoring-and-orchestration.pdfmodern-guide-to-container-monitoring-and-orchestration.pdf
modern-guide-to-container-monitoring-and-orchestration.pdfGuillaume Kpotufe
 
Microservices, Containers, Scheduling and Orchestration - A Primer
Microservices, Containers, Scheduling and Orchestration - A PrimerMicroservices, Containers, Scheduling and Orchestration - A Primer
Microservices, Containers, Scheduling and Orchestration - A PrimerGareth Llewellyn
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesAngelos Kapsimanis
 
AppDev with Microservices
AppDev with MicroservicesAppDev with Microservices
AppDev with MicroservicesRishabh Dugar
 
Container Shangri-La Attaining the Promise of Container Paradise
Container Shangri-La Attaining the Promise of Container ParadiseContainer Shangri-La Attaining the Promise of Container Paradise
Container Shangri-La Attaining the Promise of Container ParadiseXebiaLabs
 
PyCONKE meetup 2019: Microservices
PyCONKE meetup 2019: MicroservicesPyCONKE meetup 2019: Microservices
PyCONKE meetup 2019: MicroservicesSamuel Olembo
 
DevOps Training | DevOps Training in Hyderabad
DevOps Training | DevOps Training in Hyderabad   DevOps Training | DevOps Training in Hyderabad
DevOps Training | DevOps Training in Hyderabad TalluriRenuka
 
Kubernetes go paddle meetup
Kubernetes go paddle meetupKubernetes go paddle meetup
Kubernetes go paddle meetupSujai Prakasam
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfDaniloQueirozMota
 
Comparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsComparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsThierry Gayet
 
MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.PLovababu
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsBrad Williams
 
Cisco Connect 2018 Indonesia - Building container ready infrastructure
Cisco Connect 2018 Indonesia - Building container ready infrastructure  Cisco Connect 2018 Indonesia - Building container ready infrastructure
Cisco Connect 2018 Indonesia - Building container ready infrastructure NetworkCollaborators
 
Kubernetes solutions
Kubernetes solutionsKubernetes solutions
Kubernetes solutionsEric Cattoir
 
Software Architectures, Week 5 - Advanced Architectures
Software Architectures, Week 5 - Advanced ArchitecturesSoftware Architectures, Week 5 - Advanced Architectures
Software Architectures, Week 5 - Advanced ArchitecturesAngelos Kapsimanis
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitectureABDEL RAHMAN KARIM
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMiki Lombardi
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY IJwest
 

Ähnlich wie Deploy microservices architecture through containers (20)

modern-guide-to-container-monitoring-and-orchestration.pdf
modern-guide-to-container-monitoring-and-orchestration.pdfmodern-guide-to-container-monitoring-and-orchestration.pdf
modern-guide-to-container-monitoring-and-orchestration.pdf
 
Microservices, Containers, Scheduling and Orchestration - A Primer
Microservices, Containers, Scheduling and Orchestration - A PrimerMicroservices, Containers, Scheduling and Orchestration - A Primer
Microservices, Containers, Scheduling and Orchestration - A Primer
 
Microservices vs monolithics betabeers
Microservices vs monolithics   betabeersMicroservices vs monolithics   betabeers
Microservices vs monolithics betabeers
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based Architectures
 
AppDev with Microservices
AppDev with MicroservicesAppDev with Microservices
AppDev with Microservices
 
Container Shangri-La Attaining the Promise of Container Paradise
Container Shangri-La Attaining the Promise of Container ParadiseContainer Shangri-La Attaining the Promise of Container Paradise
Container Shangri-La Attaining the Promise of Container Paradise
 
PyCONKE meetup 2019: Microservices
PyCONKE meetup 2019: MicroservicesPyCONKE meetup 2019: Microservices
PyCONKE meetup 2019: Microservices
 
DevOps Training | DevOps Training in Hyderabad
DevOps Training | DevOps Training in Hyderabad   DevOps Training | DevOps Training in Hyderabad
DevOps Training | DevOps Training in Hyderabad
 
Kubernetes go paddle meetup
Kubernetes go paddle meetupKubernetes go paddle meetup
Kubernetes go paddle meetup
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdf
 
Comparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsComparisons of the most famous container Orchestrators
Comparisons of the most famous container Orchestrators
 
MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
 
Cisco Connect 2018 Indonesia - Building container ready infrastructure
Cisco Connect 2018 Indonesia - Building container ready infrastructure  Cisco Connect 2018 Indonesia - Building container ready infrastructure
Cisco Connect 2018 Indonesia - Building container ready infrastructure
 
GCP DevOps Training.pptx
GCP DevOps Training.pptxGCP DevOps Training.pptx
GCP DevOps Training.pptx
 
Kubernetes solutions
Kubernetes solutionsKubernetes solutions
Kubernetes solutions
 
Software Architectures, Week 5 - Advanced Architectures
Software Architectures, Week 5 - Advanced ArchitecturesSoftware Architectures, Week 5 - Advanced Architectures
Software Architectures, Week 5 - Advanced Architectures
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - Plansoft
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
 

Mehr von Alessandro Martellone

Operate with an openstack deployment by code
Operate with an openstack deployment by codeOperate with an openstack deployment by code
Operate with an openstack deployment by codeAlessandro Martellone
 
Introduction to containers a practical session using core os and docker
Introduction to containers  a practical session using core os and dockerIntroduction to containers  a practical session using core os and docker
Introduction to containers a practical session using core os and dockerAlessandro Martellone
 
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...Alessandro Martellone
 
La Sfida Della Trovabilità - Architettura dell'informazione
La Sfida Della Trovabilità - Architettura dell'informazioneLa Sfida Della Trovabilità - Architettura dell'informazione
La Sfida Della Trovabilità - Architettura dell'informazioneAlessandro Martellone
 
La Privacy In Sistemi Basati Sulla Personalizzazione
La Privacy In Sistemi Basati Sulla PersonalizzazioneLa Privacy In Sistemi Basati Sulla Personalizzazione
La Privacy In Sistemi Basati Sulla PersonalizzazioneAlessandro Martellone
 
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del Software
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del SoftwareUn Approccio Sistematico Ed Organizzato Allo Sviluppo Del Software
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del SoftwareAlessandro Martellone
 
L.U.N.A. Ads Sustaining Wireless Access For Mobile Users
L.U.N.A. Ads   Sustaining Wireless Access For Mobile UsersL.U.N.A. Ads   Sustaining Wireless Access For Mobile Users
L.U.N.A. Ads Sustaining Wireless Access For Mobile UsersAlessandro Martellone
 

Mehr von Alessandro Martellone (14)

Operate with an openstack deployment by code
Operate with an openstack deployment by codeOperate with an openstack deployment by code
Operate with an openstack deployment by code
 
Introduction to containers a practical session using core os and docker
Introduction to containers  a practical session using core os and dockerIntroduction to containers  a practical session using core os and docker
Introduction to containers a practical session using core os and docker
 
OpenStack Summit - Tokio
OpenStack Summit - TokioOpenStack Summit - Tokio
OpenStack Summit - Tokio
 
OpenStackDay - XIFI Federation
OpenStackDay - XIFI FederationOpenStackDay - XIFI Federation
OpenStackDay - XIFI Federation
 
Openstack: starter level
Openstack: starter levelOpenstack: starter level
Openstack: starter level
 
OpenStack 5th birthday
OpenStack 5th birthdayOpenStack 5th birthday
OpenStack 5th birthday
 
Mini cloud 2
Mini cloud 2Mini cloud 2
Mini cloud 2
 
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...
OpenStack 5th birthday - Using OPENSTACK to Manage a Multi-Hypervisor Environ...
 
La Sfida Della Trovabilità - Architettura dell'informazione
La Sfida Della Trovabilità - Architettura dell'informazioneLa Sfida Della Trovabilità - Architettura dell'informazione
La Sfida Della Trovabilità - Architettura dell'informazione
 
Ajax
AjaxAjax
Ajax
 
Precise Content In Precise Moment
Precise Content In Precise MomentPrecise Content In Precise Moment
Precise Content In Precise Moment
 
La Privacy In Sistemi Basati Sulla Personalizzazione
La Privacy In Sistemi Basati Sulla PersonalizzazioneLa Privacy In Sistemi Basati Sulla Personalizzazione
La Privacy In Sistemi Basati Sulla Personalizzazione
 
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del Software
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del SoftwareUn Approccio Sistematico Ed Organizzato Allo Sviluppo Del Software
Un Approccio Sistematico Ed Organizzato Allo Sviluppo Del Software
 
L.U.N.A. Ads Sustaining Wireless Access For Mobile Users
L.U.N.A. Ads   Sustaining Wireless Access For Mobile UsersL.U.N.A. Ads   Sustaining Wireless Access For Mobile Users
L.U.N.A. Ads Sustaining Wireless Access For Mobile Users
 

Kürzlich hochgeladen

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Kürzlich hochgeladen (20)

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Deploy microservices architecture through containers

  • 1. Deploy microservices architecture through containers. 6th June 2016, Software Craftsmanship SouthTyrol Bozen Alessandro Martellone @a_martellone
  • 2. Hello!I am Alessandro Martellone Senior Software Engineer@Wurth Phoenix. Technical Advisor@Elastico. Trentino Cloud Computing Meetup Organizer. Italian Red Cross volunteer. Husband and father. I love soccer and the 4-3-3 module.
  • 3. Summary ▪ What are microservices? ▪ Benefits and challenges ▪ Deploy microservices through containers
  • 4.
  • 5. Building microservices - Sam Newman - OReilly ▪ Author: technologist at ThoughtWorks ▪ http://samnewman. io/books/building_microservice s/
  • 6. Software architecture evolution Note: MSA = Micro Service Architecture
  • 7. A monolithic application as an house of cards
  • 8. “ Microservices are small, autonomous services which communicate by APIs. Each one implements a specific business goal.
  • 10. Single Responsibility Principle ▪ A class should have one, and only one, reason to change. ▪ Gather together those things that change for the same reason, and separate those things that change for different reasons. ▪ http://butunclebob.com/ArticleS.UncleBob. PrinciplesOfOod ▪ How small is small?
  • 11. Key benefits ▪ Technology heterogeneity; ▪ resilience ▫ if a component fails but it does not cascade, the problem can be isolated whereas the rest of the system still runs; ▪ scaling; ▪ ease of deployment and updating ▫ Apply a change with a small impact; ▪ composability.
  • 12. Main challenges ▪ Distributed systems ▫ harder to program and remote calls are always at risk of failure; ▪ eventually consistency ▫ maintaining strong consistency is extremely difficult for a distributed system; ▫ CAP Theorem; ▪ operational complexity ▫ services orchestrator; ▫ health checks; ▫ services monitoring.
  • 13. From virtualization to containerization
  • 14. From virtualization to containerization ▪ Containers are tools/components/blocks for delivering software. ▪ Focused on portability, distribution and interoperability. ▪ Whereas, VMs are focused on infrastructure resources virtualisation. ▪ Containers as VMs provide an isolated, discrete and separate space for applications (memory, storage, network resources) . ▪ Unlike a VM, in a container you are not running a complete instance or image of an operating system, with kernels, drivers, and shared libraries. ▪ “Deploy one service per container”
  • 15. The complexity must be managed
  • 16. Services orchestrator ▪ Kubernetes (by Google) ▫ an open-source system for automating deployment, scaling, and management of containerized applications. ▫ It groups containers that make up an application into logical units for easy management and discovery. ▪ Kubernetes can schedule and run application containers on clusters of physical or virtual machines.
  • 17. Kubernetes key functionalities ▪ Application health checking; ▪ replicating application instances ▫ A replication controller ensures that a specified number of pod “replicas” are running at any one time. In other words, a replication controller makes sure that a pod or homogeneous set of pods are always up and available; ▪ horizontal auto-scaling; ▪ naming and discovery; ▪ load balancing; ▪ rolling updates; ▪ …...
  • 18. “ … this is a journey, not a destination. Go incrementally. Break your system apart piece by piece...change is inevitable. Embrace it. Sam Newman
  • 19. Thanks! Any questions? You can find me at @a_martellone & a. martellone@gmail.com